A modern project management platform supporting work item management, custom fields, type templates, workflows, and automation.
- English (this document)
- 中文文档
| Layer | Technology |
|---|---|
| Backend | Go 1.21+ + Gin + GORM |
| Database | PostgreSQL 16+ |
| Frontend | Vue 3 + TypeScript + Vite + Pinia + Tailwind CSS |
| Authentication | JWT (golang-jwt/v5) |
- Go 1.21+
- PostgreSQL 16+
- Node.js 18+
git clone https://github.com/vinthuy/reqmango.git
cd reqmango# Create database
psql -U postgres -c "CREATE DATABASE reqmango;"cd backend
# Create environment configuration file
cat > .env << EOF
DATABASE_URL=postgres://postgres:postgres@localhost:5432/reqmango?sslmode=disable
SECRET_KEY=change-me-in-production-use-a-long-random-string
ACCESS_TOKEN_EXPIRE_MINUTES=10080
PORT=8000
DEBUG=true
EOF
# Start backend (auto-migrate + seed data)
go run ./cmd/server/Upon startup, the backend automatically creates database tables and inserts demo data:
- Admin account:
demo@example.com/demo1234 - Test accounts:
demo1@reqman.local~demo19@reqman.local(same password) - Demo Workspace (slug: demo) + Demo Project (identifier: DEMO)
- 6 default states, 4 Sprints, 5 modules, 100 work items
- 3 default issue types (Bug/Feature/Epic)
- 3 custom fields (Priority/Target Date/Version)
cd frontend
npm install
npm run devOpen browser at http://localhost:5173, login with demo@example.com / demo1234.
# Backend
cd backend && go build -o server ./cmd/server/
# Frontend
cd frontend && npm run buildreqmango/
├── backend/ # Go Backend
│ ├── cmd/server/ # Entry point
│ ├── internal/
│ │ ├── model/ # GORM Data Models (34 files)
│ │ ├── dto/ # Request/Response DTOs (45 files)
│ │ ├── service/ # Business Logic (35 files)
│ │ ├── handler/ # HTTP Handlers (37 files)
│ │ ├── rql/ # RQL Query Language Engine
│ │ ├── middleware/ # Middleware (Auth/CORS/Lang/Log/RateLimit)
│ │ ├── i18n/ # Internationalization (en/zh)
│ │ ├── seed/ # Seed Data
│ │ ├── common/ # Utility Functions
│ │ └── config/ # Configuration Loading
│ └── config/ # YAML Configuration
├── mcp-server/ # MCP Server
├── frontend/ # Vue 3 Frontend
│ └── src/
│ ├── api/ # API Calls (35 modules)
│ ├── types/ # TypeScript Types
│ ├── stores/ # Pinia State Management
│ ├── views/ # Pages
│ ├── components/ # Components
│ └── router/ # Routing
└── docs/ # Documentation
├── kb/ # Knowledge Base (Architecture Docs)
├── dev/ # Development Pipeline
└── superseded/ # Historical Archive
| Feature | Description |
|---|---|
| Work Item Management | CRUD + State Transitions + List/Kanban Views |
| Custom Fields | 7 types (text/number/dropdown/boolean/date/member/url) |
| Type Templates | Workspace-level type blueprints + Hierarchy + Field Binding |
| Project Templates | Package type templates, apply to projects in one click |
| Workflows | State transition rules + Approval + Role restrictions |
| Automation | Trigger → Condition → Action rule engine |
| Relations | Custom relation types (Blocks/Relates/Duplicates) |
| Hierarchy System | Up to 6 levels of work item hierarchy + Type validation |
| Advanced Search | Multi-field AND combination filtering |
| API | 90+ RESTful endpoints |
See architecture documents in the docs/kb/architecture/ directory.
- Tech Stack
- Go Backend Architecture
- Frontend Architecture
- Data Model
- API Conventions
- Type Hierarchy & Template Design
- Relation System Design
Contributions are welcome. Please submit Issues and Pull Requests.
MIT