Connect your data sources Β· Build powerful queries Β· Design workflow automations Β· Visualize with widgets & dashboards
π Documentation Β· π― Live Demo Β· β‘ Quick Start Β· π€ Contributing
Jet Admin is a comprehensive open-source analytics platform that evolved from a PostgreSQL database manager into a full-featured internal tools builder. Empower your team to connect multiple data sources, create reusable queries, build visual workflow automations, and design interactive dashboards with customizable widgets.
| Real-time KPI monitoring and data visualization | Visual workflow builder with conditional logic | CRUD interfaces for your databases | Query-based charts and data tables |
25+ Integrations with extensible connector architecture
| πΎ Databases | βοΈ Cloud Services | π APIs & Messaging |
|---|---|---|
|
|
|
|
π― Smart Queries
|
β‘ High Performance
|
Build complex automation pipelines with drag-and-drop simplicity:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π’ Start β π· Query β π Script β π Condition β
β ββ True β π΄ End β
β ββ False β π Loop β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
View All Node Types
| Node | Description |
|---|---|
| π’ Start | Entry point with input argument definitions |
| π· Data Query | Execute any configured data query |
| π JavaScript | Custom JS code execution with full context access |
| π Condition | Branch logic based on expressions |
| π Loop | Iterate over arrays with nested execution |
| β±οΈ Delay | Pause execution for specified duration |
| π΄ End | Terminal node with output mapping |
Create stunning visualizations connected to your workflows:
|
π Chart Types Bar Β· Line Β· Pie Β· Radar |
π Data Displays Tables Β· Text Β· Markdown |
π¨ Features Real-time updates |
- π¨ Drag-and-drop Layout - Grid-based widget positioning
- π± Responsive Design - Adapts to all screen sizes
- π Template System - Clone and reuse dashboards
- π¨οΈ Export to PDF - Generate professional reports
|
π Security
|
π€ User Management
|
|
|
graph TB
subgraph Frontend["π¨ Frontend (React)"]
DB[Dashboard Builder]
WE[Workflow Editor]
WC[Widget Config]
QE[Query Editor]
end
subgraph Backend["βοΈ Backend (Node.js)"]
API[REST API / WebSocket]
MS[Module System]
WEE[Workflow Execution Engine]
end
subgraph Data["πΎ Data Layer"]
P[Prisma ORM]
DC[Datasource Connectors]
end
Frontend --> API
API --> MS
MS --> WEE
WEE --> P
WEE --> DC
Tech Stack Details
| Layer | Technology |
|---|---|
| Frontend | React 18 Β· Vite Β· TailwindCSS Β· React Query Β· React Flow |
| Backend | Node.js Β· Express.js Β· Socket.IO |
| ORM | Prisma |
| Authentication | Firebase Auth |
| Message Queue | RabbitMQ |
| Containerization | Docker Β· Docker Compose |
|
|
# Clone the repository
git clone https://github.com/Jet-labs/jet-admin.git
cd jet-admin
# Configure environment
cp .env.docker.example .env.docker
# Edit .env.docker with your configuration
# Start all services
docker-compose -f docker-compose.cloud.yml up -dπ Access the application at http://localhost:3000
Backend Setup
cd apps/backend
# Install dependencies
npm install
# Configure environment
cp .env.example .env
# Edit .env with your database and Firebase credentials
# Run database migrations
npx prisma migrate dev
# Seed initial data (optional)
npm run seed
# Start the backend
npm run devFrontend Setup
cd apps/frontend
# Install dependencies
npm install
# Configure environment
cp public/config.example.js public/config.js
# Edit config.js with your API endpoint
# Start the frontend
npm run devEnvironment Configuration
Backend (.env)
DATABASE_URL=postgresql://user:password@localhost:5432/jetadmin
FIREBASE_PROJECT_ID=your-firebase-project
FIREBASE_PRIVATE_KEY=your-private-key
FIREBASE_CLIENT_EMAIL=your-client-email
RABBITMQ_URL=amqp://localhost:5672
JWT_SECRET=your-jwt-secretFrontend (public/config.js)
window.JET_CONFIG = {
API_URL: 'http://localhost:4000',
FIREBASE_CONFIG: {
apiKey: 'your-api-key',
authDomain: 'your-project.firebaseapp.com',
projectId: 'your-project-id'
}
};jet-admin/
βββ π± apps/
β βββ backend/ # Node.js Express API
β β βββ config/ # App configurations
β β βββ modules/ # Feature modules
β β β βββ datasource/ # Data source management
β β β βββ dataQuery/ # Query engine
β β β βββ workflow/ # Workflow execution engine
β β β βββ widget/ # Widget management
β β β βββ dashboard/ # Dashboard management
β β βββ prisma/ # Database schema & migrations
β β βββ utils/ # Shared utilities
β β
β βββ frontend/ # React SPA
β βββ src/
β β βββ data/ # API clients & models
β β βββ logic/ # Contexts & hooks
β β βββ presentation/ # UI components & pages
β βββ public/ # Static assets
β
βββ π¦ packages/ # Shared packages (monorepo)
β βββ datasource-types/ # Datasource form configs
β βββ datasources-logic/ # Datasource connectors
β βββ widgets/ # Widget implementations
β βββ workflow-nodes/ # Workflow node components
β
βββ π docs/ # Docusaurus documentation
βββ π³ docker-compose.cloud.yml # Docker deployment
βββ π Dockerfile.* # Container definitions
| π― Getting Started | ποΈ Architecture | β¨ Features |
|---|---|---|
- π΄ Fork the repository
- πΏ Create a 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
|
π New Connectors Add support for more databases and APIs π Widget Types Create new visualization components |
π Workflow Nodes Implement additional automation nodes π Documentation Improve guides and examples |
Check out our Contributing Guide for detailed information.
This project is licensed under the MIT License - see the LICENSE file for details.
Built with amazing open-source technologies:
π Report Bug Β· π‘ Request Feature Β· π¬ Join Discussions
Made with β€οΈ by the Jet Labs Team