How lpuigo/projectportfoliomanager works
Project Portfolio Manager is a web application for maintaining project portfolios and reviewing their status, workload, and Jira-derived statistics. The main workflow runs from the browser’s project table through HTTP routes to the manager, which reads or changes project data and returns JSON; users can also inspect project statistics, workload schedules, timelines, and Jira logs. Statistics can be updated from imported files, while Jira queries provide a separate log integration. The graph reflects the supplied excerpts and README; several UI and manager subsystems are represented at their exact enclosing paths because their source was not sampled.
Main entry points: prjapp.go Browser UI · manager.go Application manager · main.go HTTP server · prjmanager.go Project manager
Components 23
Web interface
- Browser UI
src/client/hvue/prjapp.go - Project table
src/client/hvue/comps/project_table/project_table_comp.go - Project editor
src/client/hvue/comps/project_edit_modal/project_edit_modal_comp.go - Project audits
src/client/auditrules/audit.go - Statistics views
src/client/hvue/comps/project_stat_modal/project_stat_modal.go - Jira statistics view
src/client/hvue/comps/jira_stat_modal/jira_stat_modal_comp.go - Workload and timeline
src/client/hvue/comps/workloadschedule_modal/workloadschedule_modal.go - Project view model
src/client/frontmodel/project.go
HTTP application
- HTTP server
src/server/main.go - API routes
src/server/route/route.go - Application manager
src/server/manager/manager.go
Portfolio domain
- Project manager
src/server/manager/prjmanager.go - Project portfolio
src/server/manager/prjportfolio.go - Project domain model
src/server/model/project.go - Persistence and locking
src/server/manager/datamanager/datamanager.go
Statistics and insights
- Statistics manager
src/server/manager/statmanager.go - Workload scheduling
src/server/manager/workloadschedule/workloadschedule.go - Indexed stat records
src/server/manager/recordindexedset/recordindexedset.go
Data integrations
- Stat file processing
src/server/manager/fileprocesser/fileprocesser.go - Jira manager
src/server/manager/jiramanager/jiramanager.go - Spreadsheet adaptor
src/server/manager/xlsxadaptor.go
Other components
- Portfolio user
- Jira database
Connections 25
- Portfolio user → Browser UI: uses
- Browser UI → Project table: renders
- Browser UI → Project editor: opens
- Browser UI → Statistics views: opens
- Browser UI → Jira statistics view: opens
- Browser UI → Workload and timeline: opens
- Browser UI → Project audits: audits projects
- Browser UI → Project view model: maps project data
- Browser UI → HTTP server: requests API
- HTTP server → Application manager: initializes
- HTTP server → API routes: dispatches requests
- API routes → Application manager: invokes operations
- Application manager → Project manager: manages projects
- Application manager → Statistics manager: reads and updates stats
- Application manager → Workload scheduling: calculates schedule
- Application manager → Jira manager: requests Jira logs
- Application manager → Stat file processing: processes stat files
- Application manager → Spreadsheet adaptor: exports portfolio
- Project manager → Project portfolio: loads and manages
- Project manager → Persistence and locking: locks and persists
- Persistence and locking → Project portfolio: persists portfolio
- Project portfolio → Project domain model: stores projects
- Statistics manager → Indexed stat records: indexes stat records
- Stat file processing → Statistics manager: updates statistics
- Jira manager → Jira database: queries