A modern web-based task management system for Taskwarrior and Taskchampion. This project provides a full-stack environment to manage your tasks with a clean web interface, a robust Go backend, and a specialized Rust middleware for Taskchampion synchronization.
The project is composed of several specialized services:
- Frontend: An Angular-based web application providing a user-friendly task management interface.
- Backend: A Go-based API server that handles business logic, user management, and communicates with the middleware.
- Middleware: A Rust-based service that interacts directly with Taskchampion, providing RESTful access and handling end-to-end encryption and synchronization.
- Sync Server: A Taskchampion synchronization server for backing up and syncing tasks across multiple clients.
- Database: PostgreSQL/SQLite is used for persistent storage.
.
├── backend/ # Go (Gin) API Server
├── frontend/ # Angular Web Application
├── middleware/ # Rust Taskchampion Middleware
└── docs/ # Project documentation
- Docker and Docker Compose (or Podman/podman-compose)
- An
.envfile based onenv-sample
-
Clone the repository:
git clone <repository-url> cd taskchampion-web
-
Configure environment:
cp env-sample .env # Edit .env with your configuration -
Start the services:
docker-compose up -d
Or using the Makefile in the backend directory:
cd backend && make docker-up
-
Access the application:
- Frontend:
http://localhost:4200 - Backend API:
http://localhost:8090 - Middleware API:
http://localhost:3001
- Frontend:
Each component has its own detailed README with development instructions:
See the LICENSE files in individual component directories.
