An updated portfolio / personal site for 2023, built with Astro and typeset in Fragment Mono and Inter.
/
├── public/
│ └── CNAME
│ └── favicon.svg
│ └── banana_favicon.svg (self-explanatory)
├── src/
│ └── pages/
│ └── about.astro
│ └── works/
│ └── .md files
│ └── notes/ (symbolic link to notes repo written in Obsidian)
│ └── index.astro
│ └── links.astro
│ └── notes.astro (WIP)
│ └── 404.astro
│ └── components/ (React components + Astro islands)
│ └── data/ (static data of works and global store for tags)
│ └── layouts/ (for sidebar and articles)
│ └── styles/
└── package.json
Project pages in src/pages/works
are written in .md
files, and each page is exposed as a route based on its filename.
src/components/
contains miscellaneous React/Astro components.
All assets, compressed and converted to .webp
format wherever possible, are hosted on an S3 bucket.
# clone project
git clone https://github.com/yihui-hu/yihui-work.git
cd yihui-work
# install dependencies
npm install
# build project
npm run build
All commands are run from the root of the project, from a terminal:
Command | Action |
---|---|
npm install |
Installs dependencies |
npm run dev |
Starts local dev server at localhost:3000 |
npm run build |
Build your production site to ./dist/ |
npm run preview |
Preview your build locally, before deploying |
npm run astro ... |
Run CLI commands like astro add , astro check |
npm run astro -- --help |
Get help using the Astro CLI |