How nandaleio/c_base works
C_Base is a small C-based PocketBase-style backend with an embedded Vue admin interface. Its main workflow is an HTTP request entering the Mongoose event loop, being dispatched to standard or admin API routes, and returning database-backed results; users can also authenticate and receive JWTs. The UI supports table management, SQL queries, logs, configuration, and admin management. Route/controller wiring and most UI calls are not shown in the sampled source, so those links are limited to documented behavior and explicit entry-point dispatch.
Main entry points: main.c Server Runtime · db.c Database Access · standard-route.c Standard Routes · auth-controller.c Authentication
Components 18
HTTP Server
- Server Runtime
src/main.c - Mongoose HTTP
src/libs/mongoose.c - Public Files
src/main.c
API Domain
- Standard Routes
src/routes/standard-route.c - Admin Routes
src/routes/admin-route.c - Authentication
src/controllers/auth-controller.c - Standard Data API
src/controllers/standard-controller.c - Admin Operations
src/controllers/admin-controller.c - JWT Utilities
src/utils/jwt.c
Persistence
- Database Access
src/db/db.c - SQLite Store
src/libs/sqlite3.c
Admin Interface
- Admin UI
ui/src/App.vue - Login View
ui/src/views/LoginView.vue - Admin Workspace
ui/src/views/home/TablesView.vue - UI API Client
ui/src/services/api-service.ts
Other components
- HTTP Client
- Admin User
- Public Visitor
Connections 21
- Server Runtime → Mongoose HTTP: listens via
- HTTP Client → Mongoose HTTP: sends HTTP
- Mongoose HTTP → Server Runtime: delivers events
- Server Runtime → Admin Routes: dispatches admin
- Server Runtime → Standard Routes: dispatches standard
- Admin Routes → Admin Operations: handles admin API
- Standard Routes → Authentication: handles auth
- Standard Routes → Standard Data API: handles data API
- Authentication → Database Access: reads/writes credentials
- Authentication → JWT Utilities: signs tokens
- Standard Data API → Database Access: queries data
- Admin Operations → Database Access: queries admin data
- Database Access → SQLite Store: uses
- Admin User → Admin UI: uses
- Admin UI → Login View: shows
- Admin UI → Admin Workspace: shows
- Login View → UI API Client: submits requests
- Admin Workspace → UI API Client: requests admin data
- UI API Client → HTTP Client: issues HTTP
- Server Runtime → Public Files: serves public content
- Public Visitor → Public Files: requests content