GithubHelp home page GithubHelp logo

stevennooijen / stairwaytotravel-frontend Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 7.93 MB

Stairway to Travel offers personalised travel recommendations that help you shape unique itineraries. This repository contains the React frontend code for the website's user interface. It is deployed using Google Firebase

Home Page: https://stairwaytotravel.com

License: MIT License

Shell 0.05% HTML 1.37% JavaScript 98.45% CSS 0.12%
create-react-app firebase google-cloud google-firebase javascript material-ui react reactjs

stairwaytotravel-frontend's People

Contributors

stevennooijen avatar

Stargazers

 avatar  avatar

Watchers

 avatar

stairwaytotravel-frontend's Issues

Enable "search while moving" on mapview

After moving the map you have to click "search here" again. It would be more user friendly if you can toggle on/off a "search while move" functionality such that you can more interactively explore the map.

Preserve search query and likes upon refresh

As a user, I want my search query and liked places to remain visible when I refresh the page, so that I don't have to start all over again after a page refresh.

This could probably be resolved by storing session history in the session storage and fetching it from there again upon refresh.

Add weather data to place page

The weather data is already available in the backend, we just need to visualise it to the place page.

A bit of backend work is still required to adjust the API for fetching weather data.

Add a filter for activities

Currently filtering of destinations can only be done on the main activity groups Nature, Culture, Active, City and Beach.

However, people would also like to be able to filter on specific activity types like "surfing" or "mountains".

This issue is about creating the filters in the frontend. To make the functionality work, the backend API will also need to be adjusted to facilitate this type of filtering.

Add budget data to a place

Data needs to be gathered first. Goal, be able to know cost of living for a place.

For example, Google reports:
"3-star hotel averaging €35, 5-star averaging €85"

Add filter for budget

As a user, I would like to filter places based on cost of living / required budget.

Add filter for weather

Dependency: issue number #6

Having the weather data available for each place, users would like to filter on weather by month to select places with their preferred weather conditions for their holiday.

Add share buttons on place pages

As a user, I want to be able to easily share a place with my friends so that I can share my enthusiasm for a place with fellow travellers.

Be able to share a bucketlist

As a user, I want to be able to share my bucketlist/itinerary, so that I can enthousiast my fellow travellers about the trip that I hope to make.

Currently people receive the bucketlist/itinerary by email after checkout. This feature would enable people to share earlier using WhatsApp or other media and link straight back to the website.

Add top activities to do to place page

When looking at a place, users would like to know more about what can be done at that place.

We could display top items to do using APIs with for example Airbnb experiences, Tripadvisor, ...

Allow users to login and create profiles

As a user, I want to login and save my likes and searches in my profile so that I can revisit what I looked at later.

Currently users have to checkout to receive an email with their bucketlist. We don't store any data from them, so each time a user comes to the platform, they will have to start all over again. Users have said they would like to build up different bucketlists, like one for wintersport, one for the summer, one for diving holidays, etc...

Improve displayed map markers

Currently 3 different icons are used for displaying the place type on the map depending on Wikivoyage placeType and placeStatus. This could be improved in something more sensible, possibly connected to the user (activity) search query.

{props.placeType === 'park' ? (
<NatureIcon className={classes.markerStyle} />
) : ['guide', 'star'].includes(props.placeStatus) ? (
<LocationCityIcon className={classes.markerStyle} />
) : (
<PlaceIcon className={classes.markerStyle} />
)}

Add a filter for place popularity

Users often requested to filter based on place popularity. E.g. what are the must-see places, and which are only visited by locals?

Such a filter could be based on Wikivoyage page views per place, to give a first estimation on what is popular and what not. Data will need to be analysed in the backend before such a feature could be added.

Preserve ordering of the stream

As a user, I expect the ordering of places in the stream to be the same when I click on a place and then go back so that I am not confused about which places I have already watched and which not.

Comment of a user: "What is a little bit annoying is that when you open a destination and then press the back button, the list is shuffled again."

Cause: the API returns destinations with a certain order, we are just losing that now with the async call in the frontend.

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.