1.7 KiB
title | description | summary | publishdate |
---|---|---|---|
erisi: A self-hosted static site server | Project outline page for erisi. erisi is planned to be a self-hosted alternative to Netlify/Vercel/Github Pages/etc... written in Go and utilizing Caddy and it's ACME capabilities. | Project outline page for erisi. erisi is planned to be a self-hosted alternative to Netlify/Vercel/Github Pages/etc... written in Go and utilizing Caddy and it's ACME capabilities. | 2023-08-30 |
Summary
erisi
is planned to be a self-hosted alternative to Netlify/Vercel/Github Pages/etc... written in Go and utilising Caddy and its ACME capabilities.
Implementation Ideas
The main service will consist of a Caddy instance (maybe later replaced with its own application logic for subdomain handling, TLS termination, and ACME) that serves as an HTTPS entry point and host for static website data.
The erisi
server will serve a registration and configuration page, where you can add new websites (like with netlify) and see what you need to do (in terms of CNAME- and CAA-Records) to enable custom domains. It will then create directories per user and therein per repository/website (think /base-dir/user-guid/project-guid
as the path), and communicate the (custom) domain and webroot path to caddy.
There should also be an erisi
cli application for deploying websites to the server. Maybe it should compress a given folder, hash it and send it to the server, handling authentication in the process.
Maybe later something like netlify's netlify.toml
can be implemented to handle custom headers and redirects/rewrites :3
The whole server stack shall be available via Docker Compose at least
Feedback
Any ideas can be directed to dev@lauka.net =)