A movie management system built using NodeJS and MongoDB.
Explore the docs »
View Website
·
Report Bug
·
Request Feature
Table of Contents
A movie management system built using NodeJS, ExpressJS and MongoDB consisting of CRUD features like ratings and blogs for movies, and comments(replies) for a particular blog. Admin have some privileged permissions like CRUD operations for movies, delete any blog/comment/user account. Users can update their profile and also view others’ profile by searching by username.
Major Frameworks/Libraries used:
To setup the project locally, follow the given steps:
Following software needs to be setup in the system:
- git
- github-cli (optional)
- nodejs
- Either mongodb installed or MongoDB Atlas account (please refer to corresponding links to setup respective software)
- Clone the repo by
or (if github-cli is installed)
git clone https://github.com/SubhradeepSS/MDB-lite.git
gh repo clone SubhradeepSS/MDB-lite
- Navigate to the project directory.
- To install the required packages, open cli/terminal and run
npm install
- Create a
.env
file in the project root directory which consists of the following content:DB = {the mongodb uri either setup locally or the uri from mongodb atlas}
For running the project, navigate to the project directory and follow the given instructions:
-
For running the development server, open terminal/cli and run:
npm run dev
-
For testing the server:
npm run start
-
Open http://localhost:3000/ in browser and the login page of the project will open.
-
Create a user(by signing up from the site itself) with username: admin so as to give the user privileged permissions of an admin.
-
New users can signup by providing details and existing users can login with their credentials.
View deployed site here. NOTE: the deployment might not function always since mongodb-atlas requires whitelisting of IPs to access the database.
User Type | Username | Password |
---|---|---|
admin | admin | password |
normal user | user | password |
Following features/enhancements are thought to be added later:
- UI enhancement.
- Implement
CASCADE
delete for mongoose models.
Any contributions made to the project 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