Django Web Development & Custom Platforms
Booking systems, customer portals and internal tools, hand-coded by a two-person UK Django studio. We build the system your business runs on, not just the website.
What you get
If your business runs on phone calls, spreadsheets and paperwork, this is what replaces them.
Bookings & payments
Customers see live availability, then book and pay in one go, day or night, without a phone call.
Automation that saves hours
Documents, invoices, confirmations and reminders generated and sent automatically the moment they are needed.
Portals & accounts
Give customers, tenants or members their own login to see bookings, documents and payments.
Internal tools
Dashboards, reports and admin screens that replace the spreadsheet only one person understands, with the right access for each role.
Joined-up systems
Stripe, Open Banking, Xero and Google Calendar connected through their APIs, so every record is entered once and stays in sync.
Built in stages
Something useful goes live early, then new features are added as the business grows, on the same codebase.
Why we build in Django
Django is the Python web framework we build our platforms on, and this website too.
Django was first released in 2005 and is maintained by the non-profit Django Software Foundation. It comes with the parts every business platform needs: user accounts and permissions, an admin interface, a database layer with migrations, and forms with validation. Starting from those means your budget goes on the features that make your business different, not on rebuilding a login screen.
It is also secure by default. The database layer uses parameterised queries, which protects against SQL injection; templates escape output automatically, which protects against most cross-site scripting; and forms are protected against cross-site request forgery. You can check how we set up the rest: run curl -I https://customcodedwebsites.com/ and the response includes Strict-Transport-Security: max-age=31536000; includeSubDomains; preload, which tells browsers to use HTTPS only for a year, plus X-Frame-Options: DENY against clickjacking and X-Content-Type-Options: nosniff.
Because Django is open source and widely used, any competent Python developer can pick up your codebase, so you are never locked in to us. If you are weighing it up against WordPress, our WordPress vs Django comparison sets out when each one makes sense.
Built and running
Not mock-ups - real businesses using this every day. Click through and try them.
The Golf Cabin
Indoor golf venue with every bay bookable online.
UK Name Change
160,000+ legal documents generated, paid for and posted automatically.
The online booking system has completely changed how we run The Golf Cabin. Customers check live availability, book a bay and pay in one go - day or night - so we spend our time on the venue instead of the phone. Bookings have gone up noticeably since the site launched.
UK Name Change shows the automation side: Stripe confirms each payment by webhook, the webhook triggers a ReportLab PDF, and the document is emailed to the customer in under two minutes with no one touching it. Read the UK Name Change case study, or see Tenancy Pilot, UK Prenup and Stag Hen Houses in our portfolio.
Booking systems, done properly
A calendar widget is easy. These are the parts that decide whether a booking system can be trusted with real customers and real money.
No double bookings
Two customers can click the last slot in the same second. We let the database decide who gets it, by locking the slot inside a transaction (Django's select_for_update()) or with a unique constraint on the booking, rather than trusting what each browser showed a few seconds earlier.
Clocks that change twice a year
We store times in UTC and show them in UK time, so a 9am booking stays at 9am when British Summer Time starts or ends, and reminders go out at the right hour.
Deposits, cancellations and refunds
Stripe takes full payments or deposits, and your cancellation rules decide what happens automatically: a refund, a credit, or the slot released for someone else to book.
Reminders and calendars
Confirmations and reminders go out on schedule, and bookings can land straight in Google Calendar. The free-call booking page on this site is a small Django booking app of our own: it keeps a rolling 21 days of weekday slots open, and each confirmed booking creates a Google Calendar event and emails the customer an .ics calendar file.
Wondering whether a subscription booking tool would do? Our guide to custom appointment booking and scheduling apps covers when going custom pays off.
How it works
The two developers you speak to on the first call are the two who write your code.
Tell us what you need
A short call in plain English. No obligation, no tech quiz. We ask how the work flows today and where it breaks.
Fixed quote
A written scope, split into stages, with what each stage costs and how long it takes.
We build it
Hand-coded on a staging site you can log in to, so you test real features as they land, not mock-ups.
Launch & care
We ship it with a 30-day bug-fix warranty, then host, monitor and keep improving it on a maintenance plan.
The stack
Proven, open-source tools, chosen so the platform is easy to run, easy to hand over and hard to break.
Python & Django
The application itself: data models, business rules, accounts, permissions and the admin your team works in.
PostgreSQL
The database, with transactions and constraints enforcing the rules so bookings, payments and records stay consistent.
Stripe
Card payments, Apple Pay and Google Pay, deposits, subscriptions and refunds, each one confirmed by webhook.
Celery & Redis
Background jobs that send emails, generate documents and sync with other systems without making anyone wait.
PDF generation
ReportLab or WeasyPrint for invoices, certificates and legal documents, laid out exactly the same every time.
APIs & webhooks
Django REST Framework when your platform needs an API of its own, and webhooks to connect Open Banking, Xero, Google Calendar and email.
Cost and ownership
Every platform gets a fixed quote after a free call. What moves the price is how many types of user and permission it needs, how many systems it connects to, the payment rules, and whether data has to come across from something you already use. As a guide, our published starting points are £5,000 to £15,000 for a moderate web application and £15,000 and up for complex systems.
Once the project is paid for, you own the code we write for you. Launch comes with a 30-day bug-fix warranty, and our website maintenance plans cover hosting, backups and security updates afterwards. Still shaping the idea? Our web app requirements planning guide shows what to decide before you ask anyone for a quote.
Common questions
Do you build everything from scratch?
We hand-code the platform itself, and connect it to proven services where that is the smart choice: Stripe for payments, Open Banking for reconciliation, Xero for accounting and Google Calendar for scheduling.
How long does a platform take?
It depends on scope. As a guide, a moderate web application takes 4 to 8 weeks and a complex platform 3 to 6 months; UK Name Change took 12 weeks. We break every build into stages, so something useful is live early and you see progress throughout rather than waiting for a big reveal.
What happens after launch?
We run it. Hosting, monitoring, backups and updates are covered by a maintenance plan, and new features can be added in stages as your business grows.
Why Django rather than WordPress or an off-the-shelf tool?
Off-the-shelf tools work until your rules stop fitting them. Django gives us accounts, permissions, an admin and strong security defaults out of the box, so we can build your exact workflow on a well-tested base, and you own the result rather than renting it.
Can you take over an existing Django project?
Yes. We start by reviewing the code, dependencies and hosting, fix anything urgent such as an unsupported Django version, then maintain or extend it. If a rebuild would genuinely serve you better, we will explain why before recommending it.
Will I own the code?
Yes. Once the project is paid for, you own the code we write for you and all of your data. Django and the other open-source tools we build on keep their own licences, which allow commercial use.
Do you only work with businesses in London and Bristol?
No. We are based in London and Bristol and work with businesses right across the UK. Most projects run remotely with regular video calls, and you can book a free call online.
What could your business automate?
Tell us what your business needs - we'll tell you exactly what we'd build, what it would cost, and how long it would take.