•  


GitHub - prajvals/ThrilloVilla: A FullStack Application, to Organise and Book Tours. Tech Stack Used: Node.js, Express.js, Javascript, MongoDb, Atlas, Postman
Skip to content

A FullStack Application, to Organise and Book Tours. Tech Stack Used: Node.js, Express.js, Javascript, MongoDb, Atlas, Postman

Notifications You must be signed in to change notification settings

prajvals/ThrilloVilla

Repository files navigation

ThrilloVilla

  1. A Fullstack Node.js Project you can organise and sell your tour plans with.

  2. Highly modularised code base with Global Error Handlers, Factory Functions, Resource Separation with Different Routers, with security protocols Implemented.

  3. Tech Used: Node.js , Express.js , MongoDB , Mongoose , JWT , Javascript , Atlas, PostMan, Middlewares.

  4. Prominent Features Include:

    • Authentication with JWT
    • Forget password Mechanism using email service
    • Standard security Protocols is maintained
    • Schema of multiple Collections: Users, Tours, Reviews With Child/Parent Referencing
    • Global Error Handling Mechanism is made
    • Use of Router and well modularised Code Base
    • Nested Routes to perform operations based on the user logged in
    • Child referencing and Parent Referencing is used too
  5. Prominent Features Include:

    1. Advanced CRUD API's with Searching and sorting options
    2. Used Routers to organise Resources and their calls
    3. Data Validation
    4. Persistent Data storage in mongoDB stored on cloud Atlas
    5. App Level Global Exception Handlers
    6. User Registeration, Login, Authentication , Authorisation implemented.
    7. Json Web Token Used for Authorisation with expiry date.
    8. Bcrypt Used for encrypting and Decrypting Passwords.
    9. Forget Password Functionality by sending Email using NodeMailer
    10. Rate Limiting and added secuirity Headers.
    11. Prevention against noSQL injection, and Cross Site Scripting Attacks.
    12. Factory functions to create Controllers quickly.
    13. Databases Indexed for faster Query.
    14. Child referencing and Parent Referencing.
  6. Tools Used:

    1. Express for faster API Development.
    2. Nodemon as a dev Dependency to speed up development
    3. Bcrypt for encryption.
    4. NodeMailer for Sending mails.
    5. JWT for authentication and Authorisation.
    6. Mongo DB database stored on Atlas
    7. PostMan for API Testing and documentation.
    8. Github for Version Control.
    9. NPM for package management.

STEPS TO RUN

  1. Clone the Repo
  2. Open project in Visual Studio Code.
  3. Run Npm start, in Terminal to start the application
  4. Use PostMan to Trigger API's.

LEARNINGS AND EXPERIENCE.

This project gave me immense pleasure and was satiating for my Node.js and backend Curiosity. Deeply loved making it. I learnt the following lessons while making it:

  1. How Node.js works and why its preferred for I/O intensive operations
  2. How To Structure and Seprate Resources with routers
  3. How to work with Express.
  4. How to use Middlewares
  5. How schemas are built and used
  6. How validation Happens.
  7. Difference between Authentication and Authorisation.
  8. How Authentication and authorisation is done with JWT tokens.
  9. How Mongoose works and database connections
  10. Standard secuirty protocols.
  11. Child referencing and parent referencing
  12. database indexing.

All in all this was a lovely project.

About

A FullStack Application, to Organise and Book Tours. Tech Stack Used: Node.js, Express.js, Javascript, MongoDb, Atlas, Postman

Topics

Resources

Stars

Watchers

Forks

- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본