
OpenCampus is an open-source, self-hosted platform for managing university scheduling, academic structure, and student attendance.
The system is designed as a modular monolith built with Go and PostgreSQL, prioritising reliability, clear architecture, and straightforward deployment in institutional environments.
See docs/README.md for the full documentation index.
You can read README as a webpage (recommended).
Universities often rely on fragmented or legacy systems for timetable management and attendance tracking. OpenCampus provides a modern, extensible alternative that institutions can host on their own infrastructure.
The platform aims to:
Planned:
Additional design diagrams are available in:
docs/diagrams/
Including:
services/
api/
cmd/ Application entrypoints
internal/ Business logic and modules
db/
migrations/ Database schema evolution
schema/ Base schema definitions
seed/ Development seed data
web/ Frontend application (planned)
docs/
uml/ PlantUML source files
diagrams/ Rendered diagrams
deploy/
docker-compose.yml Local deployment configuration
Initial setup instructions will be provided with the first MVP release.
Planned workflow:
git clone <repository>
cd opencampus
docker compose up
PostgreSQL is used as the primary relational data store.
Schema management will be handled through versioned migrations located in:
db/migrations/
Near Term:
Mid Term:
Long Term:
Architecture and system design documentation:
docs/
Includes UML diagrams and domain modelling artifacts.
Contributions, bug reports, and feature proposals are welcome.
Contribution guidelines and development workflow will be documented as the project reaches MVP maturity.
Security issues should be reported privately to the maintainers.
A formal security policy will be added prior to production deployments.
License will be specified before the first stable release.