This monorepo is used for the development of lit-privacy-sdk
, developed in the context of this grant:
LIT-Protocol/LitGrants#35
eslint-config-custom
:eslint
configurations (includeseslint-config-next
andeslint-config-prettier
)tsconfig
:tsconfig.json
s used throughout the monorepolit-privacy-sdk
: package that will be used to implement lit procotol for a privacy-enabled processing.lit-actions
: package for the development of lit-actionscontracts
: package for the development of contracts required for the package to work
This turborepo has some additional tools already setup:
- TypeScript for static type checking
- ESLint for code linting
- Prettier for code formatting
To build all apps and packages, run the following command:
cd my-turborepo
yarn run build
Clone the repository
Using SSH
git clone [email protected]:Curve-Labs/ie-bacalhau.git
Using HTTPS
git clone https://github.com/Curve-Labs/ie-bacalhau.git
- NodeJS (Install NodeJS)
- Yarn (Install Yarn)
For more information on what prerequisites are required for each package, please refer to the README.md file in the corresponding package.
To install the dependencies for this project, please run the command yarn install in your terminal. This command will install all the necessary packages required to run the application.
yarn
To develop all apps and packages, run the following command:
yarn run dev
For guidance on how to use the individual packages, please refer to the README.md file within each package.
yarn workspace <workspaceName> <commandName> ...
yarn workspaces list
- When making code changes, it is important to consider the scope of the changes. Changes that are relevant to a specific workspace should be made within that workspace.
- If you want to add scripts, linting rules, or hooks that should apply to the entire repo, they should be added in the root directory.
- The
./package.json
file in the root directory manages the entire monorepo, whereas the./packages/{WORKSPACE}/package.json
file manages only that specific workspace. Any changes made in this file will only affect that workspace. - All dependencies are installed globally and there should not be any node_modules folder within the workspace directory.
- Linting rules and scripts should also be global, therefore added in the root directory.
- Environment variables are not shared across workspaces and are specific to each one.
- When importing files from different workspaces, be sure to use the proper path.
Learn more about the power of Turborepo: