Slate IDE is a next-generation AI-powered desktop development environment that seamlessly integrates artificial intelligence into your coding workflow. Built with modern technologies like Tauri, React, and TypeScript, Slate IDE provides a comprehensive platform for AI-assisted development.
- π€ AI Chat Integration: Direct conversation with Claude AI for code assistance, debugging, and development guidance
- π Smart Code Editor: Monaco-based editor with syntax highlighting, IntelliSense, and AI-powered suggestions
- π MCP (Model Context Protocol) Support: Connect to various external services and APIs through standardized protocols
- π Intelligent Codebase Management: AI-suggested file relationships and smart working sets
- π¨ Modern UI/UX: Beautiful, responsive interface with dark/light theme support
- βοΈ Extensible Architecture: Plugin system for custom integrations and workflows
- π Git Integration: Built-in version control with AI-assisted commit messages and code reviews
- π― Agent System: Specialized AI agents for different development tasks
- Chat View: Interactive AI conversation with Claude, featuring action trails and context awareness
- Codebase View: File explorer, Monaco code editor, and intelligent code outline
- MCP View: Manage Model Context Protocol servers and their tools/permissions
- Agents View: Configure and interact with specialized AI development agents
- Git View: Version control operations with AI assistance
- Hooks View: Manage development lifecycle hooks and automation
Before running Slate IDE, ensure you have the following installed:
If you don't have pnpm installed, you can install it using:
# Using npm
npm install -g pnpm
# Using Homebrew (macOS)
brew install pnpm
# Using Cargo (if you have Rust installed)
cargo install pnpmgit clone https://github.com/razorback16/slate-ide.git
cd slate-idepnpm installThis will:
- Install all frontend dependencies
- Set up git hooks with Lefthook
- Configure the development environment
pnpm devThis command starts the Tauri development server with hot reload enabled. The application will open automatically.
# Standard build
pnpm build
# Debug build (with developer tools enabled)
pnpm build:debugpnpm dev- Start development server with hot reloadpnpm dev:ui- Start only the frontend development serverpnpm typecheck- Run TypeScript type checking
pnpm build- Build for productionpnpm build:debug- Build with debug mode enabledpnpm build:ui- Build only the frontendpnpm build:mac:x64- Build for macOS Intelpnpm build:mac:arm- Build for macOS Apple Siliconpnpm build:mac:universal- Build universal macOS binarypnpm build:win:x64- Build for Windows x64pnpm build:win:arm- Build for Windows ARM
pnpm check- Run Biome linter and formatterpnpm lint- Run linter with auto-fixpnpm format- Format all code (Rust + JavaScript)pnpm format:rs- Format Rust code onlypnpm format:js- Format JavaScript/TypeScript code only
pnpm test:js- Run JavaScript/TypeScript testspnpm test:rs- Run Rust testspnpm test:ui- Run tests with UIpnpm test:coverage- Generate test coverage report
pnpm cleanup- Clean all build artifacts and dependenciespnpm update-deps- Check for dependency updatespnpm generate:icons- Generate app icons from source
slate-ide/
βββ src/ # Frontend source code
β βββ components/ # React components
β β βββ common/ # Shared components
β β βββ layout/ # Layout components
β β βββ settings/ # Settings panels
β β βββ ui/ # UI primitives
β βββ views/ # Main application views
β β βββ ChatView.tsx # AI chat interface
β β βββ CodebaseView.tsx # Code editor and file explorer
β β βββ MCPView.tsx # MCP server management
β β βββ AgentsView.tsx # AI agents configuration
β β βββ GitView.tsx # Git integration
β βββ layouts/ # Page layouts
β βββ stores/ # State management
β βββ styles/ # CSS and styling
β βββ libs/ # Utility libraries
βββ src-tauri/ # Tauri backend (Rust)
β βββ src/ # Rust source code
β βββ capabilities/ # Tauri capabilities
β βββ icons/ # Application icons
βββ assets/ # Static assets
βββ docs/ # Documentation
βββ tests/ # Test files
- React 18 - UI framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- Radix UI - UI primitives
- Monaco Editor - Code editor
- Vite - Build tool
Visual Studio Code with the following extensions:
- Rust Analyzer
- Tauri
- TypeScript and JavaScript Language Features
- Tailwind CSS IntelliSense
- Biome
-
Copy the environment template:
cp .env.example .env
-
Configure your environment variables as needed.
Git hooks are automatically installed via Lefthook when you run pnpm install. They include:
- Pre-commit: Code formatting and linting
- Pre-push: Type checking and tests
If you see a warning about the app being "damaged" on macOS:
xattr -r -d com.apple.quarantine "/Applications/Slate IDE.app"For optimal performance on macOS, install:
# GTK dependencies (if needed)
brew install gtk+3
# Additional development tools
brew install pkg-config
Slate IDE automatically adapts to your GitHub theme preference
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and run tests:
pnpm test:js && pnpm test:rs - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Licensed under either of Apache License 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Copyrights in this project are retained by their contributors.
See the LICENSE-APACHE and LICENSE-MIT files for more information.
- Tauri Examples Repo
- tauri-tray-icon-animation
- tauri-tray-menu
- tauri-window-controls
- tauri-plugin-theme
- hamza72x/web2app
- Create a Menu Bar App With Tauri
- Publishing Tauri to Apple's App Store
- GTK Installation Docs
- Tips For Faster Rust Compile Times
- Tauri State Management
π€« Psst! If you like my work you can support me via GitHub sponsors.