lauralani
9cb9849d70
All checks were successful
ci/woodpecker/push/deploy-netlify Pipeline was successful
23 lines
1.7 KiB
Markdown
23 lines
1.7 KiB
Markdown
---
|
|
title: "erisi: A self-hosted static site server"
|
|
description: "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."
|
|
summary: 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.
|
|
publishdate: "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](https://caddyserver.com) 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 =)
|