Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kislevlevy/natours
https://github.com/kislevlevy/natours
Last synced: about 4 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/kislevlevy/natours
- Owner: kislevlevy
- Created: 2024-11-05T16:10:29.000Z (12 days ago)
- Default Branch: master
- Last Pushed: 2024-11-05T17:06:03.000Z (12 days ago)
- Last Synced: 2024-11-05T17:37:04.523Z (12 days ago)
- Language: JavaScript
- Size: 27 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Natours Project
Welcome to **Natours**, an advanced and feature-rich application for booking and managing tours across the U.S., developed using **Node.js**, **Express**, and **MongoDB**.
### 🌍 Project Overview
Natours is a full-stack application designed for tour management, featuring a RESTful API and server-rendered pages. The app is fully optimized, allowing users to explore, book, and manage tours with a seamless experience. Through this project, I have gained a wide range of back-end development skills, from API design to deployment.
### 🚀 Features
- **User Authentication**: Secure JWT-based authentication with role-based access control.
- **API with CRUD Functionality**: Fully RESTful API for tour management with advanced features like filtering, sorting, and pagination.
- **Payment Integration**: Accepts Stripe payments.
- **Data Management**: Geospatial queries, data modeling with Mongoose, and NoSQL database management.
- **Security**: Built-in encryption, data sanitization, and rate limiting for optimal security.
- **Deployment**: Deployed on Render with Git version control.### 📚 Technologies and Tools
- **Node.js** and **Express** for the server and API
- **MongoDB** and **Mongoose** for data modeling
- **Stripe** for payment processing
- **Pug** for server-side rendering
- **Render** for production deployment### 📜 Installation
1. Clone the repo: `git clone https://github.com/kislevlevy/natours`
2. Install dependencies: `npm install`
3. Set up environment variables as shown in `config.env.md`
4. Run the app: `npm run start:dev`### 🤝 Contributing
Contributions are welcome! Feel free to fork the repository and submit pull requests.