Coming from a JavaScript background with 8+ years of experience, I started learning Python from scratch — and built two fully deployed, production-grade web applications along the way. This page documents what I built, what I learned, and the stack I used.
Learned Python syntax, data types, functions, and OOP coming from a JavaScript background.
Picked up FastAPI for building REST APIs — similar to Express.js but with type hints, Pydantic, and automatic docs.
Used SQLAlchemy ORM for database models and Alembic for schema migrations — the Python equivalent of Eloquent + migrations.
Containerized the first app, set up docker-compose for local and production, and automated deployment to AWS EC2 via GitHub Actions.
Applied Python's ecosystem (pypdf, pandas, openpyxl) to build a real-world document processing tool with admin dashboard.
A full-stack personal finance manager built with Python & FastAPI. Users can register, log in, and track daily expenses across 7 categories with a Bootstrap 5 admin dashboard showing monthly and yearly statistics. Fully containerized with Docker and deployed live to AWS EC2 via GitHub Actions CI/CD.
A document intelligence tool built with Python & FastAPI that uploads PDF files, extracts all URLs and email addresses from page text and clickable annotations, normalizes and compares them, then exports a color-coded Excel report (green = matching, red = not matching). Includes a full admin area with authentication, user management, and category management backed by MySQL and Alembic migrations.
Syntax, OOP, type hints, virtual environments, pip, and the Python ecosystem coming from JavaScript.
Route handlers, dependency injection, Pydantic models, request validation, Jinja2 templating, and middleware.
ORM models, relationships, sessions, and database migrations — Python's answer to Sequelize migrations.
Extracting structured data from PDFs using pypdf and pdfplumber, regex parsing, and exporting formatted Excel reports.
Dockerfile, multi-service docker-compose, production configs, Docker Hub publishing, and SSH-based EC2 deployment.
GitHub Actions pipeline: automated build, Docker Hub push, SSH into AWS EC2, pull and restart containers on every push.