Social Media MERNg Project

A social media web application built with the MERN (MongoDB, Express, React, Node.js) stack, GraphQL, and Semantic UI.

Features

  • Sign up and login
  • Create, read, update, and delete posts
  • Like and comment on posts
  • User profiles
  • Image uploads
  • Real-time updates

Technologies

  • MongoDB: A document-oriented NoSQL database used to store application data.
  • Express: A web framework used to build the server-side API.
  • React: A JavaScript library used to build the client-side UI.
  • Node.js: A JavaScript runtime used to run the server-side code.
  • GraphQL: A query language and runtime used to interact with the API.
  • Semantic UI: A CSS framework used for styling.
  • Next.js
  • Apollo Server

Installation

  1. Clone the repository:

    git clone https://github.com/username/social-media-merng.git
    
  2. Install dependencies for the server:

cd social-media
npm install
  1. Install dependencies for the client:
cd social-media/client
npm install
  1. Create a .env file in the server directory and add the following:
CONNECTION_URL = <your MongoDB connection string>
PORT =<your desired port>
SECRET_KEY ==<your secret key>
  1. Start the server:
npm run serve
  1. Start the client:
cd client
npm run dev
  1. Open the application in your browser at
[http://localhost:3000].([http://localhost:3000].)

Usage

  • Sign up or log in to access the application.
  • Create a post by clicking on the "Create Post" button.
  • Like or comment on a post by clicking on the respective icons.
  • Edit or delete a post by clicking on the "Edit" or "Delete" button on a post.
  • View user profiles by clicking on their username.
  • Log out by clicking on the "Logout" button.

Contributing

Contributions are welcome! Please create an issue or pull request if you would like to contribute to this project.

License

This project is licensed under the MIT License. See the LICENSE file for details.