Giter Site home page Giter Site logo

simaob / posso-ir-api Goto Github PK

View Code? Open in Web Editor NEW
4.0 4.0 3.0 20 MB

Allowing people to track the state of queues to supermarkets, pharmacies, and other places. To avoid crowds in a time where self-isolation is key. #stayhome!

Home Page: https://www.posso-ir.com

License: MIT License

Ruby 64.70% JavaScript 10.76% CSS 1.40% HTML 22.98% Shell 0.16%
covid-19

posso-ir-api's Introduction

Hi there 👋

posso-ir-api's People

Contributors

dependabot[bot] avatar hugopeixoto avatar santostiago avatar simaob avatar sorodrigo avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

posso-ir-api's Issues

Update sign up page to present the user with two possible routes

Currently when users access the sign up page they can only register as Collaborators. To improve store owner engagement we want to change this page to present two routes to the users: Collaborator and Store Owner;

We could do this by just enabling the role dropdown to be used by the users, but to I'm wondering if it might be nicer to have an initial step where we present the two possibilities to users and what each of them allows them to do, see the sketch with my idea.

Screenshot 2020-04-25 at 17 29 08

This adds an extra step, but it allows users to know what they are registering to do. And makes the register forms a little more simple as we don't need to check the value of the role chosen and change things based on that.

For the store owners form we need to allow the users to pick the stores they want to manage, as we already have, or in a nicer element, but we need to ensure that this connection is not active until we validate it. So we need to add a state to the user_stores table.

With this said, I'm now wondering if we really want to be validating all the store owners that might appear by us opening this up... thoughts?

List of (potential) tasks

  • Update register page to allow the two paths;
  • Move the current collaborator sign up to a separate route;
  • Create a new store owner sign up page with the possibility of selecting stores to manage;
  • Ensure that stores assigned to newly created store owners are not immediately available for them to report on, these need to be approved;
  • Email presence needs to be mandatory for Store Owners

As an API client I want to receive only the 100 closest stores from where I am located

Currently the /api/v1/stores?filter[location]=lat,long request will return up to 300 stores that are in a 5km radius from the provided lat long. This is a bit overwhelming for the applications to handle and probably to much for the users to parse through. So we are thinking of reducing the size of the response and return only the 100 stores that are close to the provided location.

If the user wants to see more locations they could move the map around and request for a slightly different location.

There are some potential concerns with discoverability, as in very populated places the users might not get the full list of stores. Some options are for the application to pass the store_type filter to the backend, for us to play a bit with the total number of stores returned, or in a future iteration paginate the results.

For now let's go with the backend change alone.

Install redis

Install redis and make the jsonapi resources use it

Update home page to explain what is it about, how can people use the app and how they can contribute

Currently we have a beautiful welcome message and when logged in as an admin there is a dashboard with some metrics, we should update this to explain a bit what this site is about and how can people use the application and contribute to it:

  • as users of the app;
  • as collaborators for data additions and editing;
  • as store owners managing their stores and reporting on their stores queues;

There are no designs for this, so whoever picks it up can come up with something. We are using TwitterBootstrap so maybe using some cards and some images or just some cards with text might be good. Don't forget that it needs to be localised and we can get translations from some of the other volunteers.

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.