Colophon
Goals
- A website to share myself, my writing, and my projects
- Minimal design
- Load and feel fast
- Easy content creation and updating
- Keep accessibility in mind
Source Code
The source code is available under MIT license. Issues and PRs are welcome especially if they align with the goals above. The following will redirect to the source code as well: koichi.io/source.
Why not open external links in a new tab/window?
Because I believe the user should have the full control over what they do. I once indicated the external link with an icon, but even then, they can’t open the link in the same tab if that’s set to be opened in a new tab, where as usually they can decide whether to open in a new tab if the link is not configured like that.
LLM Use and Disclosure
An LLM was used for this project to generate some code, and I don’t understand how some of them work, especially for CSS, while I still maintain them in high-level. This use of LLM is different from my general policy and preference, and it’s because a frontend development is not my particular interest, this is a non-serious personal website, and there will be no security concern as this is a simple static website.
Codeberg and Cloudflare Pages
If you’re looking for a way to host a static website on Cloudflare Pages while using Codeberg as a remote git repository, refer to this documentation and the Forgejo Actions’ config used in this repo. You need to set the environment variable in Codeberg. GitHub Actions–like syntax will mostly work on Forgejo Actions.
Credits for Technologies
This website is built with free technologies and hosted for free. To acknowledge the work of the maintainers and contributors, I list the major technologies directly used by this website. Excuse me for not listing all the dependencies.
- Astro for SSG (Static Site Generation)
- Tailwind CSS and CSS for styling
- Cloudflare Pages for website hosting
- Codeberg for source hosting
- Forgejo Actions and Cloudflare Wrangler for CD (Continious Deployment)
- feed for Atom feed generation
- MDX and JSON for content and data
- SVG and JPEG for graphics
- Fontsource for self-hosting fonts
- Iosevka for the main font family
- Lucide for SVG icons
- npm for package management
- Node.js for the JavaScript runtime
- Git for version control
- TypeScript as the main programming language
- Prettier, and EditorConfig for editing support