JustFlow is a modern workflow automation platform, combining powerful orchestration with a beautiful interface. This repository contains both the frontend and backend code for the JustFlow application.
- Project Management: Organize flows, invite members, and control access.
- Flows: Design and automate workflows visually.
- Failure Pipelines: Trigger recovery or alternative flows on errors.
- Runners: Execute flows, self-hosted or shared, extensible via plugins.
- Scalability: Scale JustFlow and runners to your workload.
- Team Collaboration: Invite team members, assign roles, manage permissions.
- Audit Logs: Track changes and activities for compliance and transparency.
JustFlow can be self-hosted using Docker, Docker Compose, or Helm. You can set up JustFlow using the new automated setup flow (recommended) or manually via configuration files.
Note: JustFlow requires a separately hosted PostgreSQL database. The main JustFlow image does not include a built-in database.
- ghcr.io/justlabv1/justflow:latest – Full version (frontend + backend)
- ghcr.io/justlabv1/justflow:vx.x.x – Versioned releases
- ghcr.io/justlabv1/justflow:frontend-latest – Frontend only
- ghcr.io/justlabv1/justflow:backend-latest – Backend only
After starting JustFlow, visit the /setup page in your browser. The setup wizard will guide you through configuring database, encryption, and admin user. All settings are stored securely and can be updated later in the admin area.
You can configure JustFlow using environment variables for backend and frontend. See the documentation for all available variables.
You can still use a manual config.yaml for backend configuration. Mount your config file into the container:
docker run -p 8080:8080 -v /your/config/path/config.yaml:/etc/justflow/config.yaml ghcr.io/justlabv1/justflow:latestExample config: config.yaml
Use our docker-compose.yaml for a quick start. It includes PostgreSQL and the full JustFlow image. You can use the setup wizard or mount your own config file as described above.
Deploy JustFlow with our Helm chart, which supports integrated setup and runner management. See the Helm Repo for details.
To run only the frontend, provide the backend endpoint via environment variable:
docker run -p 80:3000 -e NEXT_PUBLIC_API_URL=https://api-url.com ghcr.io/justlabv1/justflow:frontend-latestdocker run -p 80:3000 -v /your/config/path/config.yaml:/etc/justflow/config.yaml ghcr.io/justlabv1/justflow:backend-latestJustFlow uses the v1Flows Runner as its execution engine. At least one runner must be connected for flows to run. You can add runners via the setup wizard, project settings, or the admin runner page.
See the Runner repository for more information.
The project structure is organized as follows:
- backend: API, business logic, database, configuration
- frontend: User interface, components, pages, styles
To develop JustFlow locally, you can use either the automated setup or manual config file:
-
Clone the repository:
git clone [email protected]:v1Flows/JustFlow.git cd justflow
-
Install dependencies:
cd services/backend && go mod download
-
Start the backend:
- Automated Setup:
Then visit
go run main.go
http://localhost:8080/setupin your browser to complete the setup wizard. - Manual Config:
Create your
config.yaml(see example above) and run:go run main.go --config config/config.yaml
- Automated Setup:
-
Navigate to the frontend directory:
cd services/frontend -
Install dependencies:
npm install
-
Create a
.env.localfile and add the backend API URL:NEXT_PUBLIC_API_URL="http://localhost:8080"
-
Start the development server:
npm run dev
We welcome contributions! To get started:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes and commit:
git commit -m "Add your commit message" - Push your branch:
git push origin feature/your-feature-name
- Open a pull request on GitHub.
This project is licensed under the GNU AFFERO GENERAL PUBLIC LICENSE Version 3. See the LICENSE for details.

