Mirror of source code of my personal website hosted on Vercel, https://youwen.dev
Find a file
Youwen Wu 0c3bab1f7a
Some checks failed
Check Spelling / Check Spelling (push) Has been cancelled
Check Spelling / Update PR (push) Has been cancelled
Check Spelling / Report (Push) (push) Has been cancelled
Check Spelling / Report (PR) (push) Has been cancelled
style: keep cursor on terminal bit
2024-08-28 17:04:43 -07:00
.github ci(chk spelling): update recognized words 2024-05-13 01:14:43 -07:00
.vscode style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
blog/2024 fix: stop build crashing from blog link 2024-06-29 03:44:59 -07:00
src style: keep cursor on terminal bit 2024-08-28 17:04:43 -07:00
static feat: add portfolio page 2024-06-28 22:35:45 -07:00
tests style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
.envrc feat: add flake lock and direnv 2024-08-17 13:02:52 -07:00
.eslintignore initial commit 2024-04-02 17:35:26 -07:00
.eslintrc.cjs fix: add global types to eslint 2024-05-05 21:07:54 -07:00
.gitignore feat: add flake lock and direnv 2024-08-17 13:02:52 -07:00
.mdlintrc blog: make some small metadata changes 2024-04-25 01:02:19 -07:00
.npmrc initial commit 2024-04-02 17:35:26 -07:00
.prettierignore initial commit 2024-04-02 17:35:26 -07:00
.prettierrc.toml style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
components.json chore: rename pcss to css for lsp support 2024-05-05 21:32:02 -07:00
default.nix add nix stuff 2024-05-22 13:14:13 -07:00
flake.lock feat: add flake lock and direnv 2024-08-17 13:02:52 -07:00
flake.nix add nix stuff 2024-05-22 13:14:13 -07:00
LICENSE chore: update license and readme 2024-04-03 16:30:36 -07:00
package.json chore: remove unused zilla slab font 2024-05-05 21:56:37 -07:00
playwright.config.ts style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
pnpm-lock.yaml feat: add about me page and update some styles 2024-06-28 21:35:35 -07:00
post.schema.json style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
postcss.config.js style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
README.md chore: format readme 2024-06-28 17:36:00 -07:00
svelte.config.js style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
tailwind.config.js chore: remove unused zilla slab font 2024-05-05 21:56:37 -07:00
tsconfig.json style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00
vite.config.ts style: use spaces and no semicolons in JS 2024-05-05 10:59:14 -07:00

site

pnpm

My personal website. Written in SvelteKit using TailwindCSS and components from shadcn-svelte.

Running locally

Install pnpm, clone and cd into the repository, then run:

pnpm install

# for development:
pnpm dev

# for production:
pnpm build
pnpm preview

Adding posts

This site contains custom SSG blog generation functionality that I built myself. It converts Markdown into static HTML pages served under /blog. I decided to replace it with a fully standalone blog created with an actual static site generator to avoid NIH syndrome and decrease maintenance time.

It may still serve as a useful reference for how to build a static blog in SvelteKit, for anyone interested.

To add posts, create a directory in /blog. The top level subdirectories should be the year, but there's no hard rules on what the rest of the subdirectories will be. The blog will build itself based on the file structure in /blog/[year]/**, and posts will be located wherever there exists content.md + post.toml files. Check post.schema.json for the specification of the post.toml format. Finally, you can add a .blogignore file to any directory in /blog to exclude it from static rendering (useful for work-in-progress blog posts).

License

The website's source code is licensed under the MIT License. The contents of my blog are licensed under CC BY-NC-SA 4.0.