How neru-33/djusw-reposcope works
RepoScope is a GitHub activity-tracking product: its worker accepts queued GitHub event messages, processes installation and repository lifecycle changes, and records eligible commit, pull-request, and issue activity. The repository also contains a Java API foundation and a React screen-flow frontend; the sampled frontend screens are navigation placeholders, not the documented product workflows fully implemented. The graph preserves the worker’s evidenced processing stages and the frontend/API foundations. Source excerpts do not establish deployment wiring or the full product API, so those relationships are omitted.
Main entry points: events.py Event processor · __main__.py Worker runtime · router.tsx Screen routes · queue.py Message queue adapter
Components 20
Web interface
- React entry
frontend/src/main.tsx - Screen routes
frontend/src/router.tsx - Screen catalog
frontend/src/screens.ts - Screen placeholder
frontend/src/pages/ScreenPage.tsx - API client
frontend/src/api/client.ts
API and security
- Spring API
backend/api/src/main/java/com/djusw/api/ApiApplication.java - Security configuration
backend/api/src/main/java/com/djusw/api/security/SecurityConfig.java - Current user service
backend/api/src/main/java/com/djusw/api/security/CurrentUserService.java - API error handling
backend/api/src/main/java/com/djusw/api/error/ApiExceptionHandler.java
GitHub event worker
- Worker runtime
backend/worker/__main__.py - Message queue adapter
backend/worker/queue.py - Message parsing
backend/worker/message.py - GitHub integration
backend/worker/github.py - Event processor
backend/worker/events.py - Activity processing
backend/worker/activities.py - Worker logging
backend/worker/log.py
Persistence
- Database access
backend/worker/db.py - PostgreSQL
- Initial schema
backend/migrations/V1__m1_init.sql
Other components
- Browser user
Connections 24
- Browser user → React entry: uses
- React entry → Screen routes: mounts
frontend/src/main.tsx - Screen routes → Screen catalog: builds routes
frontend/src/router.tsx - Screen routes → Screen placeholder: renders
frontend/src/router.tsx - Screen placeholder → Screen catalog: reads screens
frontend/src/pages/ScreenPage.tsx - API client → PostgreSQL: calls API
- Worker runtime → Message queue adapter: starts
backend/worker/__main__.py - Worker runtime → Database access: configures
backend/worker/__main__.py - Worker runtime → Event processor: initializes
backend/worker/__main__.py - Worker runtime → GitHub integration: initializes
backend/worker/__main__.py - Message queue adapter → Message parsing: parses messages
backend/worker/queue.py - Message queue adapter → Worker logging: emits logs
backend/worker/queue.py - Event processor → Message parsing: uses timestamps
backend/worker/events.py - Event processor → Activity processing: dispatches events
backend/worker/events.py - Event processor → Worker logging: emits logs
backend/worker/events.py - Event processor → PostgreSQL: writes event state
- Event processor → GitHub integration: looks up repos
- Activity processing → Message parsing: normalizes timestamps
backend/worker/activities.py - Activity processing → PostgreSQL: reads and writes
- Database access → PostgreSQL: connects
- Initial schema → PostgreSQL: defines schema
- Security configuration → Current user service: configures
backend/api/src/main/java/com/djusw/api/security/SecurityConfig.java - Security configuration → API error handling: uses error response
backend/api/src/main/java/com/djusw/api/security/SecurityConfig.java - API error handling → Current user service: translates failures