How vraj911/jeerai works
Jeerai is a collaborative project and issue-tracking application with a React frontend and Spring backend. Its principal workflow is managing workspace projects and issues, with supporting authentication, membership, invitations, activity, analytics, automation, notifications, and AI-assisted work. The source index supports several backend service-to-repository relationships; the README is empty and most controller and frontend implementation files were not sampled, so those connections are left unverified rather than presented as confirmed calls.
Main entry points: client.ts API client · IssueService.java Issue service · App.tsx Application shell · WorkspaceMemberService.java Membership service
Components 27
Web client
- Application shell
frontend/src/App.tsx - Workspace pages
frontend/src/pages/workspace - Project pages
frontend/src/pages/project - Issue detail
frontend/src/pages/issue/IssueDetailPage.tsx - AI and activity
frontend/src/pages/system - API client
frontend/src/api/client.ts
Backend API
- Authentication API
backend/jeerai-backend/src/main/java/com/jeerai/backend/controller/auth/AuthController.java - Workspace API
backend/jeerai-backend/src/main/java/com/jeerai/backend/controller/workspace/WorkspaceController.java - Issue API
backend/jeerai-backend/src/main/java/com/jeerai/backend/controller/issue/IssueController.java - AI API
backend/jeerai-backend/src/main/java/com/jeerai/backend/controller/ai/AiController.java - Analytics API
backend/jeerai-backend/src/main/java/com/jeerai/backend/controller/analytics/AnalyticsController.java - Automation API
backend/jeerai-backend/src/main/java/com/jeerai/backend/controller/automation/AutomationRuleController.java
Project services
- Authentication service
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/auth/AuthService.java - Invitation service
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/invitation/InvitationService.java - Membership service
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/workspace/WorkspaceMemberService.java - Access control
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/workspace/WorkspaceAccessService.java - Issue service
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/issue/IssueService.java - AI context
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/ai/AiContextService.java - User service
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/user/UserService.java
Persistence
- Issue repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/issue/IssueRepository.java - Project repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/project/ProjectRepository.java - Activity repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/activity/ActivityRepository.java - Notification repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/notification/NotificationRepository.java - User repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/user/UserRepository.java - Membership repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/workspace/WorkspaceMemberRepository.java - Invitation repository
backend/jeerai-backend/src/main/java/com/jeerai/backend/repository/invitation/InvitationRepository.java
Other components
- User
Connections 35
- User → Application shell: uses
- Application shell → Workspace pages: routes to
- Application shell → Project pages: routes to
- Application shell → Issue detail: routes to
- Application shell → AI and activity: routes to
- Workspace pages → API client: requests
- Project pages → API client: requests
- Issue detail → API client: requests
- AI and activity → API client: requests
- API client → Workspace API: HTTP calls
- API client → Issue API: HTTP calls
- API client → AI API: HTTP calls
- API client → Analytics API: HTTP calls
- API client → Automation API: HTTP calls
- Authentication API → Authentication service: delegates
- Workspace API → Membership service: delegates
- Issue API → Issue service: delegates
- AI API → AI context: delegates
- Automation API → Issue service: delegates
- Invitation service → Membership service: adds members
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/invitation/InvitationService.java - Invitation service → Invitation repository: reads and writes
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/invitation/InvitationService.java - Invitation service → User service: looks up users
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/invitation/InvitationService.java - Membership service → Membership repository: reads and writes
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/workspace/WorkspaceMemberService.java - Membership service → User service: loads users
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/workspace/WorkspaceMemberService.java - Access control → Membership service: checks membership
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/workspace/WorkspaceAccessService.java - Access control → Project repository: loads projects
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/workspace/WorkspaceAccessService.java - Issue service → Issue repository: uses
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/issue/IssueService.java - Issue service → Project repository: uses
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/issue/IssueService.java - Issue service → Activity repository: uses
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/issue/IssueService.java - Issue service → Notification repository: uses
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/issue/IssueService.java - Issue service → User repository: uses
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/issue/IssueService.java - AI context → Issue repository: loads issues
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/ai/AiContextService.java - AI context → Project repository: loads project
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/ai/AiContextService.java - AI context → Activity repository: counts activity
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/ai/AiContextService.java - User service → User repository: reads and writes
backend/jeerai-backend/src/main/java/com/jeerai/backend/service/user/UserService.java