Black and red coming soon page template — Midnight
Near-black, one red. Built for a date and a door.
Events, drops, ticketed nights — anything where a specific hour matters and the page exists to hold a countdown. At 19.53:1 this is the highest-contrast template in the gallery, which is what you want when the page is being read on a phone at arm's length in a bar.
The .zip is HTML, CSS and JS in one file, MIT licensed. No account, no email, no modal — the download starts when you click. Hosting it here instead takes a free account: 3 pages and 100 leads, no card.
Ten nights until the room opens
One address, one night, two hundred tickets. The list gets the link an hour early.
Live render — the countdown is really counting. Open the demo for the full-size page.
Make it yours before you download it
Every free coming soon template on the web hands you a .zip and wishes you luck with a text editor. Your first hour goes on finding the hex value that appears eleven times, the date format the timer wants, and which <p> is the subheadline. Change it here instead. The .zip you get is the page in the panel — your words, your colours, your date, already in the file.
Still no account, still MIT. Editing this costs us nothing, so we do not charge for it or hide it behind a signup — the thing worth paying for is hosting it and collecting the addresses, and you can decide that after you have the file.
The three colours
Baked in as LAUNCH_DATE, midnight local. The hour goes in the same line if you need one.
Your text on your background
19.53:1 AAA
White label on your button
4.7:1 AA
No account, no email, no modal. Your values ride in the query string of that link because the .zip is built on our side — that route has no database and no session, it writes three files into the response and forgets them. Nothing here is saved, so bookmark the link if you want your version back.
Ten nights until the room opens
One address, one night, two hundred tickets. The list gets the link an hour early.
This is the file, not a mockup of it — same three CSS variables, same countdown maths.
What Midnight is made of
| Background | #050505 |
|---|---|
| Text | #FAFAFA |
| Accent | #E11D48 |
| Typeface | Space Grotesk |
| Countdown | On, demo set to 10 days out |
| Good for | Event, Shop / drop, Product launch |
| Download | coming-soon-midnight.zip — index.html + README + LICENSE. MIT. |
| Included | Hosting, subdomain, working email capture, leads list (100 leads on Free) |
Why these three colours
#050505 rather than #000000: five points of grey stop the halation you get when pure white type sits on pure black on an OLED screen, and nobody can tell the difference by eye. The red #E11D48 is the only chromatic pixel on the page, so the countdown reads as an alarm.
The copy it ships with
Every noun is a quantity: ten nights, one address, one night, two hundred tickets, one hour early. No adjectives at all. For an event, the numbers are the marketing — anything else you add dilutes them.
All four fields are editable. The demo copy is a starting point, not a placeholder — it is written to be replaced, not shipped.
Contrast, measured
Both numbers are computed from the hex values above using the WCAG 2.1 relative-luminance formula, every time this page renders. Nothing here is typed in by hand.
Text on background
19.53:1
Passes AAA
White label on the button
4.7:1
Passes AA
Both figures clear WCAG AA as shipped. That was a constraint when this palette was picked, not a happy accident — the accent was darkened until the button label passed.
What is in coming-soon-midnight.zip
Three files, no build step, no npm install, no tracker. Unzip it, double-click index.html, and the page is there — countdown running, font loading, form styled.
coming-soon-midnight/
├── index.html the whole page — inline CSS, inline JS, one file
├── README.md the three ways to make the email field work
└── LICENSE MIT The three colours are CSS variables in a :root block at the top of index.html. Change those four lines and the whole page follows — there is no other colour value in the file. Or set them further up this page and they arrive already in it.
The catch, which we would rather you read here
In this .zip, and in every free coming soon template you can download anywhere, the email field goes nowhere. The gallery listing promises "countdown + email signup form". The file ships action="#". You find out about four days after you posted the link, when you go looking for the addresses and there are none, and the ones you missed are not recoverable.
It is not laziness on anyone's part. A static HTML file has nowhere to put an address until you give it somewhere — that is genuinely your decision, not the template author's. But saying so in a FAQ entry after the download, or not at all, is a choice. So: the README opens with this, and it gives you all three options with the code.
Formspree
Free tier, 50 submissions a month, works from a static file. Paste one URL into index.html. Nothing to do with us, and the fastest way to a form that works.
Mailchimp, ConvertKit or Buttondown
Swap the <form> for their embed and delete the fetch block. The README has the markup with this template's classes already on it.
Post to a page you publish here
Publish Midnight on the free plan, then point the downloaded file at /api/leads/subscribe with your page slug. Two lines. Addresses land in the same leads list, and you keep hosting the HTML wherever you like — Netlify, your own FTP, anywhere.
Whichever you pick, submit the form with your own address and go and look for it before you tell anyone the page exists. Thirty seconds, and it is the only step in that file that can quietly cost you a launch.
The first three things to change
- 1
Set the countdown to the actual door time, not midnight. The last hour is the one that sells the tickets.
- 2
Use the button URL field to point straight at your ticketing page once tickets are live — that turns the email form into a buy button without rebuilding the page.
- 3
Add exactly one social link. Two rows of icons on a black page look like a link tree.
Put Midnight online
Your headline, your date, your accent colour. Live on a real URL with a working email field, and the addresses land in a list you can export.
Free plan: 3 pages, 100 leads, no card. The .zip needs neither.