Interface changes
Arbinel makes these smaller changes to Forgejo’s interface. None of them needs a setting unless the section says otherwise. The inbox and the themes have their own pages.
Repository switcher
Section titled “Repository switcher”A caret next to the owner / repository name in the repository header opens the Switch repository menu.
It lists the owner’s other repositories, most recently updated first, and the current one in bold.
Type in Find a repository… to filter the list by name.
| Key | Action |
|---|---|
| ↓ / ↑ | Move through the list |
| Enter | Open the highlighted repository |
| Esc | Close the menu |
The menu shows up to 100 repositories, and only those you can see. When the owner has more, Search all repositories at the bottom opens the owner’s profile. Repositories the owner only collaborates on are not listed.
Search as you type
Section titled “Search as you type”The search box on these pages updates the results while you type, without a page reload:
- Explore: repositories, users and organizations
- an organization’s repositories
- a user profile’s repositories and starred repositories
- your watched repositories
Results update after a 300 ms pause in typing. The address bar keeps the query, so you can share or bookmark the results. Enter and the search button still work, and the form works without JavaScript. The repository list in the site administration keeps the plain form.
Markdown outline
Section titled “Markdown outline”Rendered Markdown files and READMEs have an Outline button in the file header. It opens a list of the document’s headings, nested by level. Type in Filter headings to narrow the list, and select a heading to jump to it.
The button shows only in the rendered view and only when the document has headings. Front matter controls it:
include_toc: falsehides the button.include_toc: mainkeeps Forgejo’s table of contents inside the document and hides the button.
Wrap a selection in the editor
Section titled “Wrap a selection in the editor”In the Markdown editor for comments and descriptions, select text and type one of these characters to wrap the selection instead of replacing it:
| Type | Result |
|---|---|
| ` * _ ~ ” ’ | The same character on both sides |
| ( [ { < | The matching pair, such as (text) |
The wrapped text stays selected, so you can type another character to add a second pair, such as ** for bold.
Ctrl+Z undoes the wrap in one step.
Wrapping does not happen when Ctrl, Alt or Meta is held, or when nothing is selected.
The file editor is unchanged, because it already wraps brackets.
Commit history on phones
Section titled “Commit history on phones”The commit list fits narrow screens.
Author avatars and names stack, commit messages wrap, and dates show in short form, such as 3d ago or 2mo ago.
Hover over a date to see the full timestamp.
API documentation
Section titled “API documentation”The API reference at /api/swagger is rendered with Scalar instead of swagger-ui.
It has a sidebar, search, request examples for several languages and a client to send requests from the page.
/api/forgejo/swagger uses Scalar too.
The page loads nothing from outside the instance.
Scalar’s hosted fonts, its external API client link, its AI and MCP features and its telemetry are turned off.
Site administrators turn the page off with [api] ENABLE_SWAGGER, as described in Forgejo’s configuration cheat sheet.
Pinned issues
Section titled “Pinned issues”A repository can pin up to six issues, where Forgejo allows three.
Pinned issues show as compact cards above the issue list, three per row on wide screens.
Site administrators change the limit with [repository.issue] MAX_PINNED, described under Appearance and defaults.