This is my personal monorepo built with turborepo. All my work is built here, so I can share and reuse code across all my projects.
Feel free to use it as an inspiration or source of knowledge for yourself. Also, feel free to contact me if you are interested in my work. I'm always open to amazing ideas.
This turborepo uses pnpm as a package manager. It includes the following packages/apps:
workshop
: built with Storybook to test the components from cosmic-uiintellisync-client
: built with Next.js 13, this repository has the source code for the IntellisyncAI frontend.intellisync-server
: built with Supabase, this repository has the source code for the IntellisyncAI backend.cosmic-ui
: a React component library built with Tailwind shared by all apps.eslint-config-custom
:eslint
configurations (includeseslint-config-next
andeslint-config-prettier
)tsconfig
:tsconfig.json
s used throughout the monorepo
And many more utilities packages.
Each package/app is 100% TypeScript and tested with Vitest
This repository is built on top of devcontainers. To get started, you need to have Docker installed on your machine.
After that, inside vscode you can open the command palette and run Remote-Containers: Reopen in Container
.
All the necessary dependencies will be installed and you will be ready to go.
All the following command can be applied to specific subsets of packages. You can read more about it here.
But the most common filters already have a shortcut:
intell-client
: filter for@intellisync/client
intell-server
: filter for@intellisync/server
ui
: filter forcosmic-ui
workshop
: filter forworkshop
turboflux
: filter for@turboflux/client
To build all apps and packages, run the following command:
pnpm run build
To develop all apps and packages, run the following command:
pnpm run dev
To test all apps and packages, run the following command:
pnpm run test
Most packages and apps also have a test:watch
script that you can run to watch for changes and run the tests automatically.