No description
Find a file
2026-04-30 14:31:02 +07:00
content/posts docs: new draft post 2026-03-14 14:50:23 +07:00
public chore: cleanup HTMX 2025-08-12 20:10:55 +07:00
src feat: add Bluesky and Tangled to contact 2026-04-30 14:31:02 +07:00
tests/load test: initial load test with 10000 virtual users 2024-10-05 12:43:41 +07:00
.dockerignore build: use nixos/nix as the base image 2025-11-04 13:02:43 +07:00
.envrc feat: add intro component 2023-07-07 18:45:45 +07:00
.gitignore refactor: add more error handling and logging 2023-08-02 00:37:22 +07:00
bacon.toml build!: change build tools to Leptos 2025-08-12 20:10:55 +07:00
build.rs docs: new draft post 2026-03-14 14:50:23 +07:00
Cargo.lock feat: add Atom feed 2026-02-24 15:18:00 +07:00
Cargo.toml feat: add Atom feed 2026-02-24 15:18:00 +07:00
Dockerfile build: use nixos/nix as the base image 2025-11-04 13:02:43 +07:00
flake.lock build: upgrade to NixOS 25.11 2026-01-01 16:25:46 +07:00
flake.nix build: upgrade to NixOS 25.11 2026-01-01 16:25:46 +07:00
LICENSE.md Add LICENSE 2021-09-10 12:25:31 +07:00
Makefile build!: change build tools to Leptos 2025-08-12 20:10:55 +07:00
README.md perf: very fast link navigation 2025-08-12 20:10:55 +07:00

khuedoan.com status

This is the source code of my personal website at khuedoan.com, built with:

You can check out older branches for previous implementations:

Project structure

  • content/: content written in Markdown
  • src/: pages and components
  • public/: static assets
  • build.rs: build logic for rendering Markdown to HTML

Content convention

content
└── posts
    └── example-post.md
public
├── any-static-file-here.txt
└── images
    ├── avatar.jpg
    └── cat-picture.jpg

Posts are placed in content/posts, each post is a Markdown file. Here's an example post:

## Example heading

![Files inside `./public` can be referenced by your code starting from the base URL](/images/cat-picture.webp)

Lorem ipsum dolor sit amet, consectetur adipiscing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Development

Open a shell that provides the build environment (requires Nix):

nix develop

Run the development server:

make dev

Then open http://localhost:3000.

Deployment

Acknowledgements