feat(theme): add cyberdream and cyberdream_light themes (@ahashim)#8203
Open
ahashim wants to merge 2 commits into
Open
feat(theme): add cyberdream and cyberdream_light themes (@ahashim)#8203ahashim wants to merge 2 commits into
ahashim wants to merge 2 commits into
Conversation
Port of the cyberdream.nvim colorscheme (scottmckendry/cyberdream.nvim): a high-contrast, futuristic and vibrant dark theme. Includes a theme CSS file for per-nav-item accent colors.
Contributor
There was a problem hiding this comment.
Pull request overview
Adds new built-in theme cyberdream (ported palette + optional theme CSS) to expand Monkeytype’s theme catalog with a high-contrast cyan-on-near-black option.
Changes:
- Register
cyberdreamin shared schema theme enum. - Add
cyberdreamcolor tokens to frontend theme constants (incl.hasCss: true). - Add
frontend/static/themes/cyberdream.cssfor per-nav-item accent colors.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| packages/schemas/src/themes.ts | Adds cyberdream to the canonical ThemeName enum. |
| frontend/src/ts/constants/themes.ts | Defines cyberdream theme palette and marks it as CSS-backed. |
| frontend/static/themes/cyberdream.css | Implements cyberdream-specific nav accent styling. |
Light variant of the cyberdream port, using cyberdream.nvim's light palette.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds cyberdream and its light variant cyberdream_light, ported from the cyberdream.nvim colorscheme. cyberdream is a high-contrast dark theme built around a bright cyan accent on a near-black background; cyberdream_light is the same idea inverted onto white using the plugin's official light palette. Neither overlaps with the existing themes (the closest is
cyberspace, which is green-on-dark and reads very differently).How I mapped the palette onto Monkeytype's colors (dark / light):
bg#16181a/#ffffffandsubAlt#1e2124/#eaeaea— the background and its slightly offset surface color.main/caret#5ef1ff/#008c99— the signature cyan in each variant.sub#7b8496(shared) — the palette's grey, used for the untyped text.text#ffffff/#16181a— white on the dark theme, near-black on the light one, per the theme guidelines.error#ff6e5e/#d11500, with a dimmererrorExtra(#b24d42/#920f00) so extra letters read as secondary.#ff5ea0/#ff5ef1on dark,#f40064/#d100bfon light) so errors stay vibrant and clearly distinct from the plain red.Each theme also has a small CSS file that gives the nav items their own accents pulled from the palette, since those distinct saturated colors are really the whole identity of cyberdream.
I checked both variants for readability with colorful mode and flip test colors on and off (screenshots below).
Screenshots
cyberdream (dark)
cyberdream_light
Checks
packages/schemas/src/themes.tsfrontend/src/ts/constants/themes.tsfrontend/static/themes