# Work

> Where I've worked, and what I've built along the way.

## Experience

- **Software Engineer** — [Flabs](https://flabslis.com). Jun 2026 – Present (4 mos).
- **Founding Engineer** — [Bitscale](https://bitscale.ai). Dec 2025 – Jun 2026 (6 mos).
- **Technology Analyst** — [EY Global Delivery Services](https://ey.com). Jul 2025 – Dec 2025 (5 mos).
- **Frontend Engineer** — [Swift](https://www.goswift.in). Jan 2025 – Jul 2025 (6 mos).
- **Frontend Engineer Intern** — [Zealth AI](https://www.ycombinator.com/companies/zealth). Jun 2024 – Sep 2024 (3 mos).

## Projects

### Cutline

A video editor in your browser - version control, AI on your own key, and no sign-up.

Cut by hand - it is built to be quick and obvious. Every change is a version you can go back to. And when you want it, an agent can do the tedious parts on a key you bring yourself. No account, no upload, no server.

Stack: Next.js, TypeScript.

[Live](https://cutline.heyaviral.com) · [Source](https://github.com/aviralj02/cutline)

### Pageo

Simplest way to share all your links

Spin up a **sleek personal page** in under a minute - no bloat, no unnecessary setup. Comes with **layouts**, built-in analytics, **GitHub sync** for version control, custom domains, contact forms and much more ready to go. Full control, straight out of the box.

Stack: TypeScript, Next.js, Tailwind CSS, Drizzle, PostgreSQL.

[Live](https://www.pageo.me)

### Unfold

Ask about any system, process or tool. Get its flow, step by step, go deeper.

Unfold turns questions like "How does LangChain work?" or "How does Kubernetes schedule a pod?" into an interactive flow diagram. Each step is a stage or component, each arrow is labelled with what passes along it, and the whole thing reads top to bottom. Click any step to see what it receives, what it hands off and how it works. You can also break a step down into its own sub-flow.

Stack: Next.js, TypeScript, Langchain, Tailwind CSS, React Flow.

[Live](https://unfold.heyaviral.com) · [Source](https://github.com/aviralj02/unfold)

### Baton

Your context, independent of the AI you’re using.

You spend an hour with an AI getting somewhere real. Then the chat ends, and the next one starts from nothing. Baton keeps what the session learned, and hands it to whatever you open next.

Stack: Tauri, React.js, TypeScript, Rust.

[Live](https://baton.heyaviral.com) · [Source](https://github.com/aviralj02/baton)

### Interface Skills

UI patterns teach how interfaces look. These 12 agent skills teach how they behave.

Agent skills for how interfaces behave: states, failures, flows, focus, and recovery — not just how they look. Each skill produces a concrete artifact. Install with npx skills or as a Claude Code plugin.

Stack: skills.

[Live](https://skills.heyaviral.com) · [Source](https://github.com/aviralj02/interface-skills)

### rbac-ui

A lightweight, grammar-based rbac framework for frontend apps

A **zero-dependency rbac framework** built for the frontend — permissions are structured as a tree, so evaluation stays fast no matter how complex your rules get. Uses a clean, readable permission syntax with support for **nested rules and negation** right out of the box. Fully backend-agnostic, so it fits into whatever stack you're already running. Ships with **React utilities** that give frontend teams a predictable, flexible way to wire up access control without reinventing it every project.

Stack: React.js, TypeScript.

[Live](https://www.rbacui.com) · [Source](https://github.com/aviralj02/rbac-ui)

### Movie Ticketing Microservice

A microservices based movie ticketing system

A modular movie ticket booking system built on **microservices** - movies, showtimes, and bookings each live in their own service so the whole thing scales without turning into a mess. JWT handles auth, with **role-based access** keeping ADMIN and USER flows cleanly separated. A central **API Gateway** takes care of routing, while **Eureka** and **Feign** handle service discovery and inter-service communication. Loosely coupled throughout, with centralized error handling baked in. Stack is **Java 17, Spring Boot, Spring Security, and MySQL**.

Stack: Java, Spring Boot, Spring Security, Hibernate, MySQL.

[Source](https://github.com/aviralj02/movie-ticketing-microservice)

### Next Form Builder

A simple form builder to publish forms and collect responses.

Create **customizable forms** with multiple question types, publish instantly, and start collecting responses — simple as that.

Stack: Next.js, TypeScript, PostgreSQL, Drizzle.

[Live](https://next-form-builder.vercel.app) · [Source](https://github.com/aviralj02/next-form-builder)

### React Color Strip

A minimal horizontal color picker strip component for React

A **customizable color strip component** for React - supports both **Hue and Shade modes** with drag, keyboard, and full accessibility built in.

Stack: TypeScript, React.js, CSS.

[Live](https://www.npmjs.com/package/react-color-strip) · [Source](https://github.com/aviralj02/react-color-strip)

### useStateMate

VSCode Extension for your React States

Transforms selected text into a `useState` hook instantly - **JavaScript and TypeScript** both covered. Infers types from your selection, suggests setter names as you type, and keeps React state management from slowing you down.

Stack: TypeScript.

[Live](https://open-vsx.org/extension/aviralj02/usestatemate) · [Source](https://github.com/aviralj02/useStateMate)

### docu-inquire

Engage in conversational interactions with PDF documents.

Chat with your **PDF documents** using LLMs - powered by **LangChain** for document processing, **Pinecone** for semantic search, and MySQL for app data. Built on **Next.js and TypeScript**, with Prisma handling the database layer and UploadThing managing file uploads. Smooth, scalable, and straightforward to use.

Stack: TypeScript, Next.js, tRPC, Prisma, MySQL, Tailwind CSS, Langchain.

[Live](https://docu-inquire.vercel.app/) · [Source](https://github.com/aviralj02/docu-inquire)

---

HTML version: https://heyaviral.com/work · Site overview for agents: https://heyaviral.com/llms.txt
