For my ICT171 cloud project, I plan to build StudyBuddy, a lightweight web-based dashboard hosted entirely on an IaaS cloud server (AWS EC2). The core idea is simple: a single-page application that helps students like me keep track of study goals, deadlines, and quick notes – all in one clean interface. Unlike commercial productivity apps that lock data away, StudyBuddy will be self-hosted, giving me full control over my own information while demonstrating real cloud and server administration skills.
The server will run Ubuntu 24.04 LTS with an Apache web server, a PostgreSQL database, and a Python Flask backend. The frontend will be built with vanilla HTML, CSS, and a touch of JavaScript to keep things fast and maintainable. Users (just me, initially) will be able to add tasks, mark them complete, and see a simple weekly progress chart. All data will persist in the PostgreSQL database, which I'll learn to secure and back up using automated scripts and cron jobs.
Why this project? It ticks every box for the learning outcomes. I'll provision the VM from scratch using the AWS CLI and console, configure security groups to allow only HTTP/HTTPS and SSH from my IP, and set up a firewall with UFW. I'll also implement SSL/TLS using Let's Encrypt so the dashboard is served over HTTPS. On the command line, I'll become fluent in navigating the server, managing services with systemctl, reading logs, and troubleshooting permissions.
Beyond the technical skills, StudyBuddy is genuinely useful to me. I'll actually use it during the semester to track my own ICT171 tasks and deadlines. It's a perfect marriage of coursework and real-life utility. By the end of the project, I'll have a working cloud-hosted web application, a documented deployment process, and a solid foundation in IaaS fundamentals.
I've chosen the MIT License for this project. It is one of the most permissive open-source licenses, allowing anyone to use, copy, modify, merge, publish, distribute, sublicense, and even sell copies of the software – provided they retain the original copyright notice. I selected MIT because it encourages collaboration and reuse without imposing legal complexity. For a student project like StudyBuddy, the MIT License invites others to learn from my code, adapt it for their own needs, or contribute improvements back. It aligns perfectly with the educational spirit of this assignment while protecting my basic authorship rights.