Ayush Khaitan

Ayush Khaitan

Full-Stack Developer

SRM Institute of Science and TechnologyNew Delhifull_time, internship, freelance
Open to roles
ReactMongoDBexpress.jsNode.js
MemoryVerse AI '26

MemoryVerse AI '26

### 🌌 MemoryVerse AI - Overview MemoryVerse is a personal digital identity companion that ingests scattered professional documents (PDFs, Word files, text, images, and web links) and converts them into a structured, searchable, and connected personal timeline and network graph. --- ### 🔑 Test Credentials (Pre-seeded Demo) To explore the application with complete pre-seeded timeline and relationship graph data immediately, log in with: * **Demo URL**: https://memoryverse-1-9zap.onrender.com/ * **Username**: `alex_chen` * **Password**: `password` *Note: You can also use the "Sign Up" option to register a fresh profile and upload your own certificates, resumes, or project links to test the real-time AI ingestion.* --- ### 🛠️ Core Features & Verification 1. **AI Data Ingestion (Module 1)**: Supports drag-and-drop file uploader (PDF, DOCX, TXT, and Images via Multimodal OCR) and online links (GitHub, portfolios). 2. **Intelligent Categorization (Module 2)**: Classifies documents into Projects, Skills, Certifications, Internships, Achievements, and Academics. 3. **Relationship Engine (Module 3)**: Identifies implicit skill matching and explicit AI-extracted career connections. Renders them in an interactive network graph built with custom HTML5 Canvas physics (drag, zoom, pan, inspect). 4. **Digital Journey Timeline (Module 4)**: Organizes and groups milestones chronologically by year with interactive filtering. 5. **Smart Retrieval System (Module 5)**: - Translates natural queries ("Show my Python projects") into database filters. - Grounded RAG Chatbot answers career questions with links back to original uploaded documents. --- ### ⚙️ How to Run Locally 1. Clone the repository and install dependencies: ```bash npm run setup ``` 2. Configure local environment (`server/.env`): ```env PORT=5000 MONGO_URI=mongodb://localhost:27017/memoryverse GEMINI_API_KEY=your_gemini_api_key ``` 3. Run the database seed script: ```bash node server/seed.js ``` 4. Start both the client and server concurrently: ```bash npm run dev ``` 5. Open your browser at `http://localhost:5173`.

5 media files · memoryverse-1-9zap.onrender.comView
Build for Ambula '26

Build for Ambula '26

### Project Overview Ambula Care is a full-stack, mobile-friendly healthcare web platform built using Next.js App Router (React 19, TypeScript), MongoDB (Mongoose), and Vanilla CSS (custom glassmorphic theme). It enables patients to search for doctors, choose slots from a 7-day calendar, fill out health summaries, and book appointments in under 45 seconds. It also provides doctors with a secure JWT-authenticated dashboard to log in, review patient records, log consultation diagnosis notes/prescriptions, and block slots for leave. ### Setup & Installation 1. Install node packages: npm install 2. Seed the database with mock doctors, 7 days of available slots, and doctor credentials: npx tsx src/scripts/seed.ts 3. Run the development server: npm run dev 4. Open the site locally at: http://localhost:3000 ### Test Credentials (Local & Live Site) - **Email**: doctor@ambula.com - **Password**: password123 (This account is linked to Dr. Amit Sharma) ### Concurrency Lock & Double-Booking Prevention To ensure 100% reliability under concurrent booking requests, we implemented an atomic lock mechanism at the query level instead of using heavy database transactions: - When a patient selects a slot, a temporary Booking is written in a 'pending' state. - We then run an atomic find-and-update operation on the Slot collection requiring its status to be exactly 'available': Slot.findOneAndUpdate({ _id: slotId, status: "available" }, { status: "booked", bookingId }) - If two bookings arrive simultaneously, MongoDB processes them sequentially. The first succeeds and locks the slot, while the second query matches 0 documents and returns null. - The losing thread deletes its pending booking and returns a 409 Conflict to the user, advising them to select the next slot. - You can run the concurrency test script to verify this (sends 5 simultaneous requests for the exact same slot): npx tsx src/scripts/test-concurrency.ts ### Mandatory Submission Statement "We prevented double-booking at the backend using a single-document atomic update query (`findOneAndUpdate`) matching the slot ID and requiring its status to be exactly 'available'; because single-document updates are processed sequentially and atomic by design in MongoDB, this acts as a lock that guarantees exactly one request modifies the slot state while all other concurrent requests are safely rejected."

