Skip to content

razorback16/slate-ide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

37 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

⚑️ Slate IDE

Contribution welcome Rust version Tauri version Repo Size


πŸš€ What is Slate IDE?

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.

🎯 Key Features

  • πŸ€– 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

πŸ—οΈ Core Views

  • 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

πŸ› οΈ Prerequisites

Before running Slate IDE, ensure you have the following installed:

Installing pnpm

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 pnpm

πŸš€ Quick Start

1. Clone the Repository

git clone https://github.com/razorback16/slate-ide.git
cd slate-ide

2. Install Dependencies

pnpm install

This will:

  • Install all frontend dependencies
  • Set up git hooks with Lefthook
  • Configure the development environment

3. Start Development

pnpm dev

This command starts the Tauri development server with hot reload enabled. The application will open automatically.

4. Build for Production

# Standard build
pnpm build

# Debug build (with developer tools enabled)
pnpm build:debug

πŸ“‹ Available Scripts

Development

  • pnpm dev - Start development server with hot reload
  • pnpm dev:ui - Start only the frontend development server
  • pnpm typecheck - Run TypeScript type checking

Building

  • pnpm build - Build for production
  • pnpm build:debug - Build with debug mode enabled
  • pnpm build:ui - Build only the frontend
  • pnpm build:mac:x64 - Build for macOS Intel
  • pnpm build:mac:arm - Build for macOS Apple Silicon
  • pnpm build:mac:universal - Build universal macOS binary
  • pnpm build:win:x64 - Build for Windows x64
  • pnpm build:win:arm - Build for Windows ARM

Code Quality

  • pnpm check - Run Biome linter and formatter
  • pnpm lint - Run linter with auto-fix
  • pnpm format - Format all code (Rust + JavaScript)
  • pnpm format:rs - Format Rust code only
  • pnpm format:js - Format JavaScript/TypeScript code only

Testing

  • pnpm test:js - Run JavaScript/TypeScript tests
  • pnpm test:rs - Run Rust tests
  • pnpm test:ui - Run tests with UI
  • pnpm test:coverage - Generate test coverage report

Maintenance

  • pnpm cleanup - Clean all build artifacts and dependencies
  • pnpm update-deps - Check for dependency updates
  • pnpm generate:icons - Generate app icons from source

πŸ—οΈ Project Structure

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

🎨 Tech Stack

Frontend

Backend

  • Tauri - Desktop app framework
  • Rust - Systems programming language

Development Tools

πŸ”§ Development Setup

IDE Recommendations

Visual Studio Code with the following extensions:

  • Rust Analyzer
  • Tauri
  • TypeScript and JavaScript Language Features
  • Tailwind CSS IntelliSense
  • Biome

Environment Configuration

  1. Copy the environment template:

    cp .env.example .env
  2. Configure your environment variables as needed.

Git Hooks

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

🍎 macOS Setup

Fix Unsigned Warning

If you see a warning about the app being "damaged" on macOS:

xattr -r -d com.apple.quarantine "/Applications/Slate IDE.app"

Additional Dependencies

For optimal performance on macOS, install:

# GTK dependencies (if needed)
brew install gtk+3

# Additional development tools
brew install pkg-config

πŸ“Έ Screenshots

Slate IDE interface showing the chat interface with Claude AI and code editor

Slate IDE automatically adapts to your GitHub theme preference

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and run tests: pnpm test:js && pnpm test:rs
  4. Commit your changes: git commit -m 'Add amazing feature'
  5. Push to the branch: git push origin feature/amazing-feature
  6. Open a Pull Request

πŸ“„ License

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.

πŸ™ Acknowledgements


🀫 Psst! If you like my work you can support me via GitHub sponsors.

Made by

About

An AI Native Code IDE

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •