hey there — Full-Stack Developer

I'm Vansh. I learn by
building things.

I got into coding because I wanted to understand how video games work. Now, I build web apps with Django and Flask, create Linux TUIs, and write scripts to automate my daily tasks.

Python Django, Flask, Pygame
Linux Bash, TUIs, Claude CLI
Hardware Arduino tinkering
Vansh Poonia, full-stack developer
open to work

A developer who cares about the whole product.

I'm a full-stack developer who enjoys turning ideas into fast, reliable web apps — from database schema design all the way to a polished, accessible interface.

I build with Python, Django, and Vanilla JavaScript and care deeply about clean architecture, secure authentication, and shipping to production.

Full-Stack Developer

Freelance & Personal Projects

2023 — Present

Web Development Bootcamp

The Web Developer Course

2023

Everything I reach for on the job.

Languages & Core

PythonPython JavaScriptJavaScript KotlinKotlin SQLSQL HTMLHTML CSSCSS

Backend & APIs

FlaskFlask DjangoDjango RESTREST APIs BeautifulSoupBeautifulSoup

Frontend & Mobile

BootstrapBootstrap ExpoExpo

Databases & Cloud

SQLiteSQLite FirebaseFirebase RenderRender

Tooling & OS

GitGit & GitHub LinuxLinux & NixOS BashShell / Bash NeovimNeovim & tmux VS CodeVS Code

AI & GenAI

GeminiGoogle Gemini API OllamaOllama ClaudeClaude CLI

Things I've actually shipped.

Mobile App — 2026

AucineBook (TicketBookApp)

A full-featured movie ticketing app. Includes AI recommendations (Gemini), interactive seat selection, a community feed, and real-time Firebase integration.

ExpoFirebaseGemini AI

↓ scroll for technical breakdown ↓

Architecture & Frameworks

Frontend (Expo)
Built as a cross-platform Progressive Web App. Implements interactive UI components like a 2D seat selection grid using array-based state matrices to track booked vs. available seats in real-time.
Backend (Firebase Firestore)
Uses Firebase Firestore for NoSQL data syncing. When a user books a seat, a transaction is securely written to the cloud, instantly reflecting the updated seat map across all connected clients via WebSocket listeners.
AI Integration (Google Gemini API)
Leverages the @google/generative-ai SDK. User preferences and watch history are fed into the LLM as context prompts via REST API POST requests to dynamically generate highly personalized, conversational movie recommendations.

Data Science & Analysis

Aim & Sensitivity Analysis

A data science project analyzing the relationship between mouse sensitivity, FOV, crosshair settings, and aim improvement using data from KovaaK's.

PythonPandasData Science

↓ scroll for more details ↓

Key Findings & Mathematical Concepts

  • 1. Multiple Linear Regression & Polynomials
    Initially, sensitivity had a U-shaped residual error. By squaring the sensitivity parameter (sens²), we modeled the non-linear curve, mathematically proving that TTK improves up to ~89.7 cm/360 before dropping off.
  • 2. Partial F-Tests & Adjusted R²
    Using an F-Test, we proved that FOV and Crosshair Scale together have a statistically significant impact on aim. The Adjusted R² metric penalized adding useless noise variables, confirming our final 4-term model was mathematically optimal.
  • 3. Multicollinearity (VIF) & Leverage Outliers
    Testing a 200 cm/360 sensitivity run acted as a massive leverage outlier, breaking the linear model. We also observed a high Variance Inflation Factor (VIF = 24) between sens and sens², which inflated standard errors but maintained high predictive accuracy.
R2 Ladder Graph

Model Performance Ladder (R² vs Adjusted R²)

TTK Curve Graph

Polynomial Fit: Time-to-Kill vs Sensitivity

Arduino Weather Monitor

Hardware — Arduino

Weather Monitor

A physical weather monitoring station built from scratch using Arduino microcontrollers to track and display real-time environmental data.

ArduinoC++Sensors

↓ scroll for technical breakdown ↓

Hardware Integration & Logic

Microcontroller (Arduino Uno)
Programmed in embedded C++. The core loop() runs continuously, triggering digital pin reads at specific clock intervals (using millis() instead of delay() to prevent processor blocking).
Sensor Data Parsing (DHT11)
Interfaces with a DHT sensor. The C++ code reads raw analog pulse widths, performs bitwise shifting to convert the pulses into binary data, and calculates precise Temperature and Humidity floats.
LCD Display (I2C Protocol)
Instead of messy parallel wiring, it utilizes the I2C serial protocol (Wire.h). This compresses the display output into just two pins (SDA/SCL), pushing string-formatted byte arrays to an external 16x2 LCD module.
vansh@ai-tui: ~
vansh@ai-tui:~$ lss
bash: lss: command not found
AI Assistant

It looks like you made a typo. Did you mean ls?

The ls command is used to list all files and directories in your current folder.

vansh@ai-tui:~$ ask "write a python script to ping a website"
Ollama

Generating script via local LLM...

import os
hostname = "google.com"
response = os.system("ping -c 1 " + hostname)
if response == 0:
    print(hostname, 'is up!')
else:
    print(hostname, 'is down!')
vansh@ai-tui:~$

Linux & Local AI

AI-Powered CLI Assistant

A Terminal User Interface (TUI) designed to help beginners learn Linux. It catches mistyped commands, provides educational explanations, and uses local AI (Ollama) or external APIs to instantly generate automation scripts from natural language queries.

PythonOllamaBashTUI

↓ scroll for technical breakdown ↓

System Architecture

Terminal User Interface (TUI)
Built in Python using advanced terminal rendering libraries (like Textual/Rich). It takes over the standard console to draw interactive borders, syntax-highlighted code blocks, and dynamic input fields.
Local AI Integration (Ollama)
When a user types an ask command, Python intercepts it and communicates locally with an Ollama endpoint (running Llama 3 or similar). This allows code generation securely on-device without relying on paid cloud APIs.
Subprocess Command Execution
Python utilizes the subprocess module to pipe safe bash commands directly to the underlying Linux OS. It captures `stdout` and `stderr` streams, allowing the AI to read errors and automatically suggest corrections for mistyped commands.
Catch The Book Game Background

Game Dev — Pygame

Catch The Book

A 2D arcade game built in Python using Pygame. The player must dodge distractions (mobiles) and catch books to score points! Showcases fundamental game loops, rendering, collision detection, and custom audio assets.

PythonPygameGame Loop

↓ scroll for technical breakdown ↓

Game Engine Mechanics

The Game Loop
The core of the game is a continuous while running: loop. It processes user events (keyboard input), updates object coordinates (gravity/movement), and renders the new frame 60 times per second using pygame.time.Clock().
Collision Detection
Utilizes pygame.Rect.colliderect(). Every sprite (the player, the books, the falling mobiles) is mapped to an invisible bounding box. If the player's box intersects with a book's box, score increments; if it intersects with a mobile, a life is lost.
Audio Processing
Game state events trigger specific audio assets via pygame.mixer. It runs an asynchronous background music track (ftd_background_music.wav) while instantly layering sound effects over top (bonus.wav, miss_sound.wav) upon collisions.
root@kali: ~/security
root@kali:~/security# ./arp_detect.sh
ARP Spoofing Detection Started...
Press CTRL+C to stop
Monitoring ARP cache via `ip neigh`...
[ALERT] ARP Spoofing Detected!
IP Address : 192.168.1.1
Original MAC : aa:bb:cc:dd:ee:ff
Fake MAC : 11:22:33:44:55:66
-----------------------------
root@kali:~/security#

Cybersecurity & Networking

ARP Spoofing Detection System

A lightweight Bash script engineered for Kali Linux that continuously monitors Layer 2 network traffic. By analyzing the ARP cache using ip neigh, it automatically detects and alerts on anomalous IP-to-MAC mappings, preventing Man-in-the-Middle (MITM) attacks and session hijacking.

BashKali LinuxCybersecurityNetworking

↓ scroll for visual explanation ↓

How ARP Spoofing Works

Normal ARP Resolution

1. Normal Network: Devices broadcast "Who is 192.168.0.1?" and the router responds with its genuine MAC address. The PC caches this safely.

ARP Spoofing Attack

2. The Attack (MITM): An attacker floods the network with fake ARP replies, maliciously tricking the PC into mapping the router's IP to the attacker's MAC address.

Use W / S to scroll vertically

Use A / D to switch projects

Always learning.

Python Certificate

University of Michigan / Coursera

Programming for Everybody (Python)

2025

Generative AI Certificate

IBM / Coursera

Generative AI: Intro and Applications

2025

Software Engineering Certificate

IBM / Coursera

Introduction to Software Engineering

2025

Frontend Certificate

Meta / Coursera

Introduction to Front-End Development

2025

Backend Certificate

Meta / Coursera

Introduction to Back-End Development

2026

Programming Foundations Certificate

Duke University / Coursera

Programming Foundations with JS, HTML, CSS

2026

Data Science Profession Certificate

University of London / Coursera

The Data Science Profession

2026

Asymmetric Cryptography Certificate

U. of Colorado / Coursera

Asymmetric Cryptography

2026

Let's build something together.

I'm currently open to new opportunities. Whether you have a project in mind, a question, or just want to say hi — my inbox is always open!