Vidly is an Express application for managing a video rental service. It includes functionalities such as user authentication, video rental management, and more.
- User Authentication: Secure authentication using JSON Web Tokens and bcrypt for password hashing.
- Data Validation: Validate data using Joi.
- Database: Use MongoDB and Mongoose for data storage and manipulation.
- Security: Enhance security with Helmet.
- Logging: Log requests and errors using Morgan and debug.
- Views: Render views using Pug template engine.
- Installation: Clone the repository and install dependencies.
- Environment Variables: Set up environment variables. Create a
.env
file in the root directory and add the necessary configurations (e.g., database URL, JWT secret). - Development: Start the development server.
git clone https://github.com/TaronVardanyan/vidly.git
cd vidly
bun install
bun dev
bcrypt
: Password hashing.config
: Application configuration.debug
: Debugging utility.express
: Web framework for Node.js.fawn
: Transactions in MongoDB.helmet
: Security middleware.joi
: Data validation library.jsonwebtoken
: JSON Web Token implementation.mongodb
: MongoDB driver for Node.js.mongoose
: MongoDB object modeling tool.morgan
: HTTP request logger middleware.nodemon
: Utility that monitors for changes and automatically restarts the server.pug
: Template engine.
test
: Placeholder for running tests (currently not specified).
We welcome contributions to Vidly! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/my-feature
). - Commit your changes (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature/my-feature
). - Create a new Pull Request.
This project is licensed under the ISC License.