← Back to projects

Academic project / 16

ARCHIVE Social Network — A Mini Social Platform

A fully-featured social networking website with separate User and Admin modules

Academic project4 min read

At a glance

Project overview

Case study content

The problem: building a real social network, not just a demo website

ARCHIVE Social Network is a scaled-down social networking website built to simulate the core features of a modern social platform. It lets users post content, share images, interact through likes and comments, follow each other, search, use hashtags, receive notifications, and manage their profiles. A social platform has to manage many concurrent data flows and user behaviors at once — without a clear system architecture, the codebase quickly becomes impossible to scale or maintain.

Alongside the user-facing module, the system also has a dedicated Admin area for content moderation, report management, member management, activity statistics, and system notifications. The project aimed to build an organized web system with a clear separation between interface, business logic, and data — supporting both end users and administrators on the same platform.

Role: led the entire Admin module

Within a 4-person team, led the admin module and took part in the system’s design, testing, and optimization:

  • Designed and built the Admin Dashboard
  • Developed content moderation features
  • Developed violation report management features
  • Developed content management and member management features
  • Built system statistics and notifications within the admin area
  • Designed the Class Diagram
  • Optimized and reorganized the codebase architecture for the admin module
  • Tested functionality, UI, and error handling for the admin module
  • Helped edit the report and finalize the end-of-term product

The process: from a “demo” website to a system with real architecture

The workflow followed these steps:

  1. Analyze the system’s functional requirements
  2. Design the User and Admin modules
  3. Build the ERD and Class Diagram
  4. Design the interface for desktop and mobile
  5. Design the MySQL database
  6. Organize the codebase following the MVC pattern
  7. Develop user-facing features and the admin module
  8. Integrate authentication, Google OAuth, and Gmail OTP
  9. Test responsiveness, image uploads, and interactive flows
  10. Manage the codebase via GitHub
  11. Deploy the system to Railway and test in a live environment

Especially proud that the team managed to integrate features that once seemed quite difficult: Gmail OTP verification, Google OAuth login, MVC code organization, Railway deployment, and coordinated development through GitHub.

Results

  • Completed the ARCHIVE social network website with full User and Admin modules
  • Built login, registration, email verification, password reset, and Google login
  • Completed core social features: posting, likes, comments, follows, search, hashtags, and notifications
  • Completed the Admin Dashboard with moderation, report management, member management, and statistics
  • Applied the MVC pattern for code organization
  • Used GitHub to manage source code and coordinate team development
  • Deployed the system to a live environment via Railway
  • The project scored 9.0/10

The proudest moment

This was one of the projects that most clearly matured the way web development was understood. Before this project, a website was only understood at the level of interface and disconnected features. After building ARCHIVE, it became clear how a real website is constructed from many layers: interface, routing, controllers, models, database, sessions, authentication, authorization, file uploads, deployment, and source code management. This project also significantly improved GitHub proficiency, from working on a real repository and tracking changes continuously.

The biggest takeaway

The project taught how to build a complete website from frontend to backend, how to organize code following the MVC pattern, and how to design and manage a database with MySQL and phpMyAdmin. It clarified how to use AJAX for dynamic interactions without reloading the page, how to manage login, sessions, and user permissions, how to integrate Google OAuth and Gmail OTP into a web system, and how to collaborate more effectively through GitHub. Most importantly, it built the understanding that a website isn’t just an interface — it’s a system with architecture, data, security, processing flows, and user experience.

Limitations

The system remains at the academic project stage and hasn’t been fully optimized for a production environment. Some security, authorization, and anti-spam mechanisms could still be improved. There’s no automated testing for the core modules, performance hasn’t been optimized for high user volume, and some user experience flows could use refinement after collecting real user feedback.

If I did it again

  • Refactor the architecture with a clearer separation between Controller, Service, and Repository
  • Add unit tests and integration tests for critical features
  • Strengthen security for authentication, sessions, and file uploads
  • Optimize database indexing for feed, search, and statistics queries
  • Write clearer API or technical documentation
  • Improve UI/UX based on real user feedback after launch
  • Build a clearer deployment pipeline with separate development, staging, and production environments

Start a conversation

Have a question worth exploring?

I’m open to data roles, thoughtful collaborations, and conversations about the work behind this case study.

Get in touch