- Go Template 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| public/assets | ||
| templates | ||
| LICENSE | ||
| NOTICE | ||
| README.md | ||
forgejo-synapse-ember
The Synapse Ember themes for Forgejo, as running on natems.dev: an Ember dark theme for Forgejo's stock layout, a GitHub-layout variant of the same palette, a muted backdrop on the sign-in page only, and the navbar template overrides the GitHub layout needs, adapted to run on Forgejo 17.
Contents
public/assets/css/theme-evesynapse.css— evesynapse: Ember palette (primary#ff6a1a, steel ramp,#navbar#1c1c21) over the stock Forgejo layout. The sign-in page gets the muted backdrop (below); every other page keeps the solid ground.public/assets/css/theme-evesynapse-github.css— evesynapse-github: the GitHub layout from lutinglt/gitea-github-theme (v28.2.0) with the Ember variable set and code colors laid over it, avatars kept transparent (no fill painted behind them), and the repository description set a step below full-bright text.public/assets/img/bg-calm-muted.jpg— the muted backdrop image the evesynapse theme paints behind the sign-in form.templates/base/head_navbar.tmpl,templates/base/head_navbar_icons.tmpl— the GitHub-style navbar from the upstream theme, adapted for Forgejo 17 (below).templates/base/head_banner.tmpl,templates/base/head_impersonate_banner.tmpl,templates/repo/commit_sign_badge.tmpl— intentionally empty shims. Forgejo 17 does not ship these partials; the upstream templates reference them, and Forgejo refuses to render pages whose templates reference missing partials.
Install
- Copy
public/andtemplates/into your Forgejocustom/directory (so the paths land atcustom/public/assets/css/...andcustom/templates/...). - In
app.ini, add both names to the theme list and pick a default:[ui] THEMES = forgejo-auto,forgejo-light,forgejo-dark,gitea-auto,gitea-light,gitea-dark,evesynapse,evesynapse-github DEFAULT_THEME = evesynapse-github - Restart Forgejo. Signed-in users can also pick either theme in their appearance settings.
- Optional: send signed-out visitors somewhere useful instead of the stock splash, for example your main organization's repositories:
[server] LANDING_PAGE = /YourOrg
Note: Forgejo serves theme CSS with a long cache lifetime. After changing a theme file, hard-refresh once to see it.
Forgejo 17 compatibility
The upstream GitHub theme targets a newer Gitea than Forgejo 17 (which is based on Gitea 1.22). The templates here are adapted:
head_navbar.tmplasks for the locale keyexplore(newer Gitea calls itexplore_title).- Both navbar templates are ported from the newer template data model to Forgejo 17's: the left side carries the full entry set (Issues, Pull Requests, Milestones, Explore) guarded by the root fields
UnitIssuesGlobalDisabled,UnitPullsGlobalDisabled, andShowMilestonesDashboardPage, and the right-side icon entries read the same root fields instead of the newerPageGlobalDataobject, which Forgejo 17 does not provide (with it, the icons silently render nothing). - The three shim partials above stand in for partials that only exist in the newer codebase.
Not included: the upstream repo/view_list.tmpl, repo/view_content.tmpl, and repo/commits_list.tmpl overrides, and its repo/commit_sign_badge.tmpl. They use data fields that do not exist in Forgejo 17 (git.CommitInfo.SubmoduleFile, SignCommitWithStatuses.GitCommit, a NIL template function) and make repository pages fail with a 500 error. The stock Forgejo templates render those pages under both themes here. The empty commit_sign_badge shim exists because the stock commits template set references the partial name; with it empty, commit lists render without the signature badge.
Credits and license
The GitHub layout CSS and the navbar templates derive from gitea-github-theme by lutinglt, Apache License 2.0 (see LICENSE and NOTICE). The Ember palette and the Forgejo 17 adaptations are the EveSynapse project's, under the same license.