Skip to content

HanJaemEo/hanjaemeo

Repository files navigation

hanjaemeo

The source code for my personal website, hanjaemeo.

Made with 💙 using:

  • Next.js14with app router.
  • Contentlayer 📚 for MDX processing with fast HMR, remark and rehype supports.
  • Hono 🔥 for fast and type-safe REST server.
  • Jotai 👻 to manage client-side states.
  • Panda CSS 🐼 for styling with amazing semantic token and recipe system.
  • Radix UI 💻 to provide accesible UI without hassle.
  • Tanstack Queryv5 🚦 to query and mutate endpoints efficiently.
  • React Hook Form 📋 to handle form with validation uncontrolledly.
  • Storybook 📕 to check styles and a11y, and to run visual regression tests.
  • Vitestto unit test components and server endpoints.
  • Turborepo to manage monorepo with cache pipelines.

Warning

Still under construction 🚧

Build

Full Build

To build all apps and packages, run the following command:

pnpm turbo build

Packages Only

If you would like to build only the packages which are nessessary for the apps, run the following command:

pnpm turbo build-fast

Note

For most of packages in packages/*, tsup bundler is used to bundle their typescript codes. More precisely, npm script build-fast bundles the typescript codes without type checking, while build does with.

Develop

To develop the main web app build with Next.jsapps/web, run the following command:

pnpm -F web dev

Remote Caching

Turborepo can use a technique known as Remote Caching to share cache artifacts across machines, enabling you to share build caches with your team and CI/CD pipelines.

By default, Turborepo will cache locally. To enable Remote Caching you will need an account with Vercel. If you don't have an account you can create one, then enter the following commands:

cd my-turborepo
pnpm dlx turbo login

This will authenticate the Turborepo CLI with your Vercel account.

Next, you can link your Turborepo to your Remote Cache by running the following command from the root of your turborepo:

pnpm dlx turbo link