TypedMind DSL VS Code Extension
VS Code language support for TypedMind Domain Specific Language (.tmd files).
About TypedMind
TypedMind is a domain-specific language (DSL) for describing program architecture. It helps developers:
- Document complex system architectures clearly
- Visualize component relationships and dependencies
- Validate architectural constraints
- Generate interactive documentation
Learn more about TypedMind →
Commands
This extension provides the following commands accessible via the Command Palette (Cmd/Ctrl+Shift+P):
- TypedMind: Validate Current File - Check the current .tmd file for errors
- TypedMind: Show Entity Graph - Visualize the program architecture (opens in browser)
- TypedMind: Format Document - Format the TypedMind file (coming soon)
- TypedMind: Generate Documentation - Create documentation from .tmd files (coming soon)
Features
Language Support
- Syntax highlighting for TypedMind entities
- Real-time validation and diagnostics via Language Server Protocol
- IntelliSense for entity names and operators
- Hover information showing entity details and relationships
- Go to definition for entity references (Cmd/Ctrl+Click)
- Find all references across your codebase (Right-click → Find All References)
- Semantic highlighting for consistent entity coloring
- Quick fixes for common validation errors
Installation
From VS Code Marketplace
- Open VS Code
- Go to Extensions view (Ctrl+Shift+X)
- Search for "TypedMind DSL"
- Click Install
Or install directly from the VS Code Marketplace.
From Command Line
code --install-extension sammons.typed-mind-vscode-extension
Manual Installation (Development)
- Build:
pnpm build
- Package:
pnpm package
- Install:
code --install-extension typed-mind-vscode-extension-*.vsix
- Extension will activate automatically for .tmd files
Usage
The extension activates automatically for .tmd
files.
Quick Start
- Create a new file with
.tmd
extension
- Start typing your TypedMind architecture
- Use IntelliSense (Ctrl+Space) for suggestions
- Run validation with Cmd/Ctrl+Shift+P → "TypedMind: Validate Current File"
Theme Selection
The extension works with any VS Code theme.
Common Workflows
- Navigate code: Cmd/Ctrl+Click on entity names to jump to definitions
- Find usages: Right-click → Find All References
- View errors: Problems panel shows all validation errors
- Quick fixes: Hover over errors and click the lightbulb for fixes
Development
pnpm dev
- Watch mode
pnpm build
- Build extension
pnpm package
- Create .vsix
Example Syntax
# Define your application
TodoApp -> AppEntry "Todo list application" v1.0.0
# Entry point
AppEntry @ src/index.ts:
<- [express, TodoController]
-> [startServer]
# Use ClassFile fusion for controllers
TodoController #: src/controllers/todo.controller.ts
<- [TodoService]
=> [createTodo, getTodos, updateTodo, deleteTodo]
# Service layer
TodoService #: src/services/todo.service.ts
=> [create, findAll, update, delete]
# Runtime configuration
DATABASE_URL $env "PostgreSQL connection" (required)
PORT $env "Server port"
= "3000"
# Dependencies
express ^ "Web framework" v4.18.0
License
MIT