Giter Club home page Giter Club logo

covidshots's Introduction

Looking for contributors !!!

UX, QA, Dev, Misc

Join us

Use this website to find free vaccine slots, Set alarms

Search across multiple districts (and states) at once

Sort data (Highest number of available vaccines on top)

Filter results

Monitor vaccine availability continuously (Auto refresh)

Auto refresh

View availability statistics

Set audio alarm/ Receive notifications

Disadvantages over Cowin

1. Cannot be used to book slots. For that you will have to use Cowin, et al. (Work in progress? Please join as a contributor)

Development

Building locally

  1. Clone this repo
  2. Open git bash (search google for git bash to download)
  3. run bundle install
  4. run jekyll serve
  5. The site will be available at http://localhost:4000

More info : Building your site locally

Contributing

  1. Fork this repo to you github profile
  2. Make changes in your forked version of this repo. You can make as many commits as you want
  3. Raise a pull request so that this repo will get notified about your changes, and your changes can be merged with this site.

Mock API

Uisng mock API can help in testing. When mock API is in use the data is fetched from our ngrok API instead of cowin servers.

  1. Enable usage of mock API Open developer settings in chrome, and run the following funtion.
MockApi.IsMockEnabled()
  1. Disable
MockApi.DisableMockApi()

Credits

Business vector created by pikisuperstar - www.freepik.com

covidshots's People

Contributors

atppatil18 avatar lihas avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

covidshots's Issues

Booking.

Apart from autobook user should be able to book by clicking cells in table as in cowin portal

Add some indicator that auto book is running/ booked

Running - A loading sign, a message saying "Looking for slots" or something to indicate that auto refresh is running in the background
Booked - We only see a notification on the top right which disappears. Can we also have a message saying "Slot booked for

Can we use the space on the yellow band on top to show such messages?

When a new mobile number if used for booking the list of users to autobook form previous mobile is persisted

Because of this our code tries to find user details from g_persistent_vars.g_booking_state_users_details_get().
We are not clearing user details so im not sure why his would be an issue. would have to debug more.
The essence of the issue is that once a new mobile number is used it causes issues with older cached data.
We can fix this issue in one of the two ways.

  1. Make details stored with mobile number, ie. objects referenced with mobile numbers
  2. Clear mobile number specific info when a new mobile number is seen.

2 is easier to implement and will go with it.

Remove get districts/get states button.

The districts should be fetched as soon as states drop down is closed. The vaccine centres should be fetched as soon as the districts drop down is closed.

This will improve UI and will get rid of the following bug.
Bug ; Select delhi in states, click get districts. Go back to states drop down and remove delhi and select goa. Dont click get districts in this case. Just go to districts drop down. You will see that it lists districts from delhi even though the states dropdown only has goa and doesn't have delhi.

Alarm/notification

Show notification and sound alarm when new vaccine slots become available

Handle table cells with multiple sessions

When we have multiple sessions for the same day for a centre our side doesn't handle it.
For example for the sample centre we can have following sessions at the same time

  1. covishield 18-45
  2. covishield 45+
  3. covaxin 18-45
  4. covaxin 45+

Our site was coded with the assumption of only a single session for a centre for a given day.

eg. Cowin shows 141+50 == 191 vaccines for day3 below.
image
Or site only shows 50 ie. data from one of the sessions, not a cumulative of both.
image

Fix sorting

$.fn.dataTable.ext.type.order in index.js
handles sorting.
Now with new ui (issues #22, and #14) the data structures have changed.
So this no longer works, and has been commented out.

Handle Second Vaccine Scenarios

  1. Show which vaccine was booked in the users table
  2. Mandate users to book the same vaccine for the second dose as they did for the first.

Auto book dialog- Mobile- Scroll behaves badly on mobile

  1. Open the Auto Book dialog
  2. Enter Cowin credentials
  3. Open Users and Bookings tabs
  4. Try scrolling up and down and sideways(on users)
    -- Scroll doesn't work
  5. Close the dialog
  6. Open the dialog again after a couple of minutes
    -- The scroll works

Compare with existing solutions

  • getjab, etc. In what way they are better, our strengths, what features we can borrow.
  1. List existing solutions Indian users have access to.
  2. List unique features of each
  3. List things/ideas we should borrow
  4. Performance testing - check if our site is faster when notifying a user about new slots or if other solutions are. I believe our site would be the fastest since the polling is done on every user's computer rather than on a central server. Hence delay between detecting new slots, and notifying all users is not there. The cowin API also places limits on the number of requests in a given period of time. Hence a central server is a bad idea.

Data analytics on VPS

  • Time-wise vaccine availability charts for selected districts
  • Predict slot booking chances

Change auto book button behaviour

  1. Click the Auto Book button (not settings button)
  2. Log in
  3. Enable auto book for a user
  4. Close the dialog

Expected Result: The Auto book button has been clicked and there is some indication that auto book is running

Actual Result: The auto book button isn't clicked so the user has to click it again (and if the user is me, she assumed she has clicked it and moves on and expects it to work)

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.