What is JagrukCorona?
Jagruk Corona is a crowdsourced platform that helps citizens report any violation of lockdown during COVID-19 pandemic in their locality. The report is crosschecked by moderators(us for now) who inform the nearest police station.
Why build it fast?
- Rising cases: As of 1st April India had 2059 Confirmed cases and exponentially rising. The time to act is now.
- Violations: Frequent news of crowding at retail shops, people going out on jogging tracks, and people quarantined leaving homes. Violations frequently made headlines.
The police were desperately trying to enforce the law while risking their lives. How could the masses help them in their job? How could they do their part?
We believed people wanted to help, but didn’t yet know how.
That’s exactly what we aimed to build, the bridge. Harish our alum and mentor was passionate to contribute to the fight against virus. He showed us that this was worth taking the shot and kept us all inspired throughout.
Harish was spearheading the team, Utkarsh handling all things tech. Priyanshu was helping us with frontend and Bhabani was our design+product guy. Boom, here we go.
I was expected to decide what features to build + all things product. This is how we did it.
Deciding whom to build for, What features to build, setting a clear vision for the team, creating a design spec document to keep everyone on the same page. These were my initial questions before I drafted a rough PRD(Product research document)
We want our users to help us report Irresponsible behavior (crowding, unhygienic practice, violation of lockdown) and highlight responsible behavior in the community to help the local police for an effective lockdown.
1. Who are we building for?
These have to be people who go out to retail shops, subscribe to WhatsApp university where videos of violations go viral in hours, or are involved in society gossip to know about people quarantined. These people get the vibe of their locality. They are informed, educated, and hence Jagruk.
2. Talking to Jagruk users
Luckily my parents + society council people were our ideal users. Talking to them gave real instances of the problem. Also, our initial target was Maharashtra(Max no. of cases) and they were ideal representation.
Civil Public — Citizens who have been asked to stay in homes and go out only for essential commodities. Examples: Kids playing in society, leisure walks, or meeting in groups, intentional acts.
Shops — Shopkeepers who are open to providing essential services.
- Fixed Shops: Shops that are serving 10–20 customers during peak hours need some crowd control
- Delivery: Shops that involve sending delivery people to interact with 10s of people everyday and hence need to be checked for keeping hygiene.
3. What features do we build?
After I firmly understood the ground realities. It was time to build features that enable the user to frictionlessly and safely report any violation
User flow: 1. Login page → 2. Landing page →3. Reporting page → 4. User Dashboard → 5. Status of the report.
The priorities for Version zero were that we wanted to build it fast, so the plan was all buttons in Landing Page(Crowd, Shop, Delivery) pointed to same reporting page. So we decided to reduce it to just 1 clear CTA(Call to action)
The User Dashboard improves credibility by showing no. of complaints on the platform but even after forwarding it to the police we couldn’t be sure when exactly would it be resolved.
One conscious choice was to use the word Inform in place of report on the CTA button as some users might be apprehensive. Inform gives a sense of contribution and positivity.
Tuning the Mockups for a clean+functional MVP
4. Design starts
We used Figma for high fidelity designs. We could collaborate/comment in real-time. Highly recommend trying out Figma. Kudos to @smbhabani who created these within hours of getting the lofi mockups.
One thing that struck me was the color scheme[Saffron+Green] gives you a sense of patriotism and Indian feel while using the app.
5. Development starts
To be fast, we had to use what we already knew. I won’t claim that we used the best stack or checked if it was scalable. We had to be scrappy. So we decided to make a Progressive web app (PWA)
Frontend: React JS, Backend: Flask server, DB: Sqlite, reports exported to Airtable, Login: Firebase. It took us about 3 days to complete this version.
6. Dry Run ~ 20 users
We wanted to do a usability test to discover UX flaws on a batch of about 20. We immensely benefited from not releasing the app to everyone as there were some glorious faults.
7. Feedback on the dry run
- Unclear value proposition: The message on WhatsApp does an equally important job of communicating what the app stands for as compared to the app itself. From which sharing channel an app is coming(Context) is equally important
2. Reporting is Non-Intuitive.
The current screen looks like
- Image to upload: Why to upload an image? Whose Image
- Address: people entering Maharashtra as MS
- Phone No: Whose no. My no. or the one’s I want to report
- Title: What is the title thing? What to write in it.
- Details: What all to include in detail?
3. Engagement— There is nothing on the app for a person who does not want to Report now. We want people to visit the app frequently so that its Top-of-the-mind whenever the chance of reporting arises.
4. Domain Recall — Link we were using:https://fast-refuge-60135.herokuapp.com/home There is no recall. Once a user wants to go back and hit the URL for a complaint. It’s very difficult to do so. A domain name should solve this.
5. Prompt to Install: Since it is a PWA. It’s basically a website. Once people click on it and if they don’t click on Add to home screen prompt. It’ll go in vain when they actually want to report. Need some mechanism to ensure prompts are repeated.
6. The message on the first screen decides a lot for the app.[Biggest drop off] It decides the future course of action. What the app stands for? Is it friendly enough. Does a user feel comfortable going forward?
8. Changing the product
We acted on the feedback to build Version 1 with these decisions.
- Info Screen: Add 1 screen before the sign up explaining what the App is and how to use it. Basically a step by step how to use the app tutorial.
- Break Down the Form filling into 2 pages. Adding tickers to explain what to fill in those boxes. Examples and Field explanations
- How do we show something for existing users who don’t want to report? To keep them from not uninstalling the app. [Engagement feature]
- Displaying user-submitted reports by querying on the dashboard page.
- Google Analytics Integration
- Prompting users to Install to the home screen on regular intervals
- Adding Info screen on Frontend and Breaking down reporting feature.
- Get 500 clicks on WhatsApp links
- Get to 150 Google signups
- First 25 genuine reports
- Connect at least 5 reports to authorities
- User feedback forms on Email for the reporting people to assess the product.
9. Conversions for version 0
We did not understand GA yet well enough to create goals and track custom views. But we made it a point to at least glance at raw data that we could make sense of in the future.
Based on the feedback received from very early user Interactions we made some significant changes to the screens
- An In-between screen that explains what the app stands for [Aim] and how you as a user can use it. [functionality] highlighting Individual contribution.
2. The main landing page now along with keeping the main functionality of the app visible provides a dashboard for nonreporting users
3. This is important because engagement means ppl will come to the app to see the dashboard and more the awareness about the app, More top-of-the-mind recall.
4. The steps for Reporting are broken down to give a more detailed explanation of what exactly the photo should be, whose address, Why asking your contact details, what details do we want to keep track of success.
5. One of the Important things we missed was, users who had reported had done some level of commitment and spent their efforts at this, they were probably the best people to advocate the idea to their network asking them to be Jagruk.
6. Hence the importance of a share with friends button after form completion.
Built, Iterated and Shipped in 10 days
Launched at https://jagrkcorona.in/
Harish | Product@Playment[YC’17] | @harishgeek
Utkarsh | Dev, IIT Guwahati |@ut_mishra
Priyanshu |Frontend Dev, IIT Guwahati |@Priyans06050136
Bhabani |UI/UX Design, IIT Guwahati | @smbhabani
Aniket | Product, IIT Guwahati |@aniketmandle11
How did the app fare?
Honestly, Not well.
We scaled it to about 300 registered users and at the same time tried to approach government officials to connect on the reporting side. Key questions we ran across that indicated it was a “good app but not a great one”
- Chicken and Egg: The police would pay attention to our tech only if we had some traction (reporting users). But at the same time even when we had our 1st report, we would have to make sure it gets resolved. We needed both at the same time.
- Distribution(The chicken): Cracking distribution is always the most difficult step for a startup. How do you get to your first 100, 500 users? Also, the crowdsourced feature works when the majority of people adopt it. Since we were sensitive on time, we did not yet have answers to these.
- Police officials (The egg): In the time of crisis we realized police is majorly focusing on operations and supplies rather than tech(Thank @kunksed) Also talking to Satish(Coronathon.in) helped realize that we had to be able to build it to ensure Scale, maintain privacy, crack distribution before we took one shot at convincing the police who were already overwhelmed to give a half baked feature a shot.
It’s already pretty long XD, so I would summarize it by saying that we learned that building the app isn’t going to be the biggest hurdle. We demonstrated that it could be done really really fast.
The main challenge is distribution/growth. That is what makes or breaks a startup. Often people aiming for product roles(like me) take for granted that the company they want to work for will have cracked distribution.
But if you are just starting up. You need to be more scrappy and a growth-oriented person. Distribution trumps product. I’m glad to have learned this now than later.
Thanks for going through this super long blog. It was meant to be descriptive to show the thought process. This is something you can pick up directly if you are just starting on your own idea. Ciao.