Portfolio.

Production systems running on infrastructure I configure, secure, and maintain — including automated backups, system monitoring, security hardening, and operational documentation. Application code developed collaboratively with AI; server infrastructure managed by hand.

Bo's Third Brew

AeroPress Recipes & Timer · bobrew.dev

A production web application running on self-managed infrastructure — Ubuntu server, nginx reverse proxy, PostgreSQL database, automated backups, and system health monitoring. Serves 56 curated AeroPress coffee recipes with a guided brew timer. Named after my grandfather — Bo was Eber the first, I'm the third. Application code developed collaboratively with AI. I defined requirements, made architectural decisions, and manage all server infrastructure, deployment, and ongoing maintenance.

56 curated recipes with guided brew timer
User accounts with JWT authentication
Favorites, ratings, and tasting notes
Custom recipe builder
Data sync across devices
Automated backups and health monitoring
Responsive design for mobile and desktop
JSON export/import for local backups
Infrastructure
Ubuntu 24.04 DigitalOcean nginx Let's Encrypt SSL UFW Firewall Fail2ban systemd
Security & Monitoring
SSH Key-Only Auth Rate Limiting Helmet Headers CORS Input Validation Automated Health Checks Email Alerts
Database
PostgreSQL pg_dump Backups 30-day Retention
Application Services
Node.js Express Service Endpoints User Authentication bcrypt
Frontend
React HTML / CSS Responsive UI
☕ Try the App →

Bo's Pour Over

Pour Over Recipes & Timer · bobrew.dev/pourover

Configured as a companion to the AeroPress app, expanding the platform to pour-over brewing. 20 curated recipes organized by brewer — V60, Chemex, Kalita Wave, and Melitta. Deployed with a cleaner 3-file architecture, separate CSS, and external JSON recipe data. Shares user accounts and database infrastructure with the AeroPress app while maintaining separate data tables. Application code developed collaboratively with AI.

20 curated recipes across 4 brewers
Step-by-step timer with water tracking
Ratio calculations and bloom animations
Custom recipe builder
Shared auth with separate po_* database tables
Responsive design with brewer-specific icons
What's Different
3-File Architecture External CSS JSON Recipe Data River Stone Palette Separate po_* Tables Separate Service Endpoints
☕ Try the App →

Job Search Tracker

Application Pipeline Manager

A mobile-first job application tracker built for my own IT job search, running on the same production infrastructure. Pipeline dashboard, status timeline with history, activity notes, PDF export formatted for my reMarkable Paper Pro, and color-coded tags for quick filtering. Restricted to my account only via server-side middleware. Application code developed collaboratively with AI — I designed the workflow around how I actually track applications, made all architectural decisions, and manage the deployment.

Pipeline dashboard with filter chips
Search, sort, and quick-add from app bar
Detail view with status timeline and notes
Follow-up reminders with overdue alerts
PDF weekly review export for reMarkable
Duplicate detection and color-coded tags
Delete confirmation and archive sections
Shared authentication across all services
Frontend
Vanilla JavaScript SPA HTML / CSS jsPDF Mobile-first Design
Application Services
Node.js Express 8 Service Endpoints User Authentication Access Restriction Middleware
Database
PostgreSQL 3 Related Tables Status History Tracking

reMarkable Templates

PDF Generator for E-Ink Tablets · bobrew.dev/templates

A client-side PDF generator that produces printable templates optimized for my reMarkable Paper Pro. Configurable page sizes, multi-page support, and layouts designed with dotted lines for handwritten annotations. No server required — everything generates in the browser. Developed collaboratively with AI to solve a practical need: having structured planning pages that work well on e-ink.

Daily Planner with schedule, priorities, and habits
Job Search template with detail and overview layouts
Configurable page count (1/3/5/10 pages)
Multiple page sizes including reMarkable Pro native
Left-hand and right-hand margin options
Live canvas preview before download
Technology
Vanilla JavaScript jsPDF Canvas API Modular JS Architecture
Design
E-Ink Optimized Morning Light Palette Responsive UI No Backend Required
📄 Try the Generator →