Projects

Projects

Live Projects

Selected projects I’ve built, deployed, and maintain on my own Ubuntu server — spanning full-stack web apps, deployment pipelines, and infrastructure work.

Student Management System Live

A web-based student management system for managing student records, authentication, dashboard features, and database-backed operations.

  • Login and authentication workflow
  • Database-backed CRUD operations
  • Hosted on OVH VPS with Namecheap DNS subdomain
  • Nginx reverse proxy configuration
PHPNode.jsMySQLNginxUbuntu Server

QR Attendance System In Progress

A QR-based attendance management system hosted on my OVH Ubuntu server.

  • QR-based attendance workflow
  • Backend and frontend project structure
  • Database storage and server deployment
Node.jsPHPMySQLNginxUbuntu Server

Smart Learning System In Progress

A full-stack learning platform project with backend, frontend, database, setup scripts, and documentation.

  • Backend and frontend separation
  • Database integration
  • Deployment-ready folder structure
BackendFrontendDatabaseUbuntu Server

DevOps & Infrastructure

Infrastructure Monitoring Stack Running

A Prometheus + Grafana monitoring stack watching my OVH VPS in real time — CPU, memory, disk, and network metrics on live dashboards, deployed entirely with Docker Compose.

  • Node Exporter scraping host-level system metrics
  • Prometheus as the time-series metrics store
  • Grafana dashboards provisioned as code (datasources + dashboards via config files, no manual clicking)
  • Bound only to my private WireGuard VPN interface — never reachable from the public internet
Docker ComposePrometheusGrafanaNode ExporterUbuntu Server

Secure VOIP Server (Asterisk) Running

A self-hosted Asterisk PBX with encryption enforced end-to-end — TLS-encrypted SIP signaling and SRTP-encrypted call audio, reachable only over my private WireGuard VPN. Verified with a real registered SIP client and a live encrypted test call.

  • PJSIP with a TLS-only transport — no plaintext SIP exposed at all
  • SRTP mandatory on every call (AES_CM_128_HMAC_SHA1_80)
  • Bound to the VPN interface plus a firewall rule scoped to the VPN subnet
  • fail2ban watching Asterisk's auth log for brute-force attempts
AsteriskPJSIPTLSSRTPWireGuardfail2ban

Server Hardening with Ansible Planned

An Ansible playbook codifying SSH hardening, UFW firewall rules, fail2ban, and automatic security updates — idempotent and version-controlled instead of manual one-off server changes.

  • Key-only SSH auth and custom port
  • UFW firewall baseline rules
  • fail2ban brute-force protection
  • Unattended security upgrades
AnsibleLinuxSecurity

CI/CD Deployment Pipeline Planned

GitHub Actions building a Docker image on every push to main, then deploying it to my OVH VPS over SSH automatically — replacing manual git pull-and-restart deploys.

  • Automated build and image tagging
  • SSH-based deploy step
  • Rollback on failed health check
GitHub ActionsDockerCI/CD

Containerized Reverse-Proxy Platform Planned

Replacing my per-app Nginx configs with one declarative Docker Compose stack routing all subdomains through a single reverse proxy with auto-renewing HTTPS.

  • One reverse proxy for all self-hosted apps
  • Automatic Let's Encrypt certificate issuance and renewal
  • Host-based routing per subdomain
Docker ComposeNginxLet's Encrypt

Mini Intrusion Detection Dashboard Planned

A small working preview of my dissertation's cyber-defence dashboard concept — parsing fail2ban logs into a live view of blocked IPs and attack attempts over time.

  • Log parsing and structured storage
  • Blocked-IP and attack-attempt visualisation
  • Ties directly into my MSc dissertation work
fail2banCyber DefenceDashboarding

Automated Backup & DR Pipeline Planned

Cron-scheduled rsync/restic backups to S3 with a retention policy, plus a tested restore runbook proving actual recoverability, not just backup existence.

  • Versioned, retention-managed backups
  • Offsite storage via AWS S3
  • Documented, tested restore procedure
AWS S3resticCron

Coursework

MIT Missing Semester Completed

Worked through the syllabus and exercises from MIT's "Missing Semester of Your CS Education" — the practical, tool-focused skills that tie a CS education together.

  • Shell fundamentals and the command-line environment
  • Development environment and tooling setup
  • Debugging, profiling, and version control with Git
  • Packaging, shipping code, and code quality practices
ShellGitDebuggingDev ToolsPackagingCode Quality