1 of 7

Mentee : Rishabh Jain

Mentor : Shruti Agarwal

CODE4GovTECH 2023

Midpoint Showcase

YAUS: Frontend and Deep Linking

2 of 7

What is Yaus?

Introduction

  • Batteries included URL Shortener that is designed for speed and scalability.

  • Citizens engage with multiple types of links hosted by government departments. YAUS is a URL Shortener that allows one to create, customize, shorten and track links.

  • It is built as an open source project with a focus on leveraging the technology to governance problems by providing a better digital infrastructure to the country.

  • Key Adopters - Haryana’s Dual System of Training (DST) App to generate personalized call to action (CTA) links for industry trainers and trainees (30K users)

3 of 7

Project Description

Frontend and Deep Linking :

  1. The project aims to migrate the frontend and refactor it as per the standards.
  2. Extend the current backend to support Deep links, expiry management and other features.

Potential Impact

  • Upon successful project completion YAUS will be a good open source alternative to paid services like Bitly etc.
  • Link shortening is a common use case that comes up in many Digital products , thus other partners building for the ecosystem can leverage it to deliver better services.
  • Alternative to paid services like : https://www.branch.io/

4 of 7

HLD:

5 of 7

Milestones

  • Refactor: Migrate frontend to monorepo, resolve dependency issues.
  • RFC: Identify code quality issues and plan next steps.
  • Research: Migrate frontend to React Router v6.
  • PR (merged): Integrate frontend with monorepo.
  • RFC: Add link-expiry management.
  • Issue: Identify and fix deviations from HLD in codebase.

6 of 7

DEMO

  • Yaus vercel deployment link
  • Link-expiry feature (Video)

7 of 7

  • Importance of code quality
  • Best practices to follow while doing Code Migration
  • Making informed trade-offs while implementing features
  • Communicating proactively to clear blockers
  • Writing good documentation
  • Breaking projects in small doable tasks
  • Prioritizing features which have the maximum impact

Project Learnings