Skip to content

A Twitter-like social media platform with Ancient Greece-inspired design. Built with Java Servlets, JSP, and MySQL. Features include user authentication, tweets with comments, likes, follow system, and responsive UI. Dockerized for easy deployment.

Notifications You must be signed in to change notification settings

XavierCanadas/Esw-twitter-like-servlets

Repository files navigation

Software Engineering of Web Applications - Course Project

Overview

Netopolis is a social media web application developed as part of the Software Engineering course project. This platform provides a Twitter-like experience with community-based features.

Key Features:

  • User Management: Registration, authentication, and profile management with customizable avatars
  • Tweet System: Create, edit, delete, and view tweets with support for comments and threaded discussions
  • Social Interactions: Like tweets, follow/unfollow users, and view user profiles.
  • Discovery: View tweets and users in a feed, with separate experiences for logged-in and non-logged users
  • Responsive UI: Interface features a theme inspired by Ancient Greece

Architecture:

  • Backend: Java-based MVC architecture with Servlets and JSP
  • Database: MySQL with Docker containerization
  • Pattern: Repository and Service layer pattern for data access and business logic
  • Deployment: Dockerized environment with Docker Compose for easy setup

Setup Instructions

  1. Open Docker Desktop and ensure it is running.
  2. Run the build script to clean the maven project and build the package:
  • Linux/MacOS:
    ./build.sh
  • Windows:
    build.bat
  • Manually:
    • clean the maven project: call maven clean
    • create the .war file: call maven package
    • the .war file should be located in the target folder.
  1. Start the Docker containers using Docker Compose:
    docker-compose up --build 
  2. Access the application at http://localhost:8080.

Team Members

Demo

A live demo of the application is available at: Demo in youyube

Screenshots

Screenshot 2025-10-06 at 23.29.54.png Screenshot 2025-10-06 at 23.30.48.png Screenshot 2025-10-06 at 23.30.57.png

About

A Twitter-like social media platform with Ancient Greece-inspired design. Built with Java Servlets, JSP, and MySQL. Features include user authentication, tweets with comments, likes, follow system, and responsive UI. Dockerized for easy deployment.

Topics

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •