https://github.com/nullhawk/post-it
https://github.com/nullhawk/post-it
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/nullhawk/post-it
- Owner: nullHawk
- License: unlicense
- Created: 2024-07-17T10:48:11.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-18T08:29:45.000Z (almost 2 years ago)
- Last Synced: 2024-12-16T20:42:22.789Z (over 1 year ago)
- Language: JavaScript
- Homepage: https://nullhawk-post-it.netlify.app/
- Size: 8.78 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PostIt
PostIt is a fully-featured social media web application, built with the MERN stack.
Deployed at: https://nullhawk-post-it.netlify.app/
## Features
- Create, read, update and delete posts
- Like and unlike posts
- Create, reply to, read, update and delete nested comments
- Markdown for posts and comments
- Sign up and login using JWT for authentication
- Private message users in real-time using socket.io
- View profiles of users and browse through their posts, liked posts and comments
- Infinite scrolling
- Sort posts by attributes such as like count, comment count and date created
- Profanity filtering and posting/commenting cooldowns
- Update bio which can be viewed by other users
- Search for posts by their title
- View the users who liked a particular post
- Fully responsive layout
## Installation and usage
1) Clone this repository
```
git clone https://github.com/nullHawk/post-it
```
2) Install dependencies
```
cd post-it
npm install
cd client
npm install
```
3) Create .env in root directory
```
cd ..
touch .env
```
4) Configure environment variables in your new .env file. To acquire your MONGO_URI, create a cluster for free over at https://www.mongodb.com/. The TOKEN_KEY is a secret key of your choosing, you can generate one at this site: https://randomkeygen.com/.
```
MONGO_URI=
TOKEN_KEY=
PORT=4000
```
5) Run the server
```
npm run server
```
6) Start a new terminal and run react's development server
```
cd post-it
cd client
npm start
```