A secure, modular smart-contract deployer with a visual workflow interface and container-based plugin system.
Ignite now operates as a fully self-contained executable with:
- 🏗️ Standalone Architecture: Single executable with embedded frontend and plugin assets
- 📦 Unified Asset Management: Automatic gzip compression/decompression system
- 🔍 Foundry Detection: Working project detection in both development and production
- 🐳 Container Plugins: Docker-based plugin system with volume sharing
- 🛡️ Safety Features: Automatic workspace mounting with sensitive directory protection
- ⚡ Optimized Performance: Compressed assets for minimal bundle size
Run the executable anywhere:
# Download and run (detects foundry projects automatically)
./ignite-core-macos-x64 # Auto-mount current directory
./ignite-core-macos-x64 --path /my/project # Mount specific project
# Safety: Won't auto-mount sensitive directories (/, ~, ~/Documents)Or develop with hot reload:
npm install && npm run dev # Full development environmentPrerequisites:
- Volta - Node.js version manager (automatically uses Node 20.x from package.json)
# Install volta if you haven't already
curl https://get.volta.sh | bash
# Clone and setup (volta will automatically use correct Node version)
npm install # This will run postinstall hook to setup backend and frontend
# Run both frontend and backend with hot reload
npm run devThis will start:
- Backend server on
http://localhost:1401 - Frontend dev server on
http://localhost:1402(which proxies to backend)
To override the dev ports:
IGNITE_CORE_PORT=1501 IGNITE_FRONTEND_PORT=1502 npm run dev# Complete build pipeline (frontend + plugins + executable)
npm run buildWhat happens during build:
- Frontend: Vite build with automatic gzip compression
- Plugins: Auto-discovery, esbuild compilation, and gzip compression
- Assets: Copy optimized assets to
dist-assets/ - Core: TypeScript compilation
- Package: Create standalone executables with
pkg
Individual build steps:
npm run build:frontend # React + Vite + gzip compression
npm run build:plugins # Auto-discover and compress all plugins
npm run build:core # TypeScript backend compilation
npm run copy:assets # Prepare assets for pkg bundling
npm run clean # Clean all build artifactsOutput: Cross-platform executables in core/dist-pkg/
┌─────────────────────────────────────────┐
│ Standalone Executable (ignite-core) │
│ • Embedded React frontend (gzipped) │
│ • Embedded plugin bundles (gzipped) │
│ • AssetManager (unified decompression) │
│ • Docker container orchestration │
│ • Auto workspace mounting + safety │
└─────────────────────────────────────────┘
│
┌─────────────────────────────────────────┐
│ Container Plugin System │
│ repo-managers/ compilers/ │
│ ├─ local-repo ├─ foundry │
│ └─ cloned-repo └─ hardhat │
│ │
│ • Volume sharing via VolumesFrom │
│ • Auto-discovery build system │
│ • Gzip compression for optimization │
└─────────────────────────────────────────┘
1. Build and test the executable:
npm run build
cd core/dist-pkg
./ignite-core-macos-x64 # (or your platform)2. Test foundry detection:
# In a foundry project directory
./ignite-core-macos-x64
# Open http://localhost:1301 → should detect foundry automatically
# Or specify path
./ignite-core-macos-x64 --path /path/to/foundry/project3. Development mode:
npm run dev
# Open http://localhost:1302 → hot reload enabled- 🏗️ Standalone Executables: Self-contained, no external file dependencies
- 🔍 Framework Detection: Automatic foundry project detection
- 📦 Asset Management: Unified compression/decompression system
- 🐳 Plugin System: Docker-based plugin execution with volume sharing
- 🛡️ Security: Localhost-only access, sensitive directory protection
- ⚡ Performance: Optimized with gzip compression, minimal bundle size
- 🔧 Developer Experience: Hot reload, automatic browser opening, clear error messages