The code deployed to Codeberg. If you want to deploy Forgejo yourself or work on the code, check out: https://codeberg.org/forgejo/forgejo
  • Go 81.3%
  • go-html-template 10.7%
  • JavaScript 2.7%
  • CSS 2%
  • TypeScript 1.8%
  • Other 1.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Gusted 75227ebbf6
feat: search authorized key via fingerprint
Performance improvement. On Codeberg's database (MariaDB) the LIKE query
takes 200ms whereas the indexed WHERE query takes <= 1ms
2026-07-27 18:40:41 +02:00
.devcontainer chore: rename devcontainer name (#12356) 2026-05-01 00:20:15 +02:00
.forgejo Update actions/setup-forgejo to v3.2.3 (forgejo) (#13154) 2026-06-21 03:42:54 +02:00
.semgrep [v16.0/forgejo] chore(refactor): add getter/setter to APIContext data members (#13213) 2026-06-27 18:27:57 +02:00
assets chore: remove EXIF stripping capability due to usage of AGPL licensed exif-terminator library (#13105) 2026-06-17 16:16:35 +02:00
build fix: introduce lint-single-response to prevent control flow continuing past a ctx.Error(...)-style method (#13087) 2026-06-14 17:06:03 +02:00
cmd feat: search authorized key via fingerprint 2026-07-27 18:40:41 +02:00
contrib CB/contrib: Change default label set 2026-07-16 12:05:53 +02:00
custom/conf [v16.0/forgejo] chore: document SSH_ALLOW_UNEXPECTED_AUTHORIZED_KEYS (#13569) 2026-07-22 07:14:46 +02:00
docker fix: remove default 'REVERSE_PROXY_TRUSTED_PROXIES = *' from docker config (#12782) 2026-05-28 13:52:03 +02:00
models feat(admin): add menu to edit user quota groups 2026-07-27 18:37:52 +02:00
modules feat: search authorized key via fingerprint 2026-07-27 18:40:41 +02:00
options feat(admin): add menu to edit user quota groups 2026-07-27 18:37:52 +02:00
public CB/perf: serve logo from Forgejo assets 2026-07-16 13:16:18 +02:00
release-notes [v16.0/forgejo] feat: render OSC 8 sequences safely (#13324) 2026-07-06 15:42:02 +02:00
release-notes-published chore(release-notes): Forgejo v15.0.3 (#13033) 2026-06-10 07:53:28 +02:00
releases/images [DOCS] RELEASE-NOTES.md 2024-02-05 14:44:32 +01:00
routers feat: search authorized key via fingerprint 2026-07-27 18:40:41 +02:00
services feat(admin): add menu to edit user quota groups 2026-07-27 18:37:52 +02:00
templates feat(admin): add menu to edit user quota groups 2026-07-27 18:37:52 +02:00
tests feat: search authorized key via fingerprint 2026-07-27 18:40:41 +02:00
tools chore: move backend-checks CI checks to Makefile: make pr-go (#11053) 2026-02-17 02:41:40 +01:00
web_src CB/feat: ToU announcement 2026-07-23 01:48:31 +02:00
.air.toml chore: rename 'migrations' to 'gitea_migrations' 2025-10-14 14:40:49 -06:00
.deadcode-out [v16.0/forgejo] chore(refactor): remove GetX redundant accessors and use X in services/context/api.go (#13217) 2026-06-27 22:44:01 +02:00
.dockerignore fix: Dockerfile should re-use bindata files when possible 2025-06-13 14:00:57 +02:00
.editorconfig chore: rename codeberg themes to codeberg-legacy 2026-07-16 13:19:49 +02:00
.envrc.example Make direnv optional to let developers use their own direnv configuration 2024-11-06 20:34:49 +01:00
.gitattributes Add interface{} to any replacement to make fmt, exclude *.pb.go (#30461) 2024-04-15 20:01:36 +02:00
.gitignore feat: adds option to force overwrite new branch for /contents route (#12663) 2026-06-06 16:45:57 +02:00
.gitmodules cleanup(tests): remove manual testing submodule 2024-04-21 10:13:51 +02:00
.gitpod.yml Remove sqlite-viewer and using database client (#31223) 2024-06-09 11:13:39 +02:00
.golangci.yml chore(refactor): run routers/api/v1/permissions/tests from tests/integration (#13157) 2026-06-21 21:43:57 +02:00
.ignore Add /options/license and /options/gitignore to .ignore (#30219) 2024-04-07 15:40:31 +02:00
.mailmap Add .mailmap with aliases for Unknwon (github.com/Unknwon) 2024-08-14 08:26:16 -04:00
.markdownlint.yaml Update JS dependencies (#28537) 2023-12-30 05:29:03 +00:00
.mockery.yml feat: evaluate action job's if on the server-side when possible (#13030) 2026-06-16 00:02:57 +02:00
.node-version Update nodejs to v24.17.0 (forgejo) (#13144) 2026-06-20 02:23:03 +02:00
.npmrc Upgrade to npm lockfile v3 and explicitely set it (#23561) 2023-03-18 19:38:10 +01:00
.release-notes-assistant.yaml chore: fix rna config (#12304) 2026-04-28 18:56:52 +02:00
.spectral.yaml Add spectral linter for Swagger (#20321) 2022-07-11 18:07:16 -05:00
.yamllint.yaml fully replace drone with actions (#27556) 2023-10-11 06:39:32 +00:00
BSDmakefile feat: Makefile & BSDmakefile changes (#7455) 2025-04-27 10:04:32 +00:00
CODEOWNERS chore: update codeowners (#12844) 2026-05-31 14:42:17 +02:00
CONTRIBUTING.md chore: mention CoC and highlight AI agreement in CONTRIBUTING.md (#12867) 2026-06-01 16:17:35 +02:00
DCO Remove address from DCO (#22595) 2023-01-24 18:52:38 +00:00
Dockerfile Update data.forgejo.org/oci/golang Docker tag to v1.26 (forgejo) (#11662) 2026-03-13 08:17:21 +01:00
Dockerfile.rootless Update data.forgejo.org/oci/golang Docker tag to v1.26 (forgejo) (#11662) 2026-03-13 08:17:21 +01:00
eslint.config.mjs Update linters (forgejo) (#11627) 2026-03-12 18:27:43 +01:00
flake.lock chore: update flake.lock; add gnupg as dependency (#12497) 2026-05-09 23:53:35 +02:00
flake.nix refactor: Simplify flake.nix (#9805) 2025-10-22 19:09:11 +02:00
go.mod Merge remote-tracking branch 'forgejo/v16.0/forgejo' into codeberg-16 2026-07-20 09:29:00 +02:00
go.sum Merge remote-tracking branch 'forgejo/v16.0/forgejo' into codeberg-16 2026-07-20 09:29:00 +02:00
LICENSE Forgejo v9.0 is GPLv3+ 2024-08-22 09:09:29 +02:00
main.go fix: do not mix urfave v2 with urfave v3 (#8168) 2025-06-12 15:38:03 +02:00
Makefile CB/fix: Drop forgejo Makefile dependency 2026-07-16 13:15:40 +02:00
manifest.scm chore: add delve Go debugger to Guix manifest (#12662) 2026-05-22 11:09:11 +02:00
package-lock.json Update dependency svgo to v4.0.2 [SECURITY] (v16.0/forgejo) (#13573) 2026-07-22 01:01:25 +02:00
package.json Update dependency svgo to v4.0.2 [SECURITY] (v16.0/forgejo) (#13573) 2026-07-22 01:01:25 +02:00
playwright.config.ts chore(e2e): refactor "Toggle visibility" org-members test (#12871) 2026-06-02 14:52:01 +02:00
README.md CB/meta: Add custom README for Codeberg's fork (!82) 2026-07-16 13:15:19 +02:00
release-notes-assistant.sh fix(rna): prioritize breaking changes without a feature or bug label over non-breaking changes (#12124) 2026-04-17 15:24:58 +02:00
RELEASE-NOTES.md chore(release-notes): fix release notes of chroma update in v8.0.0 2025-10-05 17:10:38 +05:00
shell.nix chore: update flake.lock; add gnupg as dependency (#12497) 2026-05-09 23:53:35 +02:00
stylelint.config.js chore: enforce RTL-friendly logical CSS properties with a linter (#12491) 2026-05-11 00:20:45 +02:00
tailwind.config.js chore(ui): change /devtest to /-/demo (#11019) 2026-01-26 13:12:25 +01:00
tsconfig.json feat(ui): replace Monaco with CodeMirror (#10559) 2026-01-04 23:52:33 +01:00
vitest.config.ts feat(ui): replace Monaco with CodeMirror (#10559) 2026-01-04 23:52:33 +01:00
webpack.config.js CB/ui: Landingpage renovation (!35) 2026-07-16 12:46:08 +02:00

Forgejo (Codeberg)

Codeberg's fork of Forgejo, a self-hosted lightweight software forge.

Some changes made to Forgejo's source code are:

  • Codeberg-specific themes
  • Codeberg's custom landing page
  • Codeberg's custom footer
  • Various optimizations necessary for running a large instance
  • Dirty hacks that we needed to deploy as soon as possible

Some of our patches may be helpful if you wish to operate a large Forgejo instance. However, this repository as a whole contains a custom version of Forgejo that is explicitly not intended for private use.

Codeberg and Forgejo work together, but, as projects, they remain separate. For more information about Forgejo and its relationship with Codeberg, take a look at Forgejo's FAQ.

Reporting Issues

If you wish to report an issue for the changes that Codeberg has made or are not sure where you should open an issue for a service hosted by Codeberg, please create an issue on Codeberg/Community.

Additionally, Forgejo maintains its own Issue Tracker for bug reports and feature requests.

Hosting

If you wish to host Forgejo on your own, please visit forgejo.org.

You can find some other repositories that help us operate codeberg.org in the Codeberg-Infrastructure organisation.

Our instance's Forgejo configuration files can be found here: Codeberg-Infrastructure/build-deploy-forgejo

Tip

The configuration files include the settings required to enable the Codeberg-specific Forgejo themes, i.e. codeberg-auto, codeberg-light, codeberg-dark in your local Forgejo instance.

Contributing

We follow the upstream Forgejo tree and most of the decisions that they make for everyone else.

If you want to send a patch to codeberg.org, the best way to do that is probably sending a patch to Forgejo.

Branding

Codeberg has a set of design-related guidelines, which can be found here.

Reporting Vulnerabilities

See security.txt