My personal website (portfolio) and blog
friedrichwt.dev
This project is the monorepo for my personal website, portfolio and blog.
- Description, personal projects and blog
- All my useful links in one single place
- Internal dashboard to manage all my blog posts
- Extensive markdown editor and visualizer for the blog posts
- Support for images (they are stored in a cloudflare bucket)
api: a Nestjs application that powers theweband theadmin dashboardadmin dashboard: a Vite dashboard that is used to manage all the blog postsweb: an Astro site that is my portfolio and personal blog in one place@repo/common: all functions, constants and utils shared by the three parts of the project@repo/trpc: the package that shares trpc types across the project@repo/ui: ui components shared betweenadmin dashboardandweb
- The API is deployed on api.friedrichwt.dev
- The admin dashboard is deployed on admin.friedrichwt.dev
- The website is deployed on friedrichwt.dev
To start the dev server of all apps at the same time, run
> cd me
> turbo dev # or npm run devOr you can use docker compose to run all services: admin dashboard, api and web simultaneously
docker compose up -d --remove-orphansSince the web site is a static astro site, it needs the api to be up to be able to build. So a normal compose file won't do it. But the build.sh script makes sure to start the API service before building the remaining:
chmod +x build.shThen:
./build.sh