1
0
Fork
You've already forked Documentation
0
Codeberg Documentation – tutorials, how-to's and other Codeberg-specific resources for users.
CSS 50.9%
Nunjucks 38.1%
JavaScript 9.9%
Dockerfile 1.1%
2025年07月18日 15:44:30 +08:00
.forgejo/ISSUE_TEMPLATE feat: add contact links in issue template ( #596 ) 2025年05月28日 00:19:53 +02:00
.vscode Add VS Code extension recommendations ( #464 ) 2024年08月12日 12:36:32 +00:00
.woodpecker chore(deps): update docker.io/woodpeckerci/plugin-prettier docker tag to v1.3.1 ( #632 ) 2025年06月26日 02:10:20 +02:00
assets/css feat: use Eleventy's image plugin for image transformation ( #488 ) 2024年11月29日 06:12:05 +00:00
content small addition to fix the grammar 2025年07月18日 15:44:30 +08:00
.cspell.json Security section: small additions ( #634 ) 2025年07月01日 20:59:00 +02:00
.editorconfig Add woodpecker ci & many linters (and their required fixes) ( #377 ) 2024年06月11日 07:51:22 +00:00
.editorconfig-checker.json fix: linter file rename, ignore stackoverflow links 2025年06月11日 22:42:52 +02:00
.gitignore feat: use Eleventy's image plugin for image transformation ( #488 ) 2024年11月29日 06:12:05 +00:00
.lycheeignore fix: linter file rename, ignore stackoverflow links 2025年06月11日 22:42:52 +02:00
.markdownlint.yaml Lint the documentation ( #626 ) 2025年06月14日 15:39:01 +02:00
.prettierignore prettier: ignore pnpm lock 2024年06月15日 10:39:12 +02:00
.prettierrc.json Add woodpecker ci & many linters (and their required fixes) ( #377 ) 2024年06月11日 07:51:22 +00:00
.yamllint.yaml Add woodpecker ci & many linters (and their required fixes) ( #377 ) 2024年06月11日 07:51:22 +00:00
cspell.json Add woodpecker ci & many linters (and their required fixes) ( #377 ) 2024年06月11日 07:51:22 +00:00
Dockerfile chore(deps): update node.js to v16 ( #442 ) 2024年06月18日 14:44:27 +00:00
eleventy.config.mjs chore: disable avif transcoding ( #495 ) 2024年11月30日 13:13:22 +00:00
LICENSE.md Reduce line length limit and format content ( #623 ) 2025年06月14日 11:38:21 +02:00
package.json fix: broken node lockfiles 2025年06月14日 10:02:45 +02:00
pagefind.yml Add search functionality ( #370 ) 2023年11月30日 21:33:22 +00:00
pnpm-lock.yaml chore(deps): lock file maintenance ( #637 ) 2025年07月12日 02:22:52 +02:00
README.md Reduce line length limit and format content ( #623 ) 2025年06月14日 11:38:21 +02:00
renovate.json chore: Configure Renovate ( #433 ) 2024年06月11日 07:47:06 +00:00

Codeberg Documentation

This repository contains the documentation for Codeberg, with some code to build it into a static website.

Please have a look into it and consider to help writing the Documentation. This is still very much work-in-progress, the more useful material we collect, the better we can later present it! All contributions are very welcome!

For an introduction on contributing to Codeberg Documentation, please have a look at the section on improving the documentation.

Usage

Local Development

If you want to work on the documentation, for example by writing your own articles, the easiest way to do so is to fork the documentation repository and develop locally.

First, run

pnpm install

to install all dependencies (they will be installed only for this project, not globally). You only have to do this once.

Then run

pnpm run serve

to start a development web server that by default is listening at http://localhost:8080.

Now you can simply change, add or remove files, save them and the development server should automatically reload all changed pages using the amazing Browsersync.

When you're done, commit your changes to your fork and write a pull request for Codeberg/Documentation. We're happy about every contribution!

Local development using the Dockerfile

If you do not have nodejs installed or do not want to run the development web server directly on your host, you can also use a docker container.

You must have a container-engine installed (docker, podman, etc.)

First build the container image:

docker build -t Codeberg/Documentation-server .

You do not have to rebuild the image every time. Once you build the image you can always start the development webserver using the container engine:

docker run --rm -v $PWD:/opt/documentation Codeberg/Documentation-server:latest

Use the "External" URL the container outputs on startup to access your documentation.

Changes to files in the documentation are reflected in the browser as the server regularly updates the generated files.

Use Ctrl-C to exit / end the container.

The parameters are:

--rm removes the container after it's use -v mounts the current (documentation repository root) folder to /opt/documentation in the container.

Codeberg/Documentation-server:latest refers to the container image built in the first step (using docker build).

Build & Deployment

Like for local development, before building and deploying you first have to install the dependencies (once):

pnpm install

To build the entire website to the _site directory run

pnpm run build

Instead, to directly publish the page to Codeberg pages, you can also run

pnpm run deploy

which includes a call to pnpm run build.

Technical Information

This website uses Eleventy, a static site generator.

It's supplied as a dev-dependency in package.json and its dependencies are locked with package-lock.json to try to ensure reproducible builds.

It also uses PageFind, a static search library.

Deployment previews are generated for every PR using Surge.sh through the corresponding Woodpecker plugin.

A spellchecker is used to check for spelling errors in the documentation. To add exceptions to the spellchecker, add them to the .cspell.json file.

This project is deployed to Codeberg via a cron job executed on the Codeberg infrastructure.

License and Contributors

This website (excluding bundled fonts) is licensed under CC BY-SA 4.0. See the LICENSE file for details.

Please refer to the commit log for an exhaustive list of contributors to Codeberg Documentation.