Skip to content

leather-io/mono

Folders and files

NameName
Last commit message
Last commit date

Latest commit

07ef9a3 · Apr 2, 2025
Apr 2, 2025
Jan 6, 2025
Apr 2, 2025
Nov 5, 2024
Sep 19, 2024
Dec 20, 2024
Apr 2, 2025
Jan 27, 2025
Nov 19, 2024
Feb 25, 2025
Mar 10, 2025
Nov 4, 2024
Jan 6, 2025
Feb 13, 2025
Mar 12, 2025
Feb 25, 2025
Feb 21, 2025
Jun 21, 2024
Feb 21, 2025
Apr 2, 2025
Feb 25, 2025
Jun 21, 2024
Feb 20, 2024
Jan 6, 2025
Sep 19, 2024
Mar 27, 2025
Mar 25, 2025
Apr 2, 2025
Feb 20, 2024
Mar 6, 2025
Mar 7, 2024
Mar 12, 2025
Sep 19, 2024

Repository files navigation

Leather Mono

The purpose of this monorepo is to provide a single home for core Leather functionality. The monorepo uses pnpm workspaces and Turborepo. Packages are found under packages/*. Apps are found under apps/*.

Installation

  1. pnpm i at the mono root
  2. Run pnpm build

Architecture

Leather architecture diagram

Coding standards are enforced through the use of

  • eslint
  • prettier
  • typescript
  • syncpack
  • ls-lint

Monorepo core packages

The current packages are listed below

Running code quality checks with git hooks

Configure code checks to run during pre-commit and/or pre-push hooks. Each check maps directly to a script in the root package.json.

  1. Copy .env.example to .env.
  2. Enable specific checks for each hook::
PRE_COMMIT=format,lint
PRE_PUSH=syncpack:lint,typecheck,lint:filenames

In most cases, setting PRE_COMMIT is sufficient, as errors from remaining checks are uncommon, and typechecking is handled by editors.

Local checks are optional and configurable to suit developer preferences. On GitHub, these checks run automatically on every push through Code checks, as part of the CI workflow.

Documentation

Documentation has been provided from the outset and can be found in docs/tools/ along with a TEMPLATE.md file

Development with extension

To be able to develop packages and test those in extension, check out this guide

License

MIT © Leather Wallet LLC