How algorift169/code-vision works
CodeVision is a GTK desktop project editor with an initial C/C++ syntax-tree inspector. The main workflow starts when a user opens a project, browses its files, edits them in tabs, and optionally inspects the active buffer in the Analyzer panel. Supporting capabilities include workspace search, file operations, terminal sessions, previews, and themes. The graph follows documented behavior and source-index references; several UI and service internals were not sampled, so uncertain wiring is omitted or marked unverified.
Main entry points: main_window.py Main window · source_parser.py Source parser · project_explorer.py Project explorer · tab.py Editor tabs
Components 22
Application lifecycle
- CLI entry
src/codevision/main.py - GTK application
src/codevision/app/application.py
Project workspace
- Main window
src/codevision/app/main_window.py - Project explorer
src/codevision/ui/project_explorer.py - Editor tabs
src/codevision/editor/tab.py - Code editor
src/codevision/editor/editor.py - Media previews
src/codevision/editor/video_preview.py - Workspace search
src/codevision/ui/search.py
C/C++ analysis
- Analyzer panel
src/codevision/ui/analysis_panel.py - AST inspector
src/codevision/ui/ast_view.py - Source parser
src/codevision/parser/source_parser.py - Tree-sitter parser
src/codevision/parser/tree_sitter_parser.py - Language registry
src/codevision/parser/language_registry.py - AST extractor
src/codevision/analysis/ast_extractor.py - AST data model
src/codevision/model/ast_node.py
Workspace services
- File operations
src/codevision/services/file_operations.py - Save service
src/codevision/services/save.py - Terminal sessions
src/codevision/services/terminal.py - Folder browsing
src/codevision/services/folder_browser.py - File search
src/codevision/services/file_search.py
Theme system
- Theme manager
src/codevision/ui/theme.py
Other components
- Desktop user
Connections 23
- Desktop user → CLI entry: launches
README.md - CLI entry → GTK application: delegates startup
src/codevision/main.py - GTK application → Main window: creates window
src/codevision/app/application.py - Desktop user → Main window: uses workspace
README.md - Main window → Project explorer: hosts
src/codevision/app/main_window.py - Main window → Editor tabs: hosts
src/codevision/app/main_window.py - Editor tabs → Code editor: uses editor
src/codevision/editor/tab.py - Editor tabs → Media previews: offers previews
src/codevision/editor/tab.py - Main window → Workspace search: hosts
src/codevision/app/main_window.py - Workspace search → File search: submits queries
src/codevision/ui/search.py - Project explorer → Folder browsing: browses folders
src/codevision/ui/project_explorer.py - Project explorer → Terminal sessions: opens terminals
src/codevision/ui/project_explorer.py - Main window → Analyzer panel: hosts
src/codevision/app/main_window.py - Analyzer panel → AST inspector: displays inspector
- AST inspector → Source parser: requests parsing
src/codevision/ui/ast_view.py - Source parser → Language registry: resolves language
src/codevision/parser/source_parser.py - Source parser → Tree-sitter parser: parses syntax
src/codevision/parser/source_parser.py - Source parser → AST data model: builds nodes
src/codevision/parser/source_parser.py - AST inspector → AST extractor: requests structural facts
src/codevision/ui/ast_view.py - Main window → Save service: saves documents
src/codevision/app/main_window.py - Code editor → Save service: delegates saving
src/codevision/editor/editor.py - Main window → File operations: provides file actions
- Main window → Theme manager: configures appearance
src/codevision/app/main_window.py