Website review
This review may include AI-generated content and is not individually verified. Domain, certificate and other facts come from the observed data on this page.
What is sourcehut pages?
Sourcehut Pages is a hosting service for static websites, run as part of the Sourcehut suite of open-source developer tools. You build your site locally with any static site generator, then publish the resulting files; Sourcehut serves them over HTTPS without you managing a server.
Two hosting options are built in:
- A free subdomain. Every Sourcehut user gets
username.srht.site, which makes it possible to publish something within minutes of signing up. - Your own domain. You can point a custom domain at the service if you want a branded address.
Because the output is plain static files, the generator is your choice. The page names Jekyll, Hugo and Doxygen as examples, and explicitly welcomes custom or in-house generators. TLS certificates are handled automatically, so you do not need to provision or renew them yourself.
Who it suits
- Developers already using Sourcehut for repositories, issue tracking, CI or mailing lists, who want docs or project pages in the same place.
- People publishing documentation generated by tools like Doxygen alongside source code.
- Anyone who wants a small, low-maintenance site and is comfortable with a command-line or CI-based publishing workflow.
It is a weaker fit if you need server-side code, databases, form processing or a graphical site builder. Static hosting means exactly that: what you upload is what visitors get.
What to weigh
The main trade-off is control versus convenience. You gain automatic TLS, a ready-made domain and deployment that can be scripted, but you give up dynamic back ends and must generate the site yourself. The page also notes a limitations section, so check that before committing if you have unusual requirements around file sizes, redirects or headers. Deployment can be automated, and there are REST and GraphQL APIs plus Gemini protocol support for those who want them.
Next step
If you already have a Sourcehut account, generate your site into an output directory and follow the quick start to publish it under username.srht.site; add a custom domain once the content looks right. If you are still choosing a platform, compare it against general-purpose static hosts such as Netlify or GitHub Pages, and weigh how much you value staying inside one toolchain.
How do I publish a static website with sourcehut pages?
Publish a static site on sourcehut pages by pushing your generated HTML into a special Git repository on sourcehut; the service builds and serves it automatically. Every sourcehut user gets a username.srht.site subdomain, and you can attach your own domain. The page lists Jekyll, Hugo, Doxygen and “your cool new one” as valid generators, so any tool that outputs static files works.
The basic workflow
- Create a repository on sourcehut named
username.srht.site(or the domain you intend to use). - Generate your site locally with your static site generator of choice.
- Commit and push the generated output to that repository.
- sourcehut pages serves the files and provisions TLS automatically.
- Optionally add a custom domain via the “Custom domains” resource.
What you get and what to watch
- Zero-config TLS is handled for you, including on the default subdomain.
- Bring your own domain is supported, so you are not locked into the srht.site address.
- Automation is possible: the page links to “Automating deployments” and offers REST and GraphQL APIs, so you can trigger builds from CI rather than pushing by hand.
- Gemini support is listed as an additional feature, which is unusual and useful if you also publish a Gemini capsule.
- Limitations are documented separately — read that page before committing to the service for a large or high-traffic site.
A concrete example
A developer maintaining an open-source project already hosts the Git repository on sourcehut. They add a username.srht.site repository, point Hugo at it, and push the public/ output. Project documentation, release notes and a landing page go live at username.srht.site with working HTTPS. Later they map docs.example.com to the same repository using the custom domains guide.
Decision criterion
Choose sourcehut pages if you already use sourcehut for repositories or mailing lists and want static hosting that fits the same account and tooling. If you need a JavaScript runtime, server-side rendering or a database, this is not the right tool — it is explicitly for static websites.
Next step
Read the “Quick start” and “Limitations” pages first; the quick start is short enough to get a first deploy done in minutes, and the limitations page tells you whether your generator’s output will work as-is. For a broader comparison of static hosting options, see GitHub Pages and Netlify.
Can I use my own custom domain with sourcehut pages?
Yes. Sourcehut Pages lets you publish under your own domain as well as the default username.srht.site address. The page describes this as "BYOD" (bring your own domain), so a custom domain is a supported option rather than a workaround.
A practical next step is to decide how you want the domain configured before you generate your site. If you plan to serve a project site from a subdomain, such as docs.example.com, that is usually simpler to set up than a root domain. If you want the root domain itself, check whether your DNS provider supports the record types needed for the service and whether you are comfortable managing those records.
For a concrete scenario: a small open-source project might publish documentation built with Hugo or Doxygen to project.example.com, while keeping the sourcehut-hosted Git repository and issue tracker separate. The site remains static, so there is no server-side runtime to maintain, and TLS is handled automatically according to the page. The trade-off is that static hosting is not suitable for applications that need server-side code, databases or dynamic form processing.
If you are weighing alternatives, GitHub Pages and Netlify also support custom domains with static publishing, each with different build and deployment workflows. The main reason to choose Sourcehut Pages is if you already use Sourcehut for repositories, bug tracking, continuous integration or mailing lists and want your website in the same environment.
How do I use Jekyll or Hugo with sourcehut pages?
Publish your Jekyll or Hugo site to sourcehut pages by building it locally or in CI, then uploading the generated static files to your pages site. sourcehut pages is a static hosting tool for sourcehut users; every account gets a username.srht.site domain and can also bring a custom domain. It accepts any content generator, explicitly including Jekyll and Hugo, so the workflow is the same as hosting on any static host: the generator produces a folder of HTML, CSS, and assets, and pages serves that folder.
Typical workflow
- Build the site. For Jekyll, run
jekyll buildand use the resulting_sitedirectory. For Hugo, runhugoand use the resultingpublicdirectory. The output directory is what gets published, not your source templates. - Upload the build output to your sourcehut pages site. You can do this manually, or automate it so each push rebuilds and republishes. sourcehut pages documents custom domains, automating deployments, permissions, and advanced settings, plus a quick start that claims you can get published in about 3 minutes.
- Point visitors at the result. Use the provided
username.srht.sitesubdomain, or configure a custom domain if you want your own name.
Jekyll vs. Hugo in this setup
| Consideration | Jekyll | Hugo |
|---|---|---|
| Build output | _site |
public |
| Runtime | Ruby-based; needs Ruby and gems | Single binary; no runtime dependency |
| Build speed | Usually slower on large sites | Typically very fast |
| Fit with sourcehut pages | Works because pages serves static output | Works because pages serves static output |
The key point is that sourcehut pages does not run Jekyll or Hugo for you in the way some hosts integrate a specific generator. It publishes static files, so whichever generator you choose must run before deployment — on your machine or in a CI job.
Practical example
A writer maintaining a Hugo blog could keep the Markdown content in a sourcehut git repository, run hugo in a CI step on each commit, and upload public/ to pages. A developer documenting a library with Jekyll could do the same with _site. If you prefer a different generator, the page also names Doxygen and "your cool new one," so the approach is not limited to these two.
Decision criteria
- Choose Hugo if you want fast builds and a single binary with no Ruby setup.
- Choose Jekyll if you already have a Jekyll theme or Ruby tooling you want to keep.
- Automate deployment if the site changes often; manual uploads are fine for occasional updates.
Next step: open the sourcehut pages quick start and follow it once with a minimal site to confirm your build directory and domain work before wiring up automation. The official sourcehut project is at sourcehut; for generator-specific configuration, see Jekyll and Hugo.
How can I automate deployments to sourcehut pages?
Automate deployments to sourcehut pages by driving the same publish step you would use manually from a script or CI job, then triggering that job whenever your site's source changes.
The basic pattern
- Keep the site source (Markdown, templates, config) in a git repository.
- Have your build step run your generator — Jekyll, Hugo, Doxygen, or a custom one — to produce static output.
- Publish that output to sourcehut pages using the deployment method described in the service's "Automating deployments" documentation, authenticated with a token or SSH key held as a CI secret.
- Trigger the job on push, on a schedule, or manually.
Where to run the job
- sourcehut builds: natural fit if your repository already lives on sourcehut; the build service can run the generator and publish in one pipeline.
- External CI (GitHub Actions, GitLab CI, etc.): workable if the runner can authenticate to sourcehut and push the built output.
- A cron job on your own machine or server: simplest for small sites, but it depends on that machine being up and correctly configured.
Practical notes
- Build first, publish second. Only the generated output directory should be deployed, not your raw source.
- Keep credentials out of the repository. Use CI secrets or a dedicated deploy key.
- Pin your generator version so a tool upgrade doesn't silently change the output.
- Test the pipeline on a branch or a staging domain before pointing your main domain at it.
Choosing an approach
| Situation | Sensible choice |
|---|---|
| Repo hosted on sourcehut | sourcehut builds pipeline |
| Repo hosted elsewhere | External CI with a deploy token |
| One-person hobby site | Cron job or manual script |
| Multiple contributors | CI with review before publish |
For the exact commands, token scopes and configuration keys, read the "Automating deployments" and "Quick start" pages in the sourcehut pages documentation at sourcehut pages, since those details change with the service.
What are the limitations of sourcehut pages?
Sourcehut pages is a static-site hosting tool, so its limitations follow from that design. The page lists a "Limitations" section but does not spell out the constraints in the supplied excerpt, so the points below are the practical boundaries of static hosting rather than a quoted feature list.
What it cannot do
- No server-side code: no PHP, Python, Ruby, Node or database-backed pages. Anything dynamic must be pre-rendered at build time or handled by a separate service.
- No built-in forms, comments, search or authentication. You would add third-party services or client-side JavaScript.
- Builds are not run for you in the way a Git-push platform might: you generate the output with your own generator (Jekyll, Hugo, Doxygen, or your own) and publish the result.
- Content is public by definition. There is no private staging area with access control beyond the permissions you configure.
- Large media libraries, high-traffic spikes and bandwidth-heavy assets are a poor fit for simple static hosting; plan for a CDN or external asset host if that is your use case.
Where it fits instead
It suits documentation sites, project landing pages, blogs, generated API references and personal sites where the output is a folder of HTML, CSS and assets. The pitch is speed: the page claims you can get published in about 3 minutes, with automatic zero-config TLS and either the username.srht.site domain or your own.
A concrete decision test
Ask two questions before choosing it:
- Does my site need to run code per request? If yes, look elsewhere.
- Can I produce a static output directory locally or in CI? If yes, sourcehut pages is a reasonable fit.
If you already use sourcehut for Git hosting, bug tracking or mailing lists, the main advantage is keeping everything under one account. If you only need static hosting and prefer a Git-push workflow with built-in build steps, compare with GitHub Pages or Netlify, which automate more of the build pipeline.
Next step: read the "Limitations" and "Advanced settings" pages in the sourcehut pages documentation before committing, since those will state the exact quotas and constraints that apply to your account.
User reviews (0)