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
Codeberg Pages allows you to easily publish static websites with a human-friendly address ({user-name}.codeberg.page
) 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}.codeberg.page
.
See also https://codeberg.page/ or the Troubleshooting page.
Advanced Usage: Canonical URLs
The Codeberg Pages server responds to four different URLs:
https://raw.codeberg.page/username/reponame/
: raw content, uses correct MIME types (HTML is forbidden though) and is accessible with CORS.https://username.codeberg.page
: user page, points the default branch of a user’s or organization’spages
repositoryhttps://username.codeberg.page/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.codeberg.page/@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 *.codeberg.page
) will be redirected to the first domain in that file. - a CNAME record pointing to one of the following targets: