My personal blog built to host my articles. Here is a list of the features:
- Minimal dependencies, build output is less than 1MB
- Custom-built auth system, with oauth providers
- Edge network compatible, working with all popular runtimes
- Lighthouse 100% on all metrics on all pages
- A+ on security, with headers, strict CSP & security.txt
- SEO optimization with robots.txt & sitemap
- Perfect accessibility with light and dark modes, with client page transitions
- No vendor lock-in, self-hostable with 100% of the features by changing the deploy commands and Astro adapter (e.g.
@astro/node
)
Note
The runtime needs to have access to the Web Crypto API
- CI/CD Actions (test, deployment)
- Add headers links
- Add analytics
- Remove React to use web components
- Add SRI
- If you're hosting on Cloudflare, you need to disable
Speed Brain
. This features isn't compatible with a strict CSP and prefetching is already done inside Astro. - CSP nonce is currently generated in the middleware which defeats the purpose of a strong CSP. There is no alternatives currently in Astro.
- Currently BiomeJS partialy supports Astro files. The component script is linted/formatted but not the template part. See the documentation
The custom authentification was inspired by the Lucia Auth project.