- JavaScript 35.8%
- CSS 29.1%
- HTML 23.7%
- Shell 11.4%
| .devcontainer | ||
| .forgejo/workflows | ||
| .vscode | ||
| docker | ||
| docs/src | ||
| preview | ||
| src | ||
| .gitattributes | ||
| .gitignore | ||
| docentries.md | ||
| LICENSE | ||
| README.md | ||
🛑 Kawaii error pages: your server crashed, but at least it looks cute!
📖 Overview
Kawaii Error Pages is a lightweight, customizable set of static HTML error pages designed for use with Traefik or any web server. It lets you replace generic HTTP error screens with clean, themed pages that match your brand, complete with custom messages, optional images, and simple templating. The project is intentionally minimal—just HTML, a small Node build script, and YAML configuration—so you can easily adapt it without adding heavy dependencies.
Kawaii error pages features the Menhera sticker pack and a ribbon.js background.
⚠️ If you are reading this on GitHub, be aware this repository is a mirror of a Forgejo-hosted project!
If you're looking to contribute or report issues, please see the Repository Mirror Notice section below.
📚 Documentation
You can read the documentation on the Git&Tonic Wiki
🖼️ Screenshots gallery
Below are previews of the provided error pages. Click any image to view it in full.
Client Errors
400 — Bad Request
401 — Unauthorized
403 — Forbidden
404 — Not Found
418 — I'm a teapot
Server Errors
500 — Internal Server Error
502 — Bad Gateway
Dependencies and assets
The page makes use of ribbon.js for the coloured ribbon effect in the background. FontAwesome for the GitHub icon and Google Fonts for the Libre Franklin font.
The ribbon.min.js is slightly different than the one from the official repo, having an additional parameter 'colseed' acting as a seed for the initial colour of the ribbon. This allows to have a consistent, but different ribbon colour for each error page.
These dependencies, as well as other assets, are all included in the repo, but
hardcoded to be served via a my personal CDN, cdn.dsme.cc. If you would like
to use your own CDN instead, it is safe to search and replace all occurrences of
cdn.dsme.cc with your CDN address in all *.html files in the root of the
repo.
🌐 Repository mirror notice
This repository is hosted on a Git&Tonic, a self-hosted, single-user Forgejo instance I use for my personal project. Because of the single-user nature of this Git server instance, the visibility of the repository is limited and direct contributions to the project from the broader open source community are not possible.
To expand the reach of the project and allow for user contributions, a pull-only mirror of this repository is also available on GitHub, and you might as well be reading this very same README.md file from said mirror.
If you are accessing this repository on GitHub, however, please note that:
- 🏠 This is not the primary development location and the canonical repository lives on Git&Tonic
- 💬 The GitHub repository issue tracker is available and can be used for reporting bugs or suggestions, but features directly integrating with the code base will be ignored.
- 📬 The GitHub repository pull requests are available and I am welcoming discussion on the platform regarding these contributions, but the associated commits will not be merged here directly and will be manually applied on the source repository on Git&Tonic.
I would like to highlight how developing on an independent Forgejo instance such as Git&Tonic, despite the additional maintenance effort and its negative effect on the repository availability, can strengthen independence, control, and long-term resilience by reducing our reliance on centralized platforms.
Join us developers fostering the decentralization of open-source software!
⚖️ License
This image is licensed under GNU General Public License v3.0.
Some of the libraries included in this repository (e.g. ribbon.js, FontAwesome, etc.) may be covered under a difference license.
Please remember it is your responsibility as the end-user to ensure that your use case complies with the licenses of all included software.






