- Post Creation: Registered users can create posts with text and images, sharing their thoughts and experiences with others.
- Comments: Registered users can engage in discussions by commenting on posts.
- Likes: Registered users can show appreciation for posts by liking them.
- Profile Page: Users can view their profile with a list of their posts and liked posts.
- Post Management: As a post author, you can edit and delete your posts and delete comments on your posts.
- Guest Access: Guests can view posts but cannot interact with them.
- Responsive Design: Enjoy a seamless experience across all devices.
- Frontend: React.js, CSS Modules, HTML5
- Backend: Node.js, Express.js
- Database: MongoDB
- Authentication: JWT (JSON Web Tokens)
- Routing: React Router
- Clone the repository: cd gabspot
- Install dependencies for the client: npm install
- Install dependencies for the server: npm install
- Set up environment variables:
Create a
.env
file in theserver
directory and add the following variables:PORT=3030 MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret_key
- Run the application:
- Client:
cd gabSpot npm start
- Server:
cd ../server npm start
The client will run on
http://localhost:5173
and the server will run onhttp://localhost:3030
. - Client:
- Sign Up: Create a new account using your email address.
- Log In: Access your account using your credentials.
- Create Posts: Write and share posts with the community.
- Comment: Engage with others by commenting on their posts.
- Like: Show appreciation by liking posts you enjoy.
- Edit and Delete Posts: As a post author, edit or delete your posts.
- Delete Comments: As a post author, delete comments on your posts.
- Profile Page: View your profile to see your posts and liked posts.
- Guest Access: View posts without an account, but you cannot like, comment, or create posts.