Uber Reporter
What is Uber Reporter:
Uber Reporter is a desktop application that helps users efficiently manage their Uber trip receipts and generate professional travel reports. It solves the problem of manually downloading individual receipts from Uber's website by allowing batch downloads across any date range. Users can categorize their trips as work or personal, create custom location aliases (naming an address "Home" or "Office"), and generate formatted PDF reports suitable for expense reimbursement. The tool is particularly valuable for business travelers, freelancers, and anyone who needs organized trip records for accounting purposes.
Download trips by date.
View trips via address and time.
Sort trips between work and personal.
Personal trip filter.
Personal trip metrics.
Work trip filter.
Work trip metrics.
Auto generated work expense report.
Auto generated personal expense report.
Security enforced.
Uber authorization layer.
Inline address aliasing.
Config driven address aliasing.
Tech Stack:
Uber Reporter is built with Electron 27 as a cross-platform desktop application. The frontend uses React 18.2 bundled via Webpack 5 with Babel transpilation. The backend (Electron main process) handles authentication and integration with Uber's internal GraphQL API. PDF receipts are downloaded and can be merged using pdf-lib, while custom reports are generated using pdfkit. The app uses a local file-based caching system stored in the user's home directory to avoid redundant API calls. All communication between the renderer and main process uses Electron's IPC with context isolation enabled for security. The application can be built for macOS (Intel and Apple Silicon), Windows, and Linux using electron-builder.
Disclosure: This project was built purely for personal use and education. The application and its systems are not deployed for public use, however code access can be requested.