|
1 |
| -# Turborepo starter |
| 1 | +# Jhecht's Utility Mono Repo |
2 | 2 |
|
3 |
| -This is an official starter Turborepo. |
| 3 | +This is a repo that holds all of my random projects. |
4 | 4 |
|
5 |
| -## Using this example |
| 5 | +## Projects |
6 | 6 |
|
7 |
| -Run the following command: |
| 7 | +Currently there are 5 projects in the repo: |
8 | 8 |
|
9 |
| -```sh |
10 |
| -npx create-turbo@latest |
11 |
| -``` |
| 9 | +1. [ArkType Utils](#arktype-utils) |
| 10 | +2. [Design Tokens](#design-tokens) |
| 11 | +3. [Eslint Plugin](#eslint-plugin) |
| 12 | +4. [Typescript Config](#typescript-config) |
| 13 | +5. [Vite Plugin Design Tokens](#vite-plugin-design-tokens) |
12 | 14 |
|
13 |
| -## What's inside? |
| 15 | +## ArkType Utils |
14 | 16 |
|
15 |
| -This Turborepo includes the following packages/apps: |
| 17 | +[ArkType](https://arktpe.io) is a 1:1 TypeScript validation library. I utilize it heavily, so I created some wrapper utils around it |
16 | 18 |
|
17 |
| -### Apps and Packages |
| 19 | +## Design Tokens |
18 | 20 |
|
19 |
| -- `docs`: a [Next.js](https://nextjs.org/) app |
20 |
| -- `web`: another [Next.js](https://nextjs.org/) app |
21 |
| -- `@repo/ui`: a stub React component library shared by both `web` and `docs` applications |
22 |
| -- `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`) |
23 |
| -- `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepo |
| 21 | +This is a port over of [jhechtf/design-tokens](https://github.com/jhechtf/design-tokens). The original project was written for |
| 22 | +Deno, but with Deno basically becoming a sandbox for Node, I've decided to move the library over to Node fully, allowing for the |
| 23 | +[Vite Plugin](#vite-plugin-design-tokens) |
24 | 24 |
|
25 |
| -Each package/app is 100% [TypeScript](https://www.typescriptlang.org/). |
| 25 | +## Eslint Plugin |
26 | 26 |
|
27 |
| -### Utilities |
| 27 | +Common ESLint stuff I use. |
28 | 28 |
|
29 |
| -This Turborepo has some additional tools already setup for you: |
| 29 | +## TypeScript Config |
30 | 30 |
|
31 |
| -- [TypeScript](https://www.typescriptlang.org/) for static type checking |
32 |
| -- [ESLint](https://eslint.org/) for code linting |
33 |
| -- [Prettier](https://prettier.io) for code formatting |
| 31 | +Common TypeScript Config I use for most projects |
34 | 32 |
|
35 |
| -### Build |
| 33 | +## Vite Plugin Design Tokens |
36 | 34 |
|
37 |
| -To build all apps and packages, run the following command: |
38 |
| - |
39 |
| -``` |
40 |
| -cd my-turborepo |
41 |
| -pnpm build |
42 |
| -``` |
43 |
| - |
44 |
| -### Develop |
45 |
| - |
46 |
| -To develop all apps and packages, run the following command: |
47 |
| - |
48 |
| -``` |
49 |
| -cd my-turborepo |
50 |
| -pnpm dev |
51 |
| -``` |
52 |
| - |
53 |
| -### Remote Caching |
54 |
| - |
55 |
| -Turborepo can use a technique known as [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching) to share cache artifacts across machines, enabling you to share build caches with your team and CI/CD pipelines. |
56 |
| - |
57 |
| -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](https://vercel.com/signup), then enter the following commands: |
58 |
| - |
59 |
| -``` |
60 |
| -cd my-turborepo |
61 |
| -npx turbo login |
62 |
| -``` |
63 |
| - |
64 |
| -This will authenticate the Turborepo CLI with your [Vercel account](https://vercel.com/docs/concepts/personal-accounts/overview). |
65 |
| - |
66 |
| -Next, you can link your Turborepo to your Remote Cache by running the following command from the root of your Turborepo: |
67 |
| - |
68 |
| -``` |
69 |
| -npx turbo link |
70 |
| -``` |
71 |
| - |
72 |
| -## Useful Links |
73 |
| - |
74 |
| -Learn more about the power of Turborepo: |
75 |
| - |
76 |
| -- [Tasks](https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks) |
77 |
| -- [Caching](https://turbo.build/repo/docs/core-concepts/caching) |
78 |
| -- [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching) |
79 |
| -- [Filtering](https://turbo.build/repo/docs/core-concepts/monorepos/filtering) |
80 |
| -- [Configuration Options](https://turbo.build/repo/docs/reference/configuration) |
81 |
| -- [CLI Usage](https://turbo.build/repo/docs/reference/command-line-reference) |
| 35 | +WIP - added in eagerly. |
0 commit comments