Lucid evolution includes the following packages
Lucid Evolution consists of the following packages:
docs
: Documentation resources for Lucid Evolution.@lucid-evolution/lucid
: Main package for Lucid Evolution.@lucid-evolution/bip39
: Package for BIP-39 mnemonic code.@lucid-evolution/core-types
: Core types used across Lucid Evolution packages.@lucid-evolution/core-utils
: Core utilities used across Lucid Evolution packages.@lucid-evolution/crc8
: Package for CRC8 calculation.@lucid-evolution/plutus
: Package for Plutus integration.@lucid-evolution/provider
: Package for providing data.@lucid-evolution/sign_data
: Package for signing data.@lucid-evolution/utils
: Utility functions for Lucid Evolution.@lucid-evolution/wallet
: Wallet package for Lucid Evolution.@lucid-evolution/typescript-config
: Housestsconfig.json
files utilized across themonorepo
.@lucid-evolution/eslint-config
: Contains ESLint configurations, includingeslint-config-next
andeslint-config-prettier
.
All packages in Lucid Evolution are built using TypeScript and Effect . This combination enables us to manage side effects effectively, scale faster, and enhance type safety and developer experience.
The monorepo is equipped with essential tools to facilitate development workflows:
- TypeScript for static type checking
- 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 for code linting
- Prettier for code formatting
To build packages, run the following command:
cd lucid-evolution
pnpm build
To develop docs, run the following command and visit the custom basePath
http://localhost:3000/lucid-evolution:
cd lucid-evolution
pnpm dev
To test packages, run the following command:
pnpm test
To format files with prettier, run the following command:
pnpm format
To check formatting, run the following command:
pnpm format-check
To check linting, run the following command:
pnpm lint
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.
Contributions to Lucid Evolution are welcome! Feel free to submit issues, feature requests, or pull requests to help improve the project.
Lucid Evolution is licensed under the MIT License, permitting unrestricted use, distribution, and modification.