A powerful framework for rapidly prototyping ERP-like applications using Directus CMS with generative AI assistance. Built for developers who want to move fast and build complex business applications with minimal setup.
Includes ready-to-use utilities to interact with Google, OpenAI, and AWS Bedrock, providing access to models from Claude, GPT, Gemini, Meta, and DeepSeek.
Directus Prototyper combines the flexibility of Directus CMS with AI-powered code generation to accelerate the development of enterprise resource planning (ERP) systems, business management tools, and data-driven applications. Perfect for technical teams practicing "vibe coding" - rapid prototyping with intelligent assistance.
- ποΈ Directus-Powered Backend: Leverage Directus CMS for instant API generation, admin panels, and database management
- π€ AI-Enhanced Development: Integrated AI providers (OpenAI, Google Gemini) for code generation and intelligent assistance
- β‘ Rapid Prototyping: Pre-configured Docker environment with hot-reload development
- π§ Extension Framework: Custom Directus extensions for specialized business logic
- π Schema Management: Automated collection and field management with version control
- π οΈ Developer Tools: Comprehensive utility scripts for debugging and development
- Backend: Directus CMS v10+
- Database: PostgreSQL
- Runtime: Node.js 20.19.2 with pnpm
- AI Providers: OpenAI GPT, Google Gemini, AWS Bedrock (Claude, Meta, DeepSeek)
- Infrastructure: Docker & Docker Compose
- Frontend: Vue.js 3 (for custom interfaces)
- Language: TypeScript throughout
- Docker & Docker Compose
- Node.js 20.19.2
- pnpm package manager
-
Clone and Setup
git clone <repository-url> cd directus-prototyper
-
Environment Configuration
cp .env.example .env # Edit .env with your API keys and configuration -
Start Development Environment
docker-compose up -d pnpm use 20.19.2 pnpm install
-
Build Extensions
./bin/build-extension.sh prototyper
-
Access Applications
- Directus Admin: http://localhost:17777
- API: http://localhost:17777/api
directus-prototyper/
βββ bin/ # Utility scripts
β βββ sync-backup.sh # Sync configuration from dev instance
β βββ list-collections.sh # List available collections
β βββ get-collections-fields.sh # Extract field configurations
β βββ get-docker-console-snapshot.sh # Docker diagnostics
β βββ get-extension-console-snapshot.sh # Extension diagnostics
β βββ build-extension.sh # Build specific extensions
βββ extensions/
β βββ prototyper/ # Main extension bundle
β βββ src/
β β βββ endpoints/ # Custom API endpoints
β β βββ hooks/ # Database hooks
β β βββ services/ # Business logic services
β β βββ views/ # Custom admin interfaces
β βββ log/ # Development logs
βββ directus-config/
β βββ snapshot/ # Schema snapshots
β βββ collections/ # Collection definitions
β βββ fields/ # Field configurations
β βββ relations/ # Relationship definitions
βββ directus-sync-configurations/ # Sync tool configurations
βββ data/ # Persistent database data
- Design your data model in Directus Admin
- Use the built-in schema builder for collections, fields, and relationships
./bin/sync-backup.sh # Pull latest schema from development instancecd extensions/prototyper
pnpm dev:log # Start development with logging- Use the integrated AI services for code generation
- Leverage the custom endpoints for AI-powered features
- Generate business logic, validation rules, and UI components
./bin/get-extension-console-snapshot.sh prototyper # Check extension status
./bin/get-docker-console-snapshot.sh # Monitor container health- OpenAI: GPT models for code generation and business logic
- Google Gemini: Advanced reasoning and data analysis
- AWS Bedrock: Access to Claude, Meta Llama, and DeepSeek models
- Multi-Model Support: Switch between providers seamlessly for different use cases
// Generate business validation rules
const validationRules = await aiService.generateValidation({
collection: 'orders',
requirements: 'Validate order total > 0 and customer exists'
});
// Create custom field interfaces
const interface = await aiService.generateInterface({
type: 'financial-calculator',
fields: ['amount', 'tax_rate', 'total']
});The bin/ directory contains powerful utilities for development:
sync-backup.sh: Synchronize schema from development instancelist-collections.sh: View all available collections and field countsget-collections-fields.sh: Extract detailed field/relation configurationsget-docker-console-snapshot.sh: Docker container diagnosticsget-extension-console-snapshot.sh: Extension build status and logsbuild-extension.sh: Build extensions with proper environment setup
See individual script documentation for detailed usage.
- Inventory management systems
- Order processing workflows
- Financial reporting dashboards
- Customer relationship management
- Project management platforms
- HR management systems
- Document management solutions
- Compliance tracking systems
- Analytics dashboards
- Reporting systems
- Data transformation pipelines
- API-first architectures
Key configuration options:
# Database
POSTGRES_USER=directus
POSTGRES_PASSWORD=directus
POSTGRES_DB=directus
# Directus
DIRECTUS_URL=http://0.0.0.0:17777
DIRECTUS_KEY=your-directus-key
DIRECTUS_SECRET=your-directus-secret
# AI Providers
OPENAI_API_KEY=your-openai-key
GOOGLEGENAI_API_KEY=your-gemini-key
AWS_ACCESS_KEY_ID=your-aws-key
AWS_SECRET_ACCESS_KEY=your-aws-secret
AWS_REGION=us-east-1
# Docker
DOCKER_DIRECTUS_CONTAINER_NAME=ls-directus-directus-prototyper- Fork the repository
- Create your feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: Check the AI instruction files (
.github/copilot-instructions.md,CLAUDE.md,GEMINI.md) - Issues: Report bugs and request features via GitHub Issues
- Community: Join discussions in GitHub Discussions
Built with β€οΈ for developers who move fast and build things.