{"id":21024183,"url":"https://github.com/mahamudm90/natours","last_synced_at":"2026-04-10T12:31:59.628Z","repository":{"id":214455472,"uuid":"562008414","full_name":"MahamudM90/Natours","owner":"MahamudM90","description":"An awesome tour booking web app written in NodeJS, Express, MongoDB 🗽","archived":false,"fork":false,"pushed_at":"2022-12-30T16:31:50.000Z","size":38758,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-30T21:02:23.507Z","etag":null,"topics":["compression","cors","css3","expressjs","helmet","javascript","json-web-token","mongodb-atlas","mongosse","multer","nodejs","stripe-api","validator"],"latest_commit_sha":null,"homepage":"https://tourswebsiteusa.herokuapp.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MahamudM90.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-11-05T02:50:34.000Z","updated_at":"2022-12-04T06:24:38.000Z","dependencies_parsed_at":"2023-12-28T10:41:13.838Z","dependency_job_id":null,"html_url":"https://github.com/MahamudM90/Natours","commit_stats":null,"previous_names":["mahamudm90/natours"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MahamudM90/Natours","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MahamudM90%2FNatours","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MahamudM90%2FNatours/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MahamudM90%2FNatours/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MahamudM90%2FNatours/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MahamudM90","download_url":"https://codeload.github.com/MahamudM90/Natours/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MahamudM90%2FNatours/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31642747,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["compression","cors","css3","expressjs","helmet","javascript","json-web-token","mongodb-atlas","mongosse","multer","nodejs","stripe-api","validator"],"created_at":"2024-11-19T11:23:40.326Z","updated_at":"2026-04-10T12:31:59.567Z","avatar_url":"https://github.com/MahamudM90.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  \u003ca href=\"https://tourswebsiteusa.herokuapp.com/\"\u003e\u003cimg src=\"./public/img/logo-green-round.png\" alt=\"Natours\" width=\"200\"\u003e\u003c/a\u003e\n  \u003cbr\u003e\n  Natours Application\n  \u003cbr\u003e\n\u003c/h1\u003e\n\n\u003ch3 align=\"center\"\u003eBuilt using modern technologies: node.js, express. mongoDB, mongoose and friends.\u003c/h3\u003e\n\u003ch4 align=\"center\"\u003e\u003ca href=\"https://nodejs.org/en/\" target=\"_blank\"\u003eNodeJS\u003c/a\u003e.\u003c/h4\u003e\n\n\u003ch2 align=\"center\" fontWeightBold=\"900\"\u003e Website \u003c/h2\u003e\n\n\u003ch4 align=\"center\"\u003e\u003ca  href=\"https://tourswebsiteusa.herokuapp.com/\" target=\"_blank\"\u003e💻👉Natours 👈💻\u003c/a\u003e\u003c/h3\u003e\n\n### All Tours\n![image](./website/principal.png)\n### Tour\n![image](./website/tour.png)\n\n### Setting User \n![image](./website/user.png)\n\n### Login \n![image](./website/login.png) \n\n### Reserve Tour\n* Login to the site\n* Search for tours that you want to book\n* Book a tour\n* Proceed to the payment checkout page\n* Enter the card details (Test Mood):\n```\n  + Card Num: 4242 4242 4242 4242\n  + Expiry date:  01 / 32\n  + CVV: 108\n```\n* Finished!\n\n## API Usage\nBefore using the API, you need to set the variables in Postman depending on your environment (development or production). Simply add: \n  ```\n  - {{URL}} with your hostname as value (Eg. http://127.0.0.1:3000 or http://www.example.com)\n  ```\n\nCheck [Natours API Documentation](https://documenter.getpostman.com/view/13422360/UVsJw6nC) for more info.\n\n\u003cb\u003e API Features: \u003c/b\u003e\n\nTours List 👉 https://tourswebsiteusa.herokuapp.com/api/v1/tours\n\n\nTours State 👉 https://tourswebsiteusa.herokuapp.com/api/v1/tours/tour-stats\n\nGet Top 5 Cheap Tours 👉 https://tourswebsiteusa.herokuapp.com/api/v1/tours/top-5-cheap\n\nGet Tours Within Radius 👉 https://tourswebsiteusa.herokuapp.com/api/v1/tours/tours-within/200/center/34.1117545,-118.113491/unit/mi\n\n## Deployment\nThe website is deployed with git into heroku. Below are the steps taken:\n```\ngit init\ngit add -A\ngit commit -m \"Commit message\"\nheroku login\nheroku create\nheroku config:set CONFIG_KEY=CONFIG_VALUE\ngit push heroku master\nheroku open\n```\n\n## Build With\n\n* [NodeJS](https://nodejs.org/en/) - JS runtime environment\n* [Express](http://expressjs.com/) - The web framework used\n* [Mongoose](https://mongoosejs.com/) - Object Data Modelling (ODM) library\n* [MongoDB Atlas](https://www.mongodb.com/cloud/atlas) - Cloud database service\n* [Pug](https://pugjs.org/api/getting-started.html) - High performance template engine\n* [JSON Web Token](https://jwt.io/) - Security token\n* [ParcelJS](https://parceljs.org/) - Blazing fast, zero configuration web application bundler\n* [Stripe](https://stripe.com/) - Online payment API\n* [Postman](https://www.getpostman.com/) - API testing\n* [Mailtrap](https://mailtrap.io/) \u0026 [Sendgrid](https://sendgrid.com/) - Email delivery platform\n* [Heroku](https://www.heroku.com/) - Cloud platform\n\n\n## Installation\nYou can fork the app or you can git-clone the app into your local machine. Once done that, please install all the\ndependencies by running.\n```\n$ npm i\nset your env variables\n$ npm run watch:js\n$ npm run build:js\n$ npm run dev (for development)\n$ npm run start:prod (for production)\n$ npm run debug (for debug)\n$ npm start\n```\n## About Bugs\nThis project is the still in modification, repair and improvement, if you want to help me, you can send me a message to the email mahamud15-10467@diu.edu.bd. Thank you!\n## Acknowledgement\n\n**This project is part of the online course I've taken at Udemy. Thanks to Jonas Schmedtmann for creating this course! Link to the course: [Node.js, Express, MongoDB \u0026 More: The Complete Bootcamp 2022](https://www.udemy.com/course/nodejs-express-mongodb-bootcamp/)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmahamudm90%2Fnatours","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmahamudm90%2Fnatours","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmahamudm90%2Fnatours/lists"}