EinsteinMedia is a social media platform created as a computer science class project. It provides users with a space to connect and share their thoughts, photos, and interests with others.
- User registration and login: Users can create an account and log in to the platform.
- Profile customization: Users can customize their profile by adding a profile picture, banner image, and personal information.
- Creating and browsing posts: Users can create new posts and browse through posts in their feed.
- Group chat: Users can engage in live group chat discussions with other users.
- Interacting with posts: Users can comment on posts.
- Searching: Filter posts and search for users to visit their profile
- Private messaging: Users can send private messages to each other. (soon)
- Front-end: React.js, Bootstrap
- Back-end: Java
- Database: MySQL
- Authentication: Auth-Tokem
- API: RESTful API, Websockets
- Clone the repository.
- Navigate to the
backend
directory. - Make sure you have Java Development Kit (JDK) installed on your system.
- Open the backend project in your preferred Java IDE (such as IntelliJ IDEA or Eclipse).
- Resolve any dependencies by installing the required libraries or frameworks specified in the project's build configuration file (such as Maven or Gradle).
- Configure the database connection in
UserRepository.java
- Run the backend server.
- Navigate to the
frontend
directory. - Install the required dependencies by running the command
npm install
. - Start the frontend development server by running the command
npm start
.
Note: Make sure the backend server is running and properly configured before starting the frontend development server.