Shock Creative Admin
Hosting that bills itself, and tells me when something breaks.
The brief
One place to sign up, bill and watch every site Shock Creative hosts, without chasing anyone.
Shock Creative offers managed hosting, but there was no system behind it. Payments were collected by hand, setting a client up for a recurring payment was awkward for both sides, and nothing told us when a payment failed or a site went down. Problems were only noticed when someone happened to look.
Now I add a Customer and their Site with a fixed monthly price and press Send. The client gets an email with a link to a Shock Creative page that explains what they are signing up for, accepts the hosting terms and sets up a Bacs Direct Debit through Stripe, with card as a fallback. From then on each Site is billed monthly from its go-live date, with no one doing anything.
It was built to fix three things:
Chasing payments. A failed payment marks the Site Past due and emails me straight away, and again if it is still unpaid after 14 days. Every Site shows its payment history from Stripe.
Knowing a site is up. Every site is checked every 10 seconds. Three failures in a row open an incident and email me, and I get another email when it recovers. Forge database backups are watched too, and a stale or failed one is flagged.
Finding things quickly. One dashboard lists everything that needs attention: sites down, payments past due, invites waiting more than 7 days and backups. Customers and Sites live in one place, and every change is in an audit log.
Design
The admin uses Shock Creative’s own brand: the same colour tokens, fonts and logo as the marketing site, copied in rather than shared, on top of shadcn-vue components. Section labels are set in a monospace face, and anything that needs attention, a site down or a payment past due, is marked in red.
A Site’s page holds its whole story: details, price, current uptime, uptime over 24 hours, 7 days and 30 days, a response time chart, incidents, the latest backup, payment history and its audit trail. Forms do the typing for me: pick a Forge server and site from dropdowns and the URL and PHP version are filled in.
The client only ever sees the onboarding page. It says which site it is for, the monthly price, when billing starts and how Direct Debit works, in plain English, before anyone is asked for bank details.
Build & release
Shock Creative Admin is a Laravel 13 app with Inertia and Vue 3, built on the Laravel Vue starter kit and hosted on its own Forge server, away from the client sites, so monitoring keeps running if a client server goes down. The rules live in services with small interfaces, and Stripe and Forge sit behind gateways so the whole thing can be tested without either.