Host static websites with tildegit pages!
It's quick, easy, free & fast - just put your open source project's homepage, developer blog or web experiment into a Git repository at tildegit, and we'll do the rest.
Set up your repository
Create a public repository named pages
to make the site available at the main subdomain.
or
Create a branch pages in a repository:
git checkout --orphan pages git rm --cached -r .
Upload your files
Push your static content, HTML, style, fonts, images or anything else.
You're done!
Access your new website using this URL format:
https://USERNAME.tildepages.org[/REPOSITORY][/@BRANCH]
Custom Domains
To use a custom domain, create a file .domains in your repository with the domain name to use.
Then, add a DNS record to that domains:
CNAME [[branch.]repo.]user.tildepages.org
Or for zone roots where CNAME doesn't work:
ALIAS tildepages.org
TXT [[branch.]repo.]user.tildepages.org
If ALIAS isn't supported, use A & AAAA instead:
A 157.90.196.54
AAAA 2a01:4f8:252:3e22::54
+ TXT as above
Upstream documentation
Codeberg Pages allows you to easily publish static websites with a human-friendly address ({user-name}.tildepages.org
) via Git on Codeberg.org. Follow the simple steps below to get started, or check out the advanced usage below.
- Create a public repository named ‘pages’ in your user account or organization.
- Create static content, HTML, style, fonts or images. Name the homepage file
index.html
- Push your content to the main branch of the new repository.
- You should now be able to access your content using the domain
{user-name}.tildepages.org
.
See also https://tildepages.org/ or the Troubleshooting page.
Advanced Usage: Canonical URLs
The Codeberg Pages server responds to four different URLs:
https://raw.tildepages.org/username/reponame/
: raw content, uses correct MIME types (HTML is forbidden though) and is accessible with CORS.https://username.tildepages.org
: user page, points the default branch of a user’s or organization’spages
repositoryhttps://username.tildepages.org/reponame/
: repo page, points to thepages
branch of the repositoryhttps://example.org
: custom domain, points to a repo of choice as outlined below
In all cases, you can append a branch using an @
(e.g. https://username.tildepages.org/@develop/README.md
).
Custom Domains
Currently known pitfalls for failed certificates:
- you must either not have a CAA record, or explicitly allow LetsEncrypt there
For custom domains, two things are required: - a .domains
file in the repository (in the branch in question), containing a list of domains that shall be usable to access that repository: - One domain per line, you can leave lines empty and comment out lines with #
. - All domains (including *.tildepages.org
) will be redirected to the first domain in that file. - a CNAME record pointing to one of the following targets:
username.tildepages.org
→ https://username.tildepages.orgreponame.username.tildepages.org
→ https://username.tildepages.org/reponame/branchname.reponame.username.tildepages.org
→ https://username.tildepages.org/reponame/@branchname/
If you can’t use a CNAME record to configure the target (e.g. for a zone root), you can use an A/AAAA/ALIAS record to tildepages.org
with an additional TXT record for the target (just as shown above for CNAME records).
Having Questions, Feedback or found a bug?
The source code for Codeberg Pages is maintained over at the Pages Server repository, feel free to head there and providing some feedback, suggestions, bug reports or even patches. If you need general community support or have questions, Codeberg/Community is the better place, as more people will be watching there to help you out! We really appreciate your contribution.
Installing Pages for your own Gitea
Codeberg Pages works with any Gitea host out there. So if you are running your own Gitea, you can absolutely run it yourself and help with the development. Check out the Pages Server repository for more.