DBC Insight is a comprehensive VS Code extension for CAN Database (DBC) files. It combines a robust Language Server for real-time validation with a high-performance interactive preview panel for network visualization.
This project is a fork and major reboot of the original DBC Language Syntax extension. The project is mostly developed in my spare time with vibe coding, using OpenCode with Gemini 3.5 Flash. If you really like it, please give it a star on GitHub. Also feel free to report bugs or request new features. I will try to keep this project updated.
🌟 Key Features
🛠️ Language Support (LSP)
Syntax Highlighting: Professional, high-contrast highlighting for the complex DBC grammar.
Real-time Diagnostics: Instant feedback on syntax errors and semantic inconsistencies using a custom jison parser.
Smart Snippets: Accelerate development with built-in templates for Messages, Signals, and Nodes.
🌳 Network Exploration
Foldable Sidebar: Navigate your CAN network through a structured tree view.
TX/RX Grouping: Messages are automatically mapped to their respective Transmitting and Receiving ECUs.
Instant Search: "Jump to" any node, message (Name/ID), or signal with real-time filtering.
📊 Advanced Visualization
Interactive Bit Matrix: View signal packing in message frames. Supports both Intel (Little Endian) and Motorola (Big Endian) layouts.
Metadata Inspection: Detailed property grids for all objects, including value tables (enums), scaling factors, and multi-line comments.
🚀 Usage
Open any .dbc file in VS Code.
The Language Server activates automatically to provide highlighting and linting.
Click the DBC Insight icon in the editor title bar (top right) to launch the interactive preview panel.
📸 Media & Demos
Syntax Highlighting & Validation
Real-time parser and lexer diagnostics.
Interactive Preview
Foldable tree navigation and "Jump to" search.
Code Snippets
Fast scaffolding of DBC objects.
🛣️ Roadmap
Add bus load estimation functionality to the preview panel.
Make the preview editable and sync changes back to the dbc file?
🛠 Project Architecture
dbcLib: Shared TypeScript library containing data models and serialization logic.
server: Language Server implementation providing the core IDE intelligence.
client: Extension host and the React-based visual exploration panel.
🤝 Credits & Acknowledgments
DBC Insight is built upon the foundational work of Landon Harris, the original creator of the DBC Language Syntax extension. His implementation of the core parser and LSP structure made this reboot possible.