Roadmap
KiCanvas is very early in its development and there's a ton of stuff that hasn't been done. The current top priority is parsing and rendering, while the next focus will be the embedding API.
Here's a non-exhaustive roadmap:
- Core functionality
- kicad_sch parser
- kicad_pcb parser
- kicad_wks parser
- kicad_pro parser
- Rendering KiCad 6 schematics
- Rendering KiCad 6 boards
- Rendering KiCad 6 text
- Rendering worksheets
- Loading hierarchical schematics
- Rendering KiCad 7 schematics
- Rendering KiCad 7 boards
- Rendering KiCad 7 text
- Rendering bitmap objects
- Rendering custom fonts
- Viewer functionality
- Pan/zoom
- Zoom to page
- Zoom to selection
- Cursor position
- Page information
- Symbol selection
- Footprint selection
- Inspecting selected symbols and footprints
- Footprint filtering
- Symbol filtering
- Board layer selection and visibility
- Board net selection
- Board net filtering
- Board object visibility controls
- Board trace selection
- Board zone selection
- Copy selected item for pasting into KiCad
- Theming
- Onion view
- Standalone web application (kicanvas.org)
- Project viewer
- Loading files and projects from GitHub
- Navigating hierarchical sheets
- BOM view
- Deep linking
- Symbol library browser
- Footprint library browser
- Assembly guide
- Mobile UI
- Project viewer
- Embedding API
- Non-interactive document embedding
- Interactive document embedding
- Fragment embedding
- Deep linking
- Footprint embedding
- Symbol embedding
- Assembly guide embedding
- Integrations
- MkDocs/Python markdown integration
- Jupyter integration
- Sphinx integration
- Browser compatibility
- Chrome
- Firefox
- Safari
- Chrome (Android)
- Firefox mobile
- Safari mobile
Non-goals
KiCanvas also has a list of specific non-goals. At this time, we won't be adding:
- Editing of any kind - KiCanvas is read only and that assumption is baked deeply within the code.
- Offline rendering
- 3D board and component rendering
- Server-side usage
- Comparison/visual diffing
- Specific integrations with front-end frameworks (React, Vue, etc.) - KiCanvas is built using Web Components and should work out of the box with all web frameworks.