alexruiz.net

/home

Alex builds simple, custom tools.

5 years of production Django apps for the real estate industry - including an awards platform that's already collected 700+ nominations.

$ python manage.py runserver

Watching for file changes with StatReloader

Starting development server at http://127.0.0.1:8000/

View projects Get in touch

/projects

Selected work

/projects/lockbox-loaner-tool

Lockbox Loaner Management Tool

A Django app that replaced a manual spreadsheet process, pulling live MLS listing data via RETS to track lockbox loans automatically — from request to return, across 1,200+ agents and 6,000+ loans.

Django Pandas Postgresql RETS SQLAlchemy

/projects/nominations-platform

Awards Management Tool

A custom nominations platform that replaced a $7,000/year third-party service, pulling listing and Realtor data straight from the MLS and association records to cut manual work out of an annual award program.

Alpine JS Django HTMX Postgresql RESO Web API Tailwind CSS

/about

How I got here

Self-taught, mostly by shipping things and fixing what broke - for local Realtor associations and MLSs here in Hawaii.

2026

Launch of Aloha Aina Realtor Awards Website

I built the website for the Aloha Aina Realtor Awards to replace a third-party nomination platform whose cost had grown from $1,200 to $7,000 annually, while also solving the platform's clunky user experience - clients previously had to create an account and manually enter transaction details for every nomination. The new system integrates an MLS data feed with our Realtor association database, so clients simply search for their Realtor by name and select the matching transaction from a list; the site automatically determines the Realtor's role (listing or buying side) and the client's role (buyer or seller), pulling in the transaction data without any manual entry. On submission, the client, Realtor, and awards admin each receive a tailored confirmation email. Admins get a dashboard to track nomination volume, flag unverified or off-MLS transactions, manage nomination statuses, and surface duplicates, along with export tools for redacted and unredacted nomination data (PDF) and full nomination lists (Excel). Built with Django, HTMX, Alpine.js, and Tailwind CSS, with SQLAlchemy and Pandas handling backend data processing, the site has collected 767 nominations since launching in February.

2022

Launched HBRRates.com

I built HBRRates.com as a Django web application to collect weekly mortgage rate submissions from 10-15 participating lenders, replacing a PDF-based submission process (itself a replacement for an earlier online tool that was lost during a website redesign). Each Wednesday, lenders submit their rates through the site; from there, I publish the results to hicentral.com and forward them to our local newspaper's contact for inclusion in their Sunday paper. A cron job resets the survey every Sunday, keeping the weekly cycle running automatically. The application has been in continuous use since launch, reliably supporting a recurring publishing process for both our organization and the newspaper.

2022

Launched PewPew Reader

When our trade show check-in provider announced they were discontinuing their smart card reader service, I was asked to find a replacement. Available SaaS options were expensive and required new hardware and an internet connection, which didn't work for us - our events needed to run offline (internet access at venues was costly) on existing 2010-era netbooks running Windows 7. I built a lightweight desktop app in PyGUI that let staff scan attendee QR codes for door prize entries, randomly select winners, and export contact information to CSV, with barcode scanners as the only new hardware purchase. The app - jokingly named "PewPew Reader" after an offhand comment at a staff meeting - was used by 45 trade show vendors at each event across 3 trade shows, before the original provider reinstated their service and our organization shifted to centralized check-in.

2021

Launched MLSLockboxes.com

After evaluating third-party options that didn't fit our needs, I proposed and built a Django web application to replace a manual, spreadsheet-based process for our lockbox loaner program. The app connects to an MLS data feed to manage lockbox requests and keep listing and agent data in sync, while tracking overdue lockboxes and usage across the program. Five years later, it's still in daily use by our staff, having processed over 6,200 requests from more than 1,200 MLS users across 308 brokerages, with lockboxes distributed through 48 satellite locations.

2019

Began using Python to work with MLS data

Started writing Python scripts to pull data from APIs, CSVs, and Excel files into unified reports - replacing a manual, spreadsheet-heavy process.