-
Notifications
You must be signed in to change notification settings - Fork 6.7k
Open
Labels
discussionUsed for feature requests, proposals, ideas, etc. Open discussionUsed for feature requests, proposals, ideas, etc. Open discussion
Description
Summary
I'd like to propose adding themes from the ef-themes collection by Protesilaos Stavrou to OpenCode. These are well-established, accessibility-focused themes originally designed for GNU Emacs, with 490+ stars and active maintenance.
Why ef-themes?
- Cohesive design: All 34 themes share consistent design principles focused on legibility and aesthetics
- Accessibility: Includes dedicated themes for color vision deficiencies (deuteranopia, tritanopia)
- Variety: Covers seasonal/mood themes (autumn, winter, spring, summer, day, night, frost, etc.)
- Established: Part of GNU ELPA, widely used in the Emacs community
- License: GPL-3.0, compatible with OpenCode
- Port-ready: Terminal color definitions already exist via ghostty-themes
Available themes (34 total)
| Dark (17) | Light (13) | Accessibility (4) |
|---|---|---|
| ef-autumn, ef-bio, ef-cherie, ef-cyprus, ef-dark, ef-dream, ef-duo-dark, ef-eagle, ef-elea-dark, ef-kassio, ef-maris-dark, ef-melissa-dark, ef-night, ef-owl, ef-rosa, ef-symbiosis, ef-trio-dark, ef-winter | ef-arbutus, ef-day, ef-light, ef-frost, ef-spring, ef-summer, ef-duo-light, ef-elea-light, ef-maris-light, ef-melissa-light, ef-reverie, ef-trio-light | ef-deuteranopia-dark, ef-deuteranopia-light, ef-tritanopia-dark, ef-tritanopia-light |
Sample Screenshots
Note: These are from Emacs, but colors will translate to OpenCode's TUI
Accessibility Themes
ef-deuteranopia-dark (red-green colorblind)
ef-deuteranopia-light
ef-tritanopia-dark (blue-yellow colorblind)
ef-tritanopia-light
Questions for maintainers
Before investing effort in implementation, I'd like to understand:
-
Would you accept this collection? Given OpenCode already has ~30 themes, would adding more be welcome?
-
How many is too many? Would you prefer:
- Option A: A curated subset (~8-10 themes covering dark/light/accessibility)
- Option B: The full collection (34 themes)
- Option C: Start with a few, add more based on user demand
-
Contribution format?
- One PR with all themes
- Multiple smaller PRs (batched by category)
- Individual PRs per theme
Resources
- Original Emacs package: https://github.com/protesilaos/ef-themes
- Documentation & all screenshots: https://protesilaos.com/emacs/ef-themes-pictures
- Terminal color ports: https://github.com/anhsirk0/ghostty-themes
I'm available to implement this once there's guidance on the preferred approach.
malhashemi and ariane-emory
Metadata
Metadata
Assignees
Labels
discussionUsed for feature requests, proposals, ideas, etc. Open discussionUsed for feature requests, proposals, ideas, etc. Open discussion









