PixDrops is a fullstack social media web application, built using the MERN stack (MongoDB, Express.js, React, Node.js). This README provides an overview of the app's features, setup instructions, usage guidelines, and a video walkthrough of the app.
- Features
- Technologies Used
- Getting Started
- Prerequisites
- Running the Application
- Usage
- Video Walkthrough
- Contributing
- License
- User Registration/ Profile Creation: Users can create an account by providing a unique username, email, password, personal information and a profile picture.
- User Login: Registered users can log in to their account using their username and password.
- Post Pictures: Users can upload and share pictures on their profile and feed.
- Add/Remove Friends: Users can add/remove friends by clicking the add/remove icon next to the users.
- Feed: Users can view a feed of pictures posted by their friends.
- View Profile: Users can click on their widget to see the profile info.
- Frontend
- Backend
Make sure you have the following installed on your system:
- Node.js
- npm
- MongoDB Atlas account and cluster
-
Clone the repository
git clone https://github.com/FayeAlangi/PixDrops.git
-
Navigate to the project directory
cd PixDrops
-
Install server dependencies
cd server npm install
-
Install client dependencies
cd ../client npm install
-
Set up environment variables
- Create a
.env
file in thebackend
directory with the following contents:
MONGO_URL=your_mongodb_uri PORT = 3001 JWT_SECRET=<your secret token>
- Create a
-
Start the development server
cd ../server npm start
-
Start the application
cd ../client npm start
- Frontend:
http://localhost:3000
- Backend API:
http://localhost:30001
Here's a walkthrough of implemented user stories:
GIF created with LICEcap.
Contributions are welcome! Please open an issue or submit a pull request for any changes.
- Fork the repository
- Create your feature branch (
git checkout -b feature/your-feature
) - Commit your changes (
git commit -m 'Add some feature'
) - Push to the branch (
git push origin feature/your-feature
) - Open a pull request
Copyright 2024 Faye Alangi
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.