Ruby on Rails & iOS development in Scotland
A Scottish web development studio: Ruby on Rails applications, upgrades and support from developers in production on Rails since 1.2.6, native iOS apps in Swift, and the scoreboards, billboards and live-event screens that run on top of them. Based in Fife, working across Scotland and the UK.
Rails, mobile, and live
Rails at the core, mobile and live screens on top – and every hand on your project is a lead developer.
Ruby on Rails
New Rails 8 applications and the APIs behind them – Hotwire, Stimulus and ViewComponent interfaces on clean architecture from day one.
Rails Upgrades
From any version to Rails 8.1, one safe step at a time while your app keeps shipping. Every jump made in production, starting at 1.2.6.
Rails Support
A named Rails developer who knows your codebase – security patches, dependency updates and priority help when production needs it.
Mobile Apps
Native iOS apps in Swift and SwiftUI with the backend built alongside – live data over WebSockets, secure sign-in, and App Store delivery.
Live Events & Screens
Scoreboards, billboards and live results – real-time displays driven from one backend, built to stay up for the whole event.
Hosting You Own
Off Heroku, AWS or Render onto sovereign UK and EU hosting – Hetzner with Kamal, or Kubernetes on your own cluster, Azure or AWS.
From a sketch on the back of an envelope to shipped software.
Bring us an idea sketched on the back of an envelope, or a platform that needs building. We get on a call, work through your use cases together, and turn it into software that ships – the app, the API behind it, and the licensing, auth, or marketplace underneath if you need it. Here is who we tend to fit.
About us…
- We are a Scottish Ruby on Rails studio – senior engineers who build the software ourselves, from the interface down to the APIs, auth and hosting it runs on. You talk directly to the people writing your code.
- We get on the phone and take the time to really understand what you are trying to do before writing a line of code.
- We turn a spec, a rough plan, or a back-of-an-envelope sketch into working software – tested, documented, and yours to own.
- We stay on after launch – hosting and running it for you, handing it to your own team, or setting it up to self-host. Your code, your choice.
- We are proud to be based in Crail, on the East Neuk of Fife, and to work with businesses right across Scotland and the UK.
About you…
- You have a product to build, a business that has outgrown off-the-shelf software, or you are about to build the thing that cannot be off-the-shelf.
- You would rather talk directly to the engineers building your software than to a salesperson.
- You want it built properly the first time, so it lasts.
- You would rather own your platform than rent someone else's, and you are in it for the long term.
- You like the idea of a local, Scottish team you could actually sit down with over a coffee.
Modern tools, kept current.
We pick the right tool for each problem and keep everything current – every technology below runs in production for our clients today. Open one to see why, or read the full explainer.
Ruby on Rails
Our backbone for web applications – modular monoliths with enforced boundaries, running everything from SaaS platforms to webshops.
Read more about Ruby on Rails Swift & SwiftUI
Native iOS, built to Apple's conventions – real-time data over WebSockets, secure sign-in, and App Store delivery.
Read more about Swift & SwiftUI TypeScript & JavaScript
Typed, tested front-end code – only as much JavaScript as the page actually needs.
Read more about TypeScript & JavaScript GraphQL
APIs where each client asks for exactly the data it wants – a self-documenting contract both sides can rely on.
Read more about GraphQL REST APIs
Clear, versioned endpoints with proper authentication and documentation generated from the code.
Read more about REST APIs OpenAPI & Swagger
A standard description of your API – living documentation, a try-it console, and client code, generated straight from the source.
Read more about OpenAPI & Swagger PostgreSQL
Rock-solid relational storage – transactional integrity, sensible constraints, and query plans we actually read.
Read more about PostgreSQL Astro
Fast, content-driven sites – static where possible, dynamic only where it earns its keep.
Read more about Astro Strapi
A headless CMS so you can edit your own content while keeping a fully custom, fast website.
Read more about Strapi Docker & Kamal
Containerised, health-checked, rollback-ready deploys to infrastructure in your name – no lock-in.
Read more about Docker & Kamal EU & UK Hosting
Hosting in Ireland, Germany, Finland or the UK, with a straight answer about which providers sit genuinely outside US jurisdiction.
Read more about EU & UK Hosting Vue
A fast, approachable framework for the interactive parts of a web app – reactive by default, small to ship, and pleasant to maintain a year later.
Read more about Vue Kubernetes
Rails on Kubernetes in production – self-managed clusters, Azure AKS and Amazon EKS, with autoscaling and rolling deploys.
Read more about Kubernetes AI-Accelerated Delivery
Spec-driven, with guardrails. We use AI to move faster – but specs come first, tests wrap everything, coverage gates hold the line, and a human reviews every change. Speed without the slop.
Read more about AI-Accelerated Delivery Your stack
Rails and Swift are our default, not our ceiling. We're engineers with the depth to work in your stack properly – C, C#, Go, Python, whatever your platform runs.
Start a projectOne supergraph. Your Rails service is a subgraph.
Apollo Federation, running in production. Each domain service publishes its own GraphQL subgraph – Orders on Rails, IaaS on .NET, Accounts on Swift – and the Apollo Router composes them into one supergraph. Your iOS and web apps query a single endpoint and never need to know which service answers which field. A Rails service joins the graph through graphql-ruby with federation support: it owns its own types, contributes fields to entities other services define, and resolves its entities by key – so you can add Rails to an existing graph, or carve a subgraph out of a Rails monolith, without changing a single client. Each service owns its database, and all of it runs containerised on AWS in Ireland.
Ask for exactly what you need.
GraphQL lets your app request precisely the data it wants – no more, no less – and get a predictable shape back. An API developers enjoy using is a feature in its own right. Here's a real query, and the response.
query GetCompetition($id: ID!) { competition(id: $id) { name status organisation { name } entries { totalCount } } }
{ "data": { "competition": { "name": "Spring Classic 2026", "status": "published", "organisation": { "name": "Crail Sailing Club" }, "entries": { "totalCount": 128 } } }} Our approach
Principles we apply to every engagement, and the way we work day to day.
Test-driven development
Every Code Bunny writes tests first. 100% specification coverage is how you know the product works.
Bespoke domain modelling
A Code Bunny will model your domain properly – state machines, business logic, constraints – so the software reflects how your business actually works.
Modern, maintained stacks
Code Bunnies pick the right tool for each job and keep it current – Rails 8, Swift, Vue, and Astro, chosen to fit the problem and maintained for the long term.
Long-term partnership
Your Code Bunny is still here after launch. Clean code, clear documentation, and a team that picks up when you need to evolve it.
Shipped, then watched.
Every app we deliver is monitored in production. We watch the numbers that matter – P95 latency, error rates, throughput – and keep tuning performance long after launch, so it stays fast as it grows.
What we watch
P95 latency
Real-world speed at the 95th percentile – the figure your slowest visits feel.
Error rates
Exceptions captured and triaged before they reach your users.
Throughput
Requests and background jobs per second, watched under real load.
Uptime & Apdex
Availability tracked continuously, alerting us the moment it slips.
The tools
- Datadog
- Scout APM
- New Relic
- Airbrake
Application performance monitoring and error tracking, wired into every app we run.
Stats for nerds.
Answers before you have to ask.
What does Code Bunnies actually build?
Three things. Ruby on Rails applications – new builds, upgrades from any Rails version, support and hosting migrations. Native mobile apps in Swift, with the backend built alongside. And specialist real-time apps for live events – scoreboards, billboards and live-results screens. See Ruby on Rails development.
Do we need a full specification before talking to you?
No. A clear idea of the problem is enough – turning that into a specification is part of what you are paying us for. Some of the best projects we have worked on started as one paragraph and a phone call.
Can you take over a codebase another team built?
Yes – it is one of the things we do most. We start with a read-only audit and give you a written report of what state the code is in and what we would tackle first. You are free to stop after the audit and keep the report.
How do you price work?
Project work is scoped and quoted after the first conversation or audit – a written proposal agreed with you before work starts. Ongoing work runs as a monthly support plan with agreed hours and a named developer. Choose the budget band you are working to on the enquiry form and we will shape the proposal around it.
Who owns the code?
You do. Work happens in repositories you own, deploys go to infrastructure in your name, and everything is documented for whoever comes after us. You are free to move at any time.
What happens after launch?
Software keeps improving after launch. Most clients move onto a monthly support plan: monitoring, dependency and security updates, and a developer who already knows the codebase when the next feature is needed. If you would rather take it fully in-house, we hand over properly.
Where are you based?
Crail, in the East Neuk of Fife – The Old Bakehouse, on West Green. We work remotely with clients across the UK, and everything is reviewable online as it progresses.
Ready to build something properly?
Let's talk – an honest conversation about what you need.
Talk to a Code Bunny