Skip to content

Commit

Permalink
Merge pull request #4 from Anastasia-Labs/monorepo
Browse files Browse the repository at this point in the history
improve readme
  • Loading branch information
solidsnakedev authored Mar 8, 2024
2 parents a9ad40a + 27d5b55 commit 6020cb2
Showing 1 changed file with 35 additions and 41 deletions.
76 changes: 35 additions & 41 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,81 +1,75 @@
# Turborepo starter

This is an official starter Turborepo.

## Using this example

Run the following command:

```sh
npx create-turbo@latest
```
# Lucid Evolution

## What's inside?

This Turborepo includes the following packages/apps:
Lucid evolution includes the following packages

### Packages

### Apps and Packages
Lucid Evolution consists of the following packages:

- `docs`: a [Next.js](https://nextjs.org/) app
- `web`: another [Next.js](https://nextjs.org/) app
- `@repo/ui`: a stub React component library shared by both `web` and `docs` applications
- `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`)
- `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepo
- `docs`: Documentation resources for Lucid Evolution.
- `@lucid-evolution/lucid-evolution`: A foundational package set to evolve into multiple packages.
- `@lucid-evolution/eslint-config`: Contains ESLint configurations, including `eslint-config-next` and `eslint-config-prettier`.
- `@lucid-evolution/typescript-config`: Houses `tsconfig.json` files utilized across the `monorepo`.

Each package/app is 100% [TypeScript](https://www.typescriptlang.org/).
All packages in Lucid Evolution are built using [TypeScript](https://www.typescriptlang.org/) and [ Effect ](https://effect.website/docs/why-effect). This combination enables us to manage side effects effectively, scale faster, and enhance type safety and developer experience.

### Utilities

This Turborepo has some additional tools already setup for you:
The monorepo is equipped with essential tools to facilitate development workflows:

- [TypeScript](https://www.typescriptlang.org/) for static type checking
- [Effect](https://effect.website/docs/why-effect) Manages side effects, facilitating the creation of effectful functions that track errors, handle synchronous and asynchronous operations, and provide error short-circuiting capabilities.
- [ESLint](https://eslint.org/) for code linting
- [Prettier](https://prettier.io) for code formatting

### Build

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

```
cd my-turborepo
cd lucid-evolution
pnpm build
```

### Develop

To develop all apps and packages, run the following command:
To develop docs, run the following command:

```
cd my-turborepo
cd lucid-evolution
pnpm dev
```

### Remote Caching
To test packages, run the following command:

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.
```
pnpm test
```

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:
To format files with prettier, run the following command:

```
cd my-turborepo
npx turbo login
pnpm format
```

This will authenticate the Turborepo CLI with your [Vercel account](https://vercel.com/docs/concepts/personal-accounts/overview).

Next, you can link your Turborepo to your Remote Cache by running the following command from the root of your Turborepo:
To check formatting, run the following command:

```
npx turbo link
pnpm format-check
```

## Useful Links
### Remote Caching

Lucid Evolution leverages the remote caching functionality provided by GitHub to optimize continuous integration (CI) pipelines.

By default, local caching is employed. Although there are no immediate plans for remote caching, the repository remains adaptable to future enhancements.

### Contribution

Contributions to Lucid Evolution are welcome! Feel free to submit issues, feature requests, or pull requests to help improve the project.

Learn more about the power of Turborepo:
### License

- [Tasks](https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks)
- [Caching](https://turbo.build/repo/docs/core-concepts/caching)
- [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching)
- [Filtering](https://turbo.build/repo/docs/core-concepts/monorepos/filtering)
- [Configuration Options](https://turbo.build/repo/docs/reference/configuration)
- [CLI Usage](https://turbo.build/repo/docs/reference/command-line-reference)
Lucid Evolution is licensed under the MIT License, permitting unrestricted use, distribution, and modification.

0 comments on commit 6020cb2

Please sign in to comment.