Rates API Open Source
Rates API is an open source project that provides up-to-date lending rates from New Zealand financial institutions. The entire codebase is available on GitHub at github.com/simonbetton/ratesapi.nz, allowing anyone to contribute, customize, or deploy their own instance.Why Open Source?
We believe in the power of open source to:- Promote Transparency: Open code means anyone can see how the data is collected and processed
- Encourage Collaboration: Developers can contribute improvements and new features
- Ensure Longevity: The project isn’t dependent on a single maintainer
- Enable Customization: Fork the project to create specialized versions for specific needs
- Support Education: Serve as a learning resource for developers interested in financial data or Cloudflare Workers
Technology Stack
Rates API is built with modern web technologies:- Bun: A fast JavaScript runtime and package manager
- Hono: A lightweight, fast web framework
- Cloudflare Workers: Serverless JavaScript runtime on Cloudflare CDN
- Cloudflare D1: Serverless SQL database for data storage
- TypeScript: For type-safe development
- Zod: TypeScript-first schema validation
- OpenAPI/Swagger: API documentation generation
- Cheerio: HTML parsing for web scraping
- GitHub Actions: For monitoring and automation
Repository Structure
The project follows a clean and maintainable structure:-
src/: Main application code
index.ts
: Entry point with Hono application setupmodels/
: Schema definitions for API data typesroutes/
: API endpoint implementationslib/
: Utility functions and helpers
-
bin/: Scraper scripts to collect rates data
- Separate scripts for mortgage, personal loan, car loan, and credit card rates
- schema.sql: CloudFlare D1 database schema definition
Getting Started
To get started with the project:- Visit the GitHub repository
- Follow the setup instructions in the Local Development guide
- Check out the Deployment guide to deploy your own instance