This should solve #318. Helped-by: Linus Groh <firstname.lastname@example.org> Reviewed-by: Panagiotis "Ivory" Vasilopoulos <email@example.com> Reviewed-by: Linus Groh <firstname.lastname@example.org> Reviewed-on: #369 Co-authored-by: oatbiscuits <email@example.com> Co-committed-by: oatbiscuits <firstname.lastname@example.org>
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.
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.
to install all dependencies (they will be installed only for this project, not globally). You only have to do this once.
npm run serve
to start a development web server that by default is listening at
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.
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
Build & Deployment
Like for local development, before building and deploying you first have to install the dependencies (once):
To build the entire website to the
_site directory run
npm run build
Instead, to directly publish the page to Codeberg pages, you can also run
npm run deploy
which includes a call to
npm run build.
This website uses Eleventy, a static site generator.
It's supplied as a dev-dependency in
package.json and its dependencies are locked
package-lock.json to try to ensure reproducible builds.
It also uses PageFind, a static search library.
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.