CSLogbook - Academic Workflow & Student Progress Tracking System
A full-stack web application designed for computer science students to manage academic workflows, internship tracking, special projects, and thesis milestones.
1. Overview
CSLogbook (https://cslogbook.me) is a full-stack web application developed as a centralized academic workflow and milestone tracking platform for the Department of Computer Science and Information Technology at KMUTNB, covering 3 major academic tracks: Internship, Special Project, and Thesis.
2. Stories & Visual Tour
Dashboard & Activity Overview
Centralized dashboard displaying real-time academic progress, pending request notifications, and next action items.
Daily Logbook System
Daily internship logbook entries with report attachments and faculty advisor review workflows.
Clock-in & Work Hours Tracking
Automated clock-in/out time tracking, cumulative internship hour calculation, and leave management.
Thesis & Defense Milestone Tracking
Milestone tracking table with automated unlock condition verification and defense exam records.
Mentor & Enterprise Evaluation
Workplace mentor management with token-based evaluation links for external company supervisors.
Company & Workplace Directory
Verified workplace directory and registration system for departmental internships.
3. Architecture & Workflows
💡 Interactive Visual Viewers (Archify):
- 🖥️ Open Interactive Full-stack Architecture (Full Screen) — Interactive component focus, pan/zoom, and Light/Dark mode.
- 🔄 Open Interactive Academic Workflow Trace Viewer — Step-by-step state machine with animated trace motion.
System Architecture (Infographic)
flowchart TB subgraph Client["Client Tier (Next.js 16 App Router)"] UI_AUTH["Auth Layer\nKMUTNB SSO + Scoped JWT"] UI_STU["Student Portal\n(Forms KP.02/03/05 / Logbook)"] UI_ADV["Advisor Portal\n(Review & Granular Approvals)"] UI_ADM["Admin Portal\n(Manage / Override / Excel Engine)"] UI_SUP["External Supervisor\n(Token-based Evaluation)"] end
subgraph Proxy["Reverse Proxy & Gateway"] NGINX["Nginx (Port 80/443 SSL)\n- / -> Next.js :3000\n- /api/ -> Express :5000\n- /uploads/ -> Static PDFs"] end
subgraph API["Backend Tier (Express REST API)"] MID["Middleware (Auth, RBAC, RateLimit)"] SRV["Service Layer (Workflow Engine, DocBuilder)"] NOTIF["Real-time & Telemetry (Socket.io + Winston)"] end
subgraph Storage["Data Tier (MySQL 8.0 & Storage)"] DB[(MySQL 8.0 Database\n48 Models / 103+ Migrations)] UPLOADS["File Storage\n(Signed PDFs & Documents)"] end
Client --> NGINX NGINX --> UI_AUTH NGINX --> MID MID --> SRV SRV --> DB SRV --> UPLOADS SRV --> NOTIFState Machine Approval Pipeline
sequenceDiagram autonumber actor S as Student actor A as Faculty Advisor actor ADM as Department Officer / Admin participant SYS as CSLogbook API & DB
Note over S, SYS: 1. Request Submission & Guard Validation S->>SYS: Submit Request (KP.05 / KP.02 / Defense) SYS-->>SYS: Validate Unlock Conditions (Credits / Meetings >= 4) SYS->>SYS: Set status to "Pending"
alt Special Project & Thesis Flow SYS->>A: Notify Faculty Advisor A->>SYS: Review & Approve (Advisor Approved) SYS->>ADM: Forward to Department Officer else Internship Flow SYS->>ADM: Forward directly to Department Officer end
Note over ADM, SYS: 2. Final Approval & Automated Document Generation ADM->>SYS: Final Approval (Officer Approved) SYS->>SYS: Auto-generate Official PDF (Request / Dispatch Letter) SYS-->>S: Unlock PDF download & advance workflow step4. Key Engineering Highlights
- Multi-Role RBAC & Public Tokens: 4 user roles (Student, Advisor, Admin, Supervisor) with cryptographic token evaluation links requiring no account signup for external mentors.
- State Machine & Dynamic Engine: Deterministic state transitions governed by
workflowStates.tsandcanTransition()with strict prerequisite unlock rules. - Staff Backoffice & Matrix: Centralized administrative control, rubric scoring matrix for defense exams, and dynamic Excel/PDF generation.
- DevOps & Infrastructure: Docker Compose containerization behind Nginx Reverse Proxy with structured Winston logging and automated GitHub Actions deployment.
5. My Role & What I Built
As the Full-stack Developer, I engineered the platform end-to-end:
- Frontend: Built responsive UIs with Next.js 16 (App Router), React 19, and TypeScript, including step workflow components.
- Backend & API: Designed RESTful APIs on Express, RBAC authorization, state machine engine, and dynamic Excel builder (
ExcelExportBuilder). - Database: Modeled relational schemas across 48 MySQL tables with 103+ Sequelize migrations.
- DevOps: Managed Docker Compose, Nginx SSL termination, Winston logging, and GitHub Actions CI/CD deployment.
6. Result & Current State
- UAT Validated: Successfully passed User Acceptance Testing across 34 comprehensive test cases.
- Production Live: Running stably in production on a Linux VPS at
https://cslogbook.me.
7. Demo & Code
- Live System: https://cslogbook.me
- GitHub Repository: Manchinn/CSLogbook