The goal
A learning project to explore a NoSQL database and real-time synchronisation, by building a bilingual travel blog. The idea: step away from relational databases and work with a different data model, while polishing the user experience.
Features
- bilingual EN / FR (i18n);
- dark mode;
- installable on mobile (PWA);
- interactive photo gallery;
- real-time comments and likes (Firebase).
Technical choices
- Firebase / Firestore: to work with a NoSQL database and real-time sync without managing a server — the core learning goal.
- React + TypeScript + Tailwind CSS: a typed interface, built quickly.
- PWA + i18n: going beyond a plain site — installable, usable offline, and available in two languages.
What I worked on
Modelling data in NoSQL (and understanding how it differs from relational), handling real-time synchronisation of comments and likes, and turning a React app into a bilingual PWA.
What the project demonstrates
Knowing when to choose NoSQL, handling real-time features, and caring about experience (PWA, internationalisation, dark mode).