mirror of
				https://github.com/excalidraw/excalidraw.git
				synced 2025-11-04 04:44:31 +01:00 
			
		
		
		
	* chore: init CLAUDE.md * Add Copilot instructions * update gitignore * simplify --------- Co-authored-by: Mark Tolmacs <mark@lazycat.hu>
		
			
				
	
	
	
		
			1.3 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			1.3 KiB
		
	
	
	
	
	
	
	
CLAUDE.md
Project Structure
Excalidraw is a monorepo with a clear separation between the core library and the application:
packages/excalidraw/- Main React component library published to npm as@excalidraw/excalidrawexcalidraw-app/- Full-featured web application (excalidraw.com) that uses the librarypackages/- Core packages:@excalidraw/common,@excalidraw/element,@excalidraw/math,@excalidraw/utilsexamples/- Integration examples (NextJS, browser script)
Development Workflow
- Package Development: Work in 
packages/*for editor features - App Development: Work in 
excalidraw-app/for app-specific features - Testing: Always run 
yarn test:updatebefore committing - Type Safety: Use 
yarn test:typecheckto verify TypeScript 
Development Commands
yarn test:typecheck  # TypeScript type checking
yarn test:update     # Run all tests (with snapshot updates)
yarn fix             # Auto-fix formatting and linting issues
Architecture Notes
Package System
- Uses Yarn workspaces for monorepo management
 - Internal packages use path aliases (see 
vitest.config.mts) - Build system uses esbuild for packages, Vite for the app
 - TypeScript throughout with strict configuration