True Dark
OLED-black design system with a single neon mint accent, 1 px hairlines and monospace labels: for developer tools, AI products and premium tech that live in dark mode.
/* True Dark · thema 02 */
/* OLED-zwart, één neon-accent, haarlijnen. */
.thema {
- 01--tdk-bg#000000achtergrond
- 02--tdk-surface#0C0D0Eoppervlak
- 03--tdk-ink#EDEFEEtekst
- 04--tdk-muted#8B918Fgedempt
- 05--tdk-line#1F2224lijn
- 06--tdk-accent#00F5A0accent
- 07--tdk-accent-2#0E3B2Caccent 2
- 08--tdk-signal#FF4D6Dsignaal
}
Veerkracht CI · Eindhoven
True Dark
Zwart als het scherm uit staat. Eén neon-accent wijst de weg, al het andere is een haarlijn.
~/webshop $ veerkracht deploy --prod
✓ 214 tests geslaagd in 38,2 s
✓ image gebouwd · 61,4 MB
● live op ams-1 · eu-west
// type · Supreme + JetBrains Mono
Deploy in 412 ms
Rollback met één commando
Previews per branch, logs die je kunt doorzoeken en een status die klopt.
mono 13 · 3c9f1e2 · main · 2 min geleden
5632201513
// knoppen
// invoer
// kaart
- p95
- 84 ms
- uptime
- 99,98%
- req/min
- 1.204
past_bij = [ developer-tools, AI-producten, hosting en cloud, cybersecurity, premium tech-merken ]
How to use it
- Paste the HTML where the themes should appear.
- Add the CSS to your stylesheet. All classes are prefixed, so nothing clashes with your own styles.
- No JavaScript needed.
<!-- True Dark · NedDev · eigen werk. -->
<div class="jouw-container">
<div class="tdk"><div class="tdk__in">
<div class="tdk__win">
<div class="tdk__bar">
<span class="tdk__dots"><i></i><i></i><i></i></span>
<span class="tdk__tab is-on">tokens.css</span><span class="tdk__tab">components.tsx</span><span class="tdk__tab">preview</span>
<span class="tdk__status"><i></i>build 2.4.1 · 412 ms</span>
</div>
<div class="tdk__body">
<div class="tdk__code">
<p class="tdk__cm">/* True Dark · thema 02 */</p>
<p class="tdk__cm">/* OLED-zwart, één neon-accent, haarlijnen. */</p>
<p><span class="tdk__k">.thema</span> {</p>
<ul class="tdk__toks">
<li><b>01</b><span class="tdk__p">--tdk-bg</span><i style="--c:#000000"></i><span class="tdk__v">#000000</span><em>achtergrond</em></li>
<li><b>02</b><span class="tdk__p">--tdk-surface</span><i style="--c:#0C0D0E"></i><span class="tdk__v">#0C0D0E</span><em>oppervlak</em></li>
<li><b>03</b><span class="tdk__p">--tdk-ink</span><i style="--c:#EDEFEE"></i><span class="tdk__v">#EDEFEE</span><em>tekst</em></li>
<li><b>04</b><span class="tdk__p">--tdk-muted</span><i style="--c:#8B918F"></i><span class="tdk__v">#8B918F</span><em>gedempt</em></li>
<li><b>05</b><span class="tdk__p">--tdk-line</span><i style="--c:#1F2224"></i><span class="tdk__v">#1F2224</span><em>lijn</em></li>
<li><b>06</b><span class="tdk__p">--tdk-accent</span><i style="--c:#00F5A0"></i><span class="tdk__v">#00F5A0</span><em>accent</em></li>
<li><b>07</b><span class="tdk__p">--tdk-accent-2</span><i style="--c:#0E3B2C"></i><span class="tdk__v">#0E3B2C</span><em>accent 2</em></li>
<li><b>08</b><span class="tdk__p">--tdk-signal</span><i style="--c:#FF4D6D"></i><span class="tdk__v">#FF4D6D</span><em>signaal</em></li>
</ul>
<p>}</p>
</div>
<div class="tdk__hero">
<p class="tdk__tag"><i></i>Veerkracht CI · Eindhoven</p>
<h3 class="tdk__name">True Dark</h3>
<p class="tdk__mood">Zwart als het scherm uit staat. Eén neon-accent wijst de weg, al het andere is een haarlijn.</p>
<div class="tdk__term">
<p><span class="tdk__dim">~/webshop</span> <span class="tdk__acc">$</span> veerkracht deploy --prod</p>
<p class="tdk__dim">✓ 214 tests geslaagd in 38,2 s</p>
<p class="tdk__dim">✓ image gebouwd · 61,4 MB</p>
<p><span class="tdk__acc">●</span> live op ams-1 · eu-west <span class="tdk__cur"></span></p>
</div>
<div class="tdk__btns">
<button class="tdk__btn tdk__btn--p" type="button">Start gratis <kbd>↵</kbd></button>
<button class="tdk__btn tdk__btn--s" type="button">Documentatie</button>
</div>
</div>
</div>
</div>
<div class="tdk__cells">
<div class="tdk__cell tdk__cell--type">
<p class="tdk__lbl">// type · Supreme + JetBrains Mono</p>
<p class="tdk__t1">Deploy in 412 ms</p>
<p class="tdk__t2">Rollback met één commando</p>
<p class="tdk__t3">Previews per branch, logs die je kunt doorzoeken en een status die klopt.</p>
<p class="tdk__t4">mono 13 · 3c9f1e2 · main · 2 min geleden</p>
<p class="tdk__scale"><span>56</span><span>32</span><span>20</span><span>15</span><span>13</span></p>
</div>
<div class="tdk__cell">
<p class="tdk__lbl">// knoppen</p>
<div class="tdk__stack">
<button class="tdk__btn tdk__btn--p" type="button">Deploy</button>
<button class="tdk__btn tdk__btn--s" type="button">Logs bekijken</button>
<button class="tdk__btn tdk__btn--g" type="button">Annuleren</button>
<button class="tdk__btn tdk__btn--p is-hover" type="button">Hover · glow</button>
</div>
</div>
<div class="tdk__cell">
<p class="tdk__lbl">// invoer</p>
<label class="tdk__field"><span>project</span><input class="tdk__input" type="text" value="webshop-productie"></label>
<label class="tdk__field"><span>regio</span><select class="tdk__sel"><option>ams-1 · Amsterdam</option><option>fra-2 · Frankfurt</option></select></label>
<div class="tdk__badges"><span class="tdk__bdg tdk__bdg--ok">live</span><span class="tdk__bdg">preview</span><span class="tdk__bdg tdk__bdg--err">failed</span><span class="tdk__bdg tdk__bdg--key">⌘K</span></div>
</div>
<div class="tdk__cell tdk__cell--card">
<p class="tdk__lbl">// kaart</p>
<div class="tdk__card">
<div class="tdk__chead"><span>api.bakkerijvandam.nl</span><span class="tdk__bdg tdk__bdg--ok">live</span></div>
<div class="tdk__spark"><i style="height:30%"></i><i style="height:45%"></i><i style="height:38%"></i><i style="height:62%"></i><i style="height:55%"></i><i style="height:70%"></i><i style="height:48%"></i><i style="height:84%"></i><i style="height:66%"></i><i style="height:92%"></i><i style="height:74%"></i><i style="height:58%"></i></div>
<dl class="tdk__stats"><div><dt>p95</dt><dd>84 ms</dd></div><div><dt>uptime</dt><dd>99,98%</dd></div><div><dt>req/min</dt><dd>1.204</dd></div></dl>
</div>
</div>
</div>
<p class="tdk__fit"><span class="tdk__acc">past_bij</span> = [ developer-tools, AI-producten, hosting en cloud, cybersecurity, premium tech-merken ]</p>
</div></div>
</div>/* True Dark · NedDev · eigen werk. */
/* fonts (Fontshare): supreme@400,500,700,800 + jet-brains-mono@400,500,700 */
.tdk{--tdk-bg:#000000;--tdk-surface:#0C0D0E;--tdk-ink:#EDEFEE;--tdk-muted:#8B918F;--tdk-line:#1F2224;--tdk-accent:#00F5A0;--tdk-accent-2:#0E3B2C;--tdk-signal:#FF4D6D;--tdk-r:6px;--tdk-sans:'Supreme',sans-serif;--tdk-mono:'JetBrains Mono',ui-monospace,monospace;
container-type:inline-size;background:var(--tdk-bg);color:var(--tdk-ink);font-family:var(--tdk-sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
.tdk *{box-sizing:border-box}
.tdk__in{padding:36px 40px 30px;max-width:1280px;margin:0 auto}
.tdk__win{border:1px solid var(--tdk-line);border-radius:var(--tdk-r);overflow:hidden;background:var(--tdk-bg)}
.tdk__bar{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--tdk-line);background:var(--tdk-surface);font:400 12px var(--tdk-mono);color:var(--tdk-muted)}
.tdk__dots{display:flex;gap:6px;padding:0 16px}.tdk__dots i{width:9px;height:9px;border-radius:50%;border:1px solid #33383A}
.tdk__tab{padding:11px 16px;border-left:1px solid var(--tdk-line)}.tdk__tab.is-on{color:var(--tdk-ink);background:var(--tdk-bg);box-shadow:inset 0 1px 0 var(--tdk-accent)}
.tdk__tab:nth-child(4){border-right:1px solid var(--tdk-line)}
.tdk__status{margin-left:auto;padding:0 16px;display:flex;align-items:center;gap:8px}
.tdk__status i,.tdk__tag i{width:7px;height:7px;border-radius:50%;background:var(--tdk-accent);box-shadow:0 0 10px var(--tdk-accent)}
.tdk__body{display:grid;grid-template-columns:1fr 1.05fr}
.tdk__code{padding:22px 0 22px;font:400 13px/1.9 var(--tdk-mono);color:var(--tdk-ink);border-right:1px solid var(--tdk-line);counter-reset:ln}
.tdk__code>p{margin:0;padding:0 22px}
.tdk__cm{color:#5B625F}.tdk__k{color:var(--tdk-accent)}
.tdk__toks{list-style:none;margin:0;padding:0}
.tdk__toks li{display:grid;grid-template-columns:26px 150px 14px 84px 1fr;align-items:center;gap:10px;padding:2px 22px 2px 22px;transition:background .12s}
.tdk__toks li:hover{background:var(--tdk-surface)}
.tdk__toks b{font-weight:400;color:#3F4543}
.tdk__p{color:#B6BCBA;padding-left:12px}
.tdk__toks i{width:14px;height:14px;border-radius:3px;background:var(--c);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.tdk__v{color:var(--tdk-ink)}.tdk__v::after{content:";";color:#5B625F}
.tdk__toks em{font-style:normal;color:#5B625F}.tdk__toks em::before{content:"// "}
.tdk__hero{padding:30px 34px;position:relative;background:radial-gradient(120% 80% at 100% 0%,rgba(0,245,160,.07),transparent 60%)}
.tdk__tag{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;font:500 12px var(--tdk-mono);color:var(--tdk-muted);border:1px solid var(--tdk-line);border-radius:999px;padding:5px 11px}
.tdk__name{margin:0;font-size:56px;line-height:.95;font-weight:800;letter-spacing:-.035em}
.tdk__mood{margin:14px 0 22px;max-width:40ch;font-size:16px;line-height:1.55;color:var(--tdk-muted)}
.tdk__term{border:1px solid var(--tdk-line);border-radius:var(--tdk-r);background:var(--tdk-surface);padding:14px 16px;font:400 12.5px/1.8 var(--tdk-mono);margin-bottom:22px}
.tdk__term p{margin:0}.tdk__dim{color:var(--tdk-muted)}.tdk__acc{color:var(--tdk-accent)}
.tdk__cur{display:inline-block;width:7px;height:14px;vertical-align:-2px;background:var(--tdk-accent);animation:tdk-blink 1.1s steps(2) infinite}
@keyframes tdk-blink{50%{opacity:0}}
.tdk__btns{display:flex;flex-wrap:wrap;gap:10px}
.tdk__btn{font:500 14px/1 var(--tdk-sans);padding:11px 16px;border-radius:var(--tdk-r);border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:box-shadow .15s,background .15s,border-color .15s,color .15s}
.tdk__btn kbd{font:500 11px var(--tdk-mono);padding:2px 5px;border-radius:3px;background:rgba(0,0,0,.18)}
.tdk__btn--p{background:var(--tdk-accent);color:#00140C;font-weight:700}
.tdk__btn--p:hover,.tdk__btn--p.is-hover{box-shadow:0 0 0 1px var(--tdk-accent),0 0 24px rgba(0,245,160,.45)}
.tdk__btn--s{background:var(--tdk-surface);color:var(--tdk-ink);border-color:#2C3133}.tdk__btn--s:hover{border-color:var(--tdk-muted)}
.tdk__btn--g{background:transparent;color:var(--tdk-muted)}.tdk__btn--g:hover{color:var(--tdk-ink);background:var(--tdk-surface)}
.tdk__cells{display:grid;grid-template-columns:1.25fr .8fr 1fr 1.1fr;gap:1px;background:var(--tdk-line);border:1px solid var(--tdk-line);border-radius:var(--tdk-r);overflow:hidden;margin-top:20px}
.tdk__cell{background:var(--tdk-bg);padding:20px 20px 22px;min-width:0}
.tdk__lbl{margin:0 0 16px;font:400 12px var(--tdk-mono);color:#5B625F}
.tdk__t1{margin:0;font-size:32px;font-weight:700;letter-spacing:-.03em;line-height:1.05}
.tdk__t2{margin:8px 0 0;font-size:20px;font-weight:500;letter-spacing:-.01em}
.tdk__t3{margin:8px 0 0;font-size:15px;line-height:1.5;color:var(--tdk-muted)}
.tdk__t4{margin:10px 0 0;font:400 13px var(--tdk-mono);color:var(--tdk-accent)}
.tdk__scale{display:flex;gap:0;margin:16px 0 0;font:400 11px var(--tdk-mono);color:#5B625F;border-top:1px solid var(--tdk-line)}
.tdk__scale span{flex:1;padding-top:8px}.tdk__scale span::after{content:" px"}
.tdk__stack{display:grid;gap:8px}
.tdk__field{display:block;margin-bottom:12px}
.tdk__field span{display:block;font:400 11px var(--tdk-mono);color:var(--tdk-muted);margin-bottom:6px}
.tdk__input,.tdk__sel{width:100%;font:400 13px var(--tdk-mono);color:var(--tdk-ink);background:var(--tdk-surface);border:1px solid #2C3133;border-radius:var(--tdk-r);padding:10px 12px;outline:none;transition:border-color .15s,box-shadow .15s}
.tdk__sel{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8B918F 50%),linear-gradient(135deg,#8B918F 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px;background-repeat:no-repeat}
.tdk__input:focus,.tdk__sel:focus{border-color:var(--tdk-accent);box-shadow:0 0 0 3px var(--tdk-accent-2)}
.tdk__badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.tdk__bdg{font:500 11px/1 var(--tdk-mono);padding:5px 7px;border-radius:4px;border:1px solid #2C3133;color:var(--tdk-muted);white-space:nowrap}
.tdk__bdg--ok{color:var(--tdk-accent);border-color:rgba(0,245,160,.35);background:rgba(0,245,160,.06)}
.tdk__bdg--err{color:var(--tdk-signal);border-color:rgba(255,77,109,.35);background:rgba(255,77,109,.06)}
.tdk__bdg--key{color:var(--tdk-ink);background:var(--tdk-surface)}
.tdk__card{border:1px solid var(--tdk-line);border-radius:var(--tdk-r);background:var(--tdk-surface);padding:14px;transition:border-color .15s}
.tdk__card:hover{border-color:#2F3436}
.tdk__chead{display:flex;justify-content:space-between;align-items:center;gap:8px;font:500 12px var(--tdk-mono)}
.tdk__spark{display:flex;align-items:flex-end;gap:3px;height:56px;margin:14px 0;padding-bottom:1px;border-bottom:1px solid var(--tdk-line)}
.tdk__spark i{flex:1;background:linear-gradient(to top,var(--tdk-accent-2),rgba(0,245,160,.55));border-radius:1px 1px 0 0}
.tdk__spark i:last-child{background:var(--tdk-accent)}
.tdk__stats{display:grid;grid-template-columns:repeat(3,1fr);margin:0}
.tdk__stats dt{font:400 10px var(--tdk-mono);color:var(--tdk-muted)}.tdk__stats dd{margin:3px 0 0;font-size:15px;font-weight:700}
.tdk__fit{margin:20px 0 0;font:400 13px/1.6 var(--tdk-mono);color:var(--tdk-muted)}
@container (max-width:1100px){.tdk__cells{grid-template-columns:1fr 1fr}}
@container (max-width:900px){.tdk__body{grid-template-columns:1fr}.tdk__code{border-right:0;border-bottom:1px solid var(--tdk-line)}}
@container (max-width:600px){.tdk__in{padding:20px 16px}.tdk__cells{grid-template-columns:1fr}.tdk__tab:not(.is-on),.tdk__status{display:none}.tdk__tab.is-on{border-right:1px solid var(--tdk-line)}
.tdk__toks li{grid-template-columns:14px 1fr auto;padding:3px 16px;row-gap:0}.tdk__toks b{display:none}.tdk__toks i{grid-row:1/3}.tdk__p{padding-left:0;grid-column:2/4}.tdk__v{grid-column:2}.tdk__toks em{grid-column:3;text-align:right}.tdk__code>p{padding:0 16px}
.tdk__hero{padding:22px 16px}.tdk__name{font-size:42px}.tdk__term{font-size:11.5px}}
@media (prefers-reduced-motion:reduce){.tdk__cur{animation:none}.tdk *{transition:none!important}}
More themes
Seen something you like?
Add it to your selection and send it over. We build your site around it, in your brand.
Get in touch →