TaskFlow is a Go-based workflow platform designed to help teams coordinate work with clarity, visibility, and programmable automation. It combines a polished task dashboard with a secure, machine-readable API layer for external tools, automation workflows, and AI-assisted operations.
Modern teams increasingly rely on fragmented systems: dashboards, chat tools, automation agents, and external services that all need a common operational layer. TaskFlow addresses this gap by providing a structured workflow system that is both human-friendly and compatible with programmable integrations.
The project is built around a simple principle: operational work should be easy for people to manage and easy for software to access securely. This makes it a strong base for collaboration, automation, and future blockchain-aware payment workflows.
TaskFlow supports:
- task creation, updates, status transitions, and deletion
- project-based task organization for work streams and team delivery
- task detail views with a workflow-first interface
- file attachment support for operational context
- health and operational monitoring endpoints
- protected API access for machine consumers and external integrations
- a clean foundation for future identity, permission, and payment-enriched workflows
Browser / UI
β
Go HTTP server (main.go)
β
Service layer (service/task.go)
β
Storage abstraction (storage/task.go)
βββ InMemoryTaskStore
βββ PostgreSQL-backed store (optional)
Protected API routes
β
Middleware/x402 verification
/loginβ sign in/registerβ create an account/dashboardβ main task overview/tasksβ task list and create flow/tasks/{id}β task details and updates/uploadβ file upload page/profileβ user profile page/docsβ project documentation and submission summary/healthzβ health endpoint/api/tasksβ x402-protected task creation endpoint/api/projects/{id}/tasksβ x402-protected project task listing
go run main.goThen open:
http://localhost:8080/dashboard
For the docs page:
http://localhost:8080/docs
TaskFlow will run with an in-memory store by default. To enable database persistence:
export DATABASE_URL="postgres://user:password@localhost:5432/taskflow"
go run main.goThe project also supports operational tuning via:
export PORT=8080
export LOG_LEVEL=infoThe JSON API is designed for external tools and agent systems. The current payment-gated endpoints are:
| Method | Route | Description |
|---|---|---|
| POST | /api/tasks |
Create a new task |
| GET | /api/projects/{id}/tasks |
List all tasks belonging to a project |
| PUT | /api/tasks/{id} |
Update a task |
| DELETE | /api/tasks/{id} |
Delete a task |
These endpoints enforce x402-style payment requirements and return 402 Payment Required challenge responses when signatures or payment validation are missing or invalid.
The project is organized around a layered security model designed for both human users and automated clients:
- web routes are separate from API routes to keep user flows and machine workflows cleanly isolated
- service validation enforces core task rules before persistence
- middleware checks are isolated to request protection concerns
- API verification relies on cryptographic signature validation and x402 challenge logic
- responses remain structured and machine-readable for automation workflows and external tools
Task-Flow/
βββ main.go
βββ dashboard.html
βββ docs.html
βββ login.html
βββ register.html
βββ profile.html
βββ task-detail.html
βββ upload.html
βββ go.mod
βββ README.md
βββ middleware/
β βββ verifier.go
β βββ x402.go
β βββ x402_test.go
βββ service/
β βββ task.go
β βββ task_test.go
βββ storage/
β βββ task.go
β βββ task_test.go
β βββ postgres.go
βββ static/
β βββ css/style.css
β βββ images/
β βββ js/app.js
βββ migrations/
β βββ 001_create_tasks.sql
βββ scripts/
β βββ sign_payload.go
βββ handlers_test.go
This codebase is intentionally organized to make progress straightforward:
- the router is centralized in
main.go - business rules live in
service/task.go - persistence is abstracted through
storage.TaskStore - signature and x402 logic live in
middleware/ - tests cover core service and HTTP behavior
Planned next steps include:
- real user authentication and secure password storage
- PostgreSQL-backed user and project models
- richer search, filtering, and reporting
- improved file handling and attachments storage
- expanded API client SDKs and integration examples
- stronger production observability and deployment automation
This project is a functional prototype and a strong foundation for a production-ready workflow tool. It is especially well-suited for demos, developer showcases, and grant or submission materials where a credible mix of product UX, backend architecture, and programmable API access is valued.
The codebase demonstrates a practical path from concept to deployable workflow platform, with room to evolve into a more complete collaboration layer as identity, permissions, and payment integrations mature.