This repo contains the frontend/client side of the full-stack MERN application. This application lets the user to pin the places which they visited across the globe and write the comments about the things they liked most about that place and also provide with the suitable ratings. The application also comes with the login and registration functionality. Anybody can view the pins which are already marked by the other users. A user can create the pins if and only if he/she is logged in to the application. The application is tested on Google Chrome browser. The application makes use of the Mapbox API for providing the Map interface.
This application is built by keeping in mind the best practices which can be used to develop a full-stack application. Although, perfection and learning is an life-long process so I will continue to make use of best practices going along. Please visit here for detailed overview of the backend architecture.
- Login and register functionality is properly handled.
- XSS vulnerability is addressed properly.
- The pins of the current logged in user is different(color of pins is tomato) than that of other users(color of pins is slateblue).
- On double clicking the place on the map, the edit card opens up where you can add the description of the place, provide the rating, etc.
- Whenever any pin gets clicked, the focussed pin moves to the center of the view-area and then the information is visible.
CHECKLIST [TODO]:
- Implement delete pins functionality for the current logged in user.
- Add confirm password button to the Register card.
- Implement different user registration options like Google and facebook login.
- Mapbox Bug1
- Mapbox Bug2
- There is one app specific bug which needs improvement. The pins are overlaying the information filling card i.e. the pins are appearing at the top of the information card. It(pins) need to be overridden by the card component.
The backend api is deployed here.
The application is deployed here.