5 media files · ambula-health-mu.vercel.appView
Zero-Dependency Student Expense Tracker & CLI Budget Monitor

Zero-Dependency Student Expense Tracker & CLI Budget Monitor

College students frequently lose track of monthly spending across UPI, canteen bills, travel, and recharges. Most existing solutions require heavy mobile apps, active internet, or complex database setups. This project solves that gap by creating a lightweight, zero-dependency Python CLI tool. It provides students with a private, offline, and instant way to log expenses, set monthly budget limits, and view visual analytics directly from their terminal with zero system configuration. Process 1)Zero-Dependency Constraint: Committed to Python's standard library so the evaluator can run the script instantly without needing pip install. 2)JSON Storage Layer: Swapped basic in-memory dictionaries for a robust local JSON file (expenses.json) to persist data across sessions and pre-populate sample data. 3)Dynamic Terminal UX: Created an interactive console loop with numeric menus. Built a auto-padding table formatter to display transactions cleanly regardless of text lengths. 4)UTF-8 Reconfiguration: Initially, Windows CMD crashed when rendering menu emojis. Resolved this by forcing stdout to reconfigure to UTF-8 encoding dynamically at launch. Results 1)100% Run Rate: Script executes successfully on any clean Python 3 environment in under 0.1 seconds. 2)Error Resilience: Validations catch all user input errors (such as text entered as expense amounts or incorrect dates) without crashing. 3)Visual Clarity: Provides immediate, glanceable spending breakdowns (e.g. [████░░░░] 35%) using pure text progress bars to guide students away from overspending. Reflection Export & Visualization: Integrate Pandas and Matplotlib optional support to export expenses directly into Excel sheets and auto-generate pie charts. Nested Tagging: Introduce sub-categories (e.g. under "Food", separate "Canteen" from "Groceries"). UPI SMS Parser: Build an optional parser that reads pasted UPI confirmation messages to automatically populate date, amount, and recipient.

3 media filesView
QueueCure: Real-time, Digital Waiting Room & Queue Manager

QueueCure: Real-time, Digital Waiting Room & Queue Manager

In India, over 76% of the 1.5 million neighbourhood clinics still run on paper token slips and verbal shouting. This creates a highly frustrating experience for both patients and staff. Patients are left waiting for 2 to 3 hours with zero visibility into their actual wait times, leading to overcrowded waiting rooms. Meanwhile, receptionists are forced to manage queue states, incoming check-ins, and cancellations entirely from memory while doctors lack a dashboard to monitor clinic pace. QueueCure was built to replace this archaic system with a synchronized, real-time, digital waiting room. Process 1) Database Schema Design: We defined a Patient schema in MongoDB, indexing by status and createdAt to guarantee rapid database queries. 2) Estimating Wait Times: Instead of relying on hardcoded estimates, we implemented a rolling average algorithm. The server tracks the duration of the last 5 completed consultations to compute a realistic speed. 3) Frictionless Control Desk: For the receptionist view, we prioritized speed. We also built buttons to let the receptionist reorder the queue or skip/cancel patients instantly. 4) Real-time Sync: We integrated Socket.io to broadcast changes. The moment a patient is added, reordered, completed, or cancelled, a queue_updated event is pushed from the Node/Express backend. All receptionist controls and patient displays receive the updated state. Results QueueCure successfully transitioned the clinic waiting room from archaic paper slips to a fully automated system: Registration Speed: Receptionists can register a patient and assign a token in under 10 seconds using the Alt+A hotkey. Sync Speed: Page updates are synchronized live across receptionist consoles and patient TV displays in less than 200ms. Estimate Accuracy: Wait times adapt dynamically to the doctor's actual pace, removing the guesswork. Robust Code: The frontend builds with zero compilation errors and the linter reports 0 warnings and 0 errors, ensuring stable staging deployment Reflection If we had more time, we would implement: SMS/WhatsApp Notifications: Integrate an API like Twilio to text patients when they are next (e.g., 3 tokens ahead), allowing them to wait nearby instead of crowding the waiting room. Multi-Doctor / Multi-Room Support: Scale the backend to route patients dynamically to multiple consultation rooms based on doctor availability. Advanced Historical Predictive Models: Replace the simple rolling average with a machine learning model that takes into account historical check-in peaks and patient consultation types.

3 media files · queuecure-1-hj42.onrender.comView

This is Ayush’s work on Wooble.

Build a profile that shows what you can do — and share it anywhere.

Build yours