Backend Build for Tour App
Budget / Salary€8–30
TypeFreelance project
LocationRemote
Posted2 hours ago
I have an audio-guided walking-tour web app that currently lives as a fully static bundle (HTML, CSS, vanilla JS). It’s time to give it a proper server side.
What I need you to do
• Authentication
– Add email registration and login, Google social login, and a standard “forgot password” flow.
– The role table already lists user, certified guide and admin; for now only the user role has to log in, but the schema must stay expandable.
• Data migration & API
– Take the existing itinerary JSON files and move them into a real database. I’m happy with MySQL, PostgreSQL or MongoDB—choose the one you feel is most suitable and tell me why.
– Expose a clean endpoint (REST is fine) that serves the itineraries exactly as the front-end is consuming them today, so the existing fetch calls keep working with little or no change.
Acceptance criteria
1. A new user can sign up with email/password, confirm the email, log in, log out, request a password reset, and sign in with Google.
2. Auth tokens protect the itinerary endpoint; unauthenticated calls return 401.
3. The endpoint returns the same JSON structure the static files provide right now.
4. Clear README covering environment variables, database setup, seeding the itineraries, and a one-command deploy to a common host (Render, DigitalOcean, Heroku, etc.).
Keep the code clean, documented, and ready for future phases where certified guides and admins come online.
What I need you to do
• Authentication
– Add email registration and login, Google social login, and a standard “forgot password” flow.
– The role table already lists user, certified guide and admin; for now only the user role has to log in, but the schema must stay expandable.
• Data migration & API
– Take the existing itinerary JSON files and move them into a real database. I’m happy with MySQL, PostgreSQL or MongoDB—choose the one you feel is most suitable and tell me why.
– Expose a clean endpoint (REST is fine) that serves the itineraries exactly as the front-end is consuming them today, so the existing fetch calls keep working with little or no change.
Acceptance criteria
1. A new user can sign up with email/password, confirm the email, log in, log out, request a password reset, and sign in with Google.
2. Auth tokens protect the itinerary endpoint; unauthenticated calls return 401.
3. The endpoint returns the same JSON structure the static files provide right now.
4. Clear README covering environment variables, database setup, seeding the itineraries, and a one-command deploy to a common host (Render, DigitalOcean, Heroku, etc.).
Keep the code clean, documented, and ready for future phases where certified guides and admins come online.
Apply on Freelancer →
Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.