Giter VIP home page Giter VIP logo

kathalysth / explorify Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fest5/explorify

0.0 0.0 0.0 62 MB

Explorify Web APP es una página web donde puedes comprar variados tours en USA. Este repositorio contiene toda la página Full Stack. Frontend con JS y SSR con Pug, compilado en webpack. Backend + API con Node.js, Express, MongoDB, mongoose, nodemailer, stripe, etc

Home Page: https://explorifyapp.herokuapp.com/

JavaScript 38.51% Pug 25.12% CSS 16.94% HTML 19.42%

explorify's Introduction

Explorify Dynamic Web APP

Explorify is a web application where you can buy tours on multiple locations on the USA. The page has a nice Front End design, but most importantly it has a lot of functionalities made possible thanks to its own made API. This page was made with JavaScript, Node.js, Express, MongoDB for the database, mongoose, pug, JWT, webpack and a lot more modern technologies (you can see them all on package.json file)

What can i do in this page?

This is the list of things that you can try on this page:

  • Sign up
  • Login
  • Look at all the tours details (including a map supported by Mapbox API)
  • Book a Tour (only logged in)(made possible with Stripe API)
  • Update your user information (only logged in)
  • Update your password (only logged in)
  • Update your profile picture (only logged in)
  • See your bookings (only logged in)
  • Keep being logged in thanks to cookies and jwt

What pages does this web have?

This APP consist of this pages for now:

  • The Home
  • Each Tour
  • User Profile
  • Signup
  • Login
  • My Bookings
  • My Reviews (not yet implemented)
  • Billing Page (will never be implemented because this is not a real business page)
  • Tour Guides and Admins Private Adminitrative Pages (not yet implemented)

There are alot more API functionalities that aren't implemented in the page yet, which are every CRUD operation on the 4 collections: Reviews, Users, Tours and Bookings. You can try some on postman if you like.

How does it work?

The pages are Server Side Rendered by Node.js with Pug as the view engine. Almost all data seen on the pages are not strictly written but dynamically brought from the API. When the user hits one of the routes a request is made to the API and it GETS, POST, PATCH or DELETES according to the specific route. Every password is encrypted before saving it to the database. There is a huge amount of effort put in making this page really secure. Also every possible error is covered.

What other technologies did you use?

I used:

  • Postman
  • Mapbox
  • Nodemailer
  • SendGrid
  • Stripe
  • Axios
  • Multer
  • Morgan
  • Sharp
  • Slugify

Is all the code in this repository?

Every line of code is in this repository except for the node_modules folder and the .env files where all the sensitive data should be.

I want to try the page but without signin up or buying anything

You can try one of this test users if you wish:

You can use a fake credit card number that will simulate a successful payment: 4242 4242 4242 On the rest of the inputs just complete with many 2. The name can be whatever you want.

For security measures this are on "user" roles. If you want to try lead-guides permission contact me personally.

Thank you for reading! Remember to contact me on LinkedIn or my email. The live page should be on the repository description.

Made in Argentina by Felipe Stuart.

explorify's People

Contributors

fest5 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.