How murari123-byte/workflowpro-enterprise-project-task-management-system works
WorkFlowPro is a project-and-task management application: users authenticate in the React client, then manage projects, memberships, assigned tasks, workflow transitions, and progress reports through a gateway and three Spring services. Auth owns accounts, roles, and tokens; Project and Task own their respective business data and call one another or Auth over REST for cross-service checks. Each service has its own database. The graph preserves documented dashboard, search, history, and administration capabilities. Internal edges are limited to excerpted calls; broader routing and storage relationships are based on the README.
Main entry points: App.tsx React application · ApiGatewayApplication.java API gateway · ProjectService.java Project and membership · TaskService.java Task workflow
Components 17
Web client
- React application
frontend/src/App.tsx - Project views
frontend/src/pages/ProjectsPage.tsx - Task views
frontend/src/pages/TasksPage.tsx - Dashboard
frontend/src/pages/DashboardPage.tsx
API entry
- API gateway
api-gateway/src/main/java/com/workflowpro/gateway/ApiGatewayApplication.java
Identity and users
- Auth API
auth-service/src/main/java/com/workflowpro/auth/controller/AuthController.java - User API
auth-service/src/main/java/com/workflowpro/auth/controller/UserController.java - Auth and tokens
auth-service/src/main/java/com/workflowpro/auth/service/AuthService.java - User administration
auth-service/src/main/java/com/workflowpro/auth/service/UserService.java - Auth database
Project management
- Project API
project-service/src/main/java/com/workflowpro/project/controller/ProjectController.java - Project and membership
project-service/src/main/java/com/workflowpro/project/service/ProjectService.java - Project database
Task management
- Task API
task-service/src/main/java/com/workflowpro/task/controller/TaskController.java - Task workflow
task-service/src/main/java/com/workflowpro/task/service/TaskService.java - Task database
Other components
- User
Connections 21
- User → React application: uses
- React application → Project views: routes to
frontend/src/App.tsx - React application → Task views: routes to
frontend/src/App.tsx - React application → Dashboard: routes to
frontend/src/App.tsx - React application → API gateway: calls
- API gateway → Auth API: routes auth
- API gateway → User API: routes users
- API gateway → Project API: routes projects
- API gateway → Task API: routes tasks
- Auth API → Auth and tokens: handles auth
auth-service/src/main/java/com/workflowpro/auth/controller/AuthController.java - User API → User administration: handles users
auth-service/src/main/java/com/workflowpro/auth/controller/UserController.java - Auth and tokens → Auth database: persists identity
- User administration → Auth database: persists users
- Project API → Project and membership: handles projects
project-service/src/main/java/com/workflowpro/project/controller/ProjectController.java - Project and membership → Project database: persists projects
- Project and membership → Task workflow: checks task count
project-service/src/main/java/com/workflowpro/project/service/ProjectService.java - Project and membership → User administration: checks users
project-service/src/main/java/com/workflowpro/project/service/ProjectService.java - Task API → Task workflow: handles tasks
task-service/src/main/java/com/workflowpro/task/controller/TaskController.java - Task workflow → Task database: persists tasks
- Task workflow → Project and membership: checks membership
task-service/src/main/java/com/workflowpro/task/service/TaskService.java - Task workflow → User administration: looks up assignees
task-service/src/main/java/com/workflowpro/task/service/TaskService.java