Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kevsiraki/dont_trip

A full-stack PWA that generates a personalized list of places along a user’s route on Google Maps.
https://github.com/kevsiraki/dont_trip

bootstrap4 css3 javascript lemp-stack mariadb nginx php ubuntu

Last synced: 11 days ago
JSON representation

A full-stack PWA that generates a personalized list of places along a user’s route on Google Maps.

Awesome Lists containing this project

README

        


# Dont Trip

An itinerary planner utilizing the Google Maps API to give you customized places along a route!

Written primarily in LEMP Stack (PHP 7.4/Nginx, MariaDB), Modern Vanilla Javascript, J-Query 3.6.0, and Bootstrap 4.5.2/Vanilla CSS3.

Visit us today at and let us know of any issues you may face!

Features:



    Frontend/Client


  • Find places along a route and add as many as you want along the way.

  • Fully featured automatic or manual light/dark mode based upon time of day/user setting.

  • Regex for sorting places response list by distance or name.

  • Place info page with place name, distance, image, open/closed status/hours, website, address, and phone number.

  • Search history/count/clear search history options (both in settings and per history item).

  • Popular places in your state with a popularity count.

  • Place/keyword autofill reccomendations.

  • Responsive directions with click events.

  • Popular in your state, search history/keywords, and places along the route all feature hyperlinks to easily use them as search queries.

    Backend/Server



  • Proper SSL Encryption with HTTP->HTTPS traffic redirects.

  • Hashed/salted passwords and modern encryption of any secret keys in the DB.

  • Two factor authentication that works with any authenticator app of choice.

  • Account deletion with confirm password.

  • Confirm email verification/forgot password recovery email form with material design email templates.

  • Expiring password reset forms with custom hashed tokens.

  • Realtime form (password/username/email/other) input strength/requirement meters.

  • SQL injection proof, prepare/parameterized statments utilized for any query in entire backend.

  • Brute force/XSS/CSRF protection with custom IDS setup to keep a log of visits and login attempt.

  • Session regeneration and expiry system to prevent session hijacking/fixation

  • Alert users on brute force attempts with an email and a temporary code to reset their password.

  • Rate limiting/throttling on all front-end components and server requests, including email reset forms.

  • RESTful architecture used for backend (traditional sessions converted to JWT).

  • Google/Steam/(Meta)/Discord login integration.

  • Proxies/VPNs/TOR nodes as well as non-existent/fraudulent e-mail addresses filtered/prevented/redirected if suspicious activity is detected.

  • PHP-Dot-Env used to safely store API keys, database credentials, email server information, etc.

  • Legible code/file structure with seperation of API/Frontend/Requests/Stylesheets.