- React-based web application
- Visual node-based programming interface
- Real-time collaboration features
- State management and data flow
- Plugin system integration
- Feathers.js framework
- RESTful API endpoints
- WebSocket support
- Authentication and authorization
- Database interactions
- Plugin management
- PostgreSQL with pgvector extension
- Stores:
- User data
- Project configurations
- Spell definitions
- Agent states
- Plugin data
- Modular architecture
- Hot-reloadable plugins
- Standardized interfaces
- Custom node types
- Service integrations
graph TD
A[Client] -->|HTTP/WebSocket| B[Server]
B -->|Query/Update| C[Database]
B -->|Load/Execute| D[Plugins]
D -->|Results| B
B -->|Response| A
- Visual programming workflows
- Composed of nodes and connections
- JSON-serializable format
- Executable logic units
- Atomic processing units
- Input/output sockets
- Type system
- Custom implementations
- Autonomous entities
- State management
- Event handling
- Multi-modal interactions
- JWT-based auth
- Role-based access control
- API key management
- Session handling
- Input validation
- SQL injection prevention
- XSS protection
- CORS configuration
- Stateless server design
- Load balancer ready
- Database connection pooling
- Caching strategies
- Optimized database queries
- Efficient WebSocket usage
- Resource monitoring
- Memory management
- Hot reloading
- Development database
- Debug tooling
- Testing framework
- Docker containers
- Environment configuration
- Database migrations
- Health monitoring
- OAuth providers
- Cloud services
- AI/ML services
- Webhook handlers
- RESTful endpoints
- WebSocket events
- GraphQL (planned)
- Plugin APIs
- Enhanced caching
- Distributed processing
- Real-time collaboration
- Advanced monitoring
- Maintainability
- Extensibility
- Performance
- Security
- TypeScript/JavaScript
- React
- Node.js
- PostgreSQL
- Docker
- npm/yarn
- Jest
- ESLint
- Prettier
- TypeScript