WhatsFav is a web application designed to help users select their favorite films based on various filters. The project utilizes the MERN stack (MongoDB, Express, React, Node.js) to provide a seamless and interactive experience.
- Dark Theme Added
- Main Page Video is now fullscreen
- The user can choose the background colors
// bg-stone-950
// bg-amber-950
// bg-yellow-900
// bg-indigo-950
// DEFAULT: bg-blue-950
- The background color has been changed and used more of a color palette
- Created a new filter design with the help of Frame-Motion
- The Mini Search Bar design has been changed
- A bug in the filter has been fixed
Update.mp4
- Features
- Technologies Used
- Getting Started
- Installation
- Usage
- Project Structure
- API Endpoints
- Contributing
- License
- Contact
- Login (added)
- Sign up (added)
- Logout (added)
- Update Profile (added)
- Contact Menu (added)
- Film Models (added)
- Review Models (added)
- Favorites RTK Query (added)
- Create Category, and make a backend for it (added)
- Comment/Rating Tab
- Movies Collecting (added)
- Create A Filter System Based On The Films Genre (added)
- Create A Filter System Based On the user's filter (added)
- Add Films With Slider
- FavSlider.jsx (added)
- All Movies (added)
- Horror Movies (added)
- Sad Movies (added)
- Funny Movies (added)
- Create a dynamic search bar (added)
- Create a state management system for storing favorite films of the user RTK QUERY - BACKEND (added)
- Create A Specific Film Page (added)
- Filter Films: Users can filter films based on their preferences, such as genre, rating, and release date.
- Responsive Design: The application is designed to work seamlessly on both desktop and mobile devices.
- Interactive UI: Built with React, the user interface is dynamic and user-friendly.
- RESTful APIs: The backend is built with Express and Node.js, providing robust APIs for data management.
- Database Management: MongoDB is used to store and manage film data efficiently.
- Frontend: React, Tailwind CSS
- Backend: Node.js, Express
- Database: MongoDB
- State Management: Redux
- API Requests: RTK Query
POST=3000
MONGO_URI="mongodb://***********/test"
JWT_SECRET=
NODE_ENV=
// Contact
SERVICE_ID=""
TEMPLATE_ID=""
PUBLIC_KEY=""
// All Images will be here
IMAGE_URL="./frontend/public/images/"
To get a local copy up and running, follow these steps.
- Node.js and npm installed on your machine
- MongoDB installed and running
-
Clone the repository:
git clone https://github.com/Doguhannilt/WhatsFav.git cd WhatsFav
-
Install backend dependencies:
cd backend npm install
-
Install frontend dependencies:
cd ../frontend npm install
-
Start the backend server:
cd backend npm start
-
Start the frontend development server:
cd ../frontend npm start
-
Access the application: Open your browser and navigate to
http://localhost:3000
WhatsFav/
├── backend/
│ ├── config/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ └── server.js
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── redux/
│ │ ├── App.js
│ │ └── index.js
└── README.md
- GET /api/films: Retrieve all films
- GET /api/films/:id: Retrieve a single film by ID
- POST /api/films: Add a new film
- PUT /api/films/:id: Update a film by ID
- DELETE /api/films/:id: Delete a film by ID
- GET /api/users: Retrieve all users
- GET /api/users/:id: Retrieve a single user by ID
- POST /api/users: Register a new user
- PUT /api/users/:id: Update a user by ID
- DELETE /api/users/:id: Delete a user by ID
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Thanks my buddy for collecting the data: Photographer M.Ali Van
Distributed under the MIT License. See LICENSE
for more information.
Doguhannilt - GitHub Profile
Project Link: https://github.com/Doguhannilt/WhatsFav