// the find
nagrawal1309/CITADEL
A high-performance, modular CITADEL (College Management System) developed in C++ and SQLite3. Features multi-role authentication for Admins, Faculty, and Students, integrated security bridges, and a 3-tier automated leave approval workflow.
A college management system in C++ on SQLite3, covering admin, staff, student and parent portals, attendance, fees, notices and a three-tier leave approval flow through parents, wardens and HODs. It reads like a student project. It is most useful to someone studying how a console app of this shape is split into modules, not to anyone planning to run it for a real campus.
Vendoring sqlite3.c and sqlite3.h into the repo means g++ is the only prerequisite, with no package manager or separate DLL to install, which matters on Windows. The source is split into one folder per domain (Admin, Student, parent, leave, Fee, attendance, EVENT), each with its own header and implementation pair, so the layout matches the feature list. The leave workflow maps the approval chain as three named tiers that mirror how a college actually runs it, instead of a generic workflow abstraction.
Build outputs are committed: main.o, sqlite3.o, three iris_*.exe files, project.exe and a stray project.exeg. These go stale as soon as the source changes, and a .gitignore would stop them coming back. iris.db is committed as well. If it holds anything beyond seed data, real student records are sitting in a public repo. The README build line produces banasthali_iris, which doesn't match any shipped binary, and it leaves out securitybridge/ even though the README advertises security bridges. The -fpermissive flag downgrades real compile errors to warnings, so a broken build can still look like it works. The README also doesn't say how parent security keys are stored, which matters for a feature whose whole job is access control.