A lightweight workflow automation platform built with Next.js and Honojs.
- Node.js (v18 or higher recommended)
- pnpm (v8 or higher)
- Docker and Docker Compose
| Node Config | Quick Add | Node Debugger |
|---|---|---|
![]() |
![]() |
![]() |
| Filter Condition | Quick Add | Workflow List |
|---|---|---|
![]() |
![]() |
![]() |
To run the entire application in production mode:
docker compose upThe production environment will be available at:
- Frontend: http://localhost:3100
- Backend API: http://localhost:3200
- Redis: http://localhost:6370
- PostgreSQL: http://localhost:5430
- Clone the repository:
git clone https://github.com/hudy9x/odoflow.git
cd odoflow- Install dependencies:
# Install frontend dependencies
cd frontend
pnpm install
# Install backend dependencies
cd ../backend
pnpm install- Set up environment variables:
# Frontend (.env.local)
cp frontend/.env.example frontend/.env.local
# Backend (.env)
cp backend/.env.example backend/.env- Set up the database and dependencies:
# Start PostgreSQL and Redis services
docker compose up odo-db odo-redis -d
# Setup database schema and client
cd backend
pnpm deploy # Deploy database migrations
pnpm generate # Generate Prisma Client- Start the development servers:
# Start backend development server
cd backend # If not already in backend directory
pnpm dev
# In a new terminal, start frontend development server
cd frontend # From project root
pnpm devThe development environment will be available at:
- Frontend: http://localhost:3000
- Backend: http://localhost:3003
.
├── frontend/ # Next.js frontend application
│ ├── src/
│ │ ├── app/
│ │ │ ├── (auth)/ # Authentication pages
│ │ │ ├── (routes)/ # Application routes
│ │ │ ├── features/ # Feature components and logic
│ │ │ └── services/ # API service calls
│ │ └── components/ # Reusable UI components
│ │
├── backend/ # Node.js backend application
│ ├── src/
│ │ ├── controllers/ # API route controllers
│ │ └── index.ts # Main application entry
│ └── prisma/
│ └── schema.prisma # Database schema
└── README.md
| Category | Technologies |
|---|---|
| Frontend | Next.js, Shadcn UI Components, TypeScript, Tailwind CSS |
| Backend | Honojs, Prisma (ORM), TypeScript, Redis, PostgreSQL |
- All authentication pages should be placed in
frontend/src/app/(auth) - Application pages should be placed in
frontend/src/app/(routes) - Business logic should be separated into
frontend/src/app/features - API requests should be centralized in
frontend/src/app/services - Component names must follow PascalCase convention
- API routes are defined in
backend/src/controllers - New routes must be imported and registered in
backend/src/index.ts - Database schema modifications should be made in
backend/prisma/schema.prisma






