Jim Hamill 875f0393ac Merge branch 'rates_adapter_fixes' into 'development'
fix(Rates): Various fixes

See merge request GeneralProtocols/xo/stack!86
2025-04-30 06:27:54 +00:00
2025-03-10 05:36:16 +00:00
2025-04-30 06:27:53 +00:00
2024-08-16 22:06:01 +10:00
2025-02-13 11:34:49 +00:00
2024-08-16 22:06:01 +10:00
2024-08-16 22:06:01 +10:00
2025-01-12 03:11:02 +00:00
2025-04-18 05:17:20 +00:00
2025-02-16 07:32:23 +00:00
2025-04-07 05:55:06 +00:00
2025-03-19 23:32:10 +00:00
2025-04-28 02:47:52 -04:00

XO Stack

This is a monorepo project containing multiple packages managed with NPM workspaces.

Project Structure

xo/
├── packages/
│   ├── primitives/
│   ├── wallet/
│   └── vue/
├── package.json
└── README.md

Prerequisites

  • Node.js (version 20.0.0 or later)
  • NPM (version 7 or later, which includes workspaces support)

Installation

To install all dependencies for all packages in the monorepo, run the following command from the root directory:

npm install

This command will install dependencies for the root project and all packages in the packages/ directory.

Building Packages

To build all packages, run the following command from the root directory:

npm run build

This will execute the build script for each package in the monorepo.

To build a specific package, you can use the following command:

npm run build --workspace=@my-monorepo/<package-name>

Replace <package-name> with the name of the package you want to build (e.g., primitives, network-wallet, or vue).

Running Tests

To run tests for all packages:

npm test

To run tests for a specific package:

npm test --workspace=@my-monorepo/<package-name>

Development

During development, you can use the following command to watch for changes and rebuild packages automatically:

npm run dev

Useful NPM Workspace Commands

  • List all packages in the workspace:

    npm ls -w
    
  • Run a command in a specific package:

    npm run <command> --workspace=@my-monorepo/<package-name>
    
  • Add a dependency to a specific package:

    npm install <dependency> --workspace=@my-monorepo/<package-name>
    

Refactor details

We will want to use inheritance in place of IWallet, etc. A neat structure to refactor to is:

  • /theThing/

  • base-thing.ts
    
  • types.ts
    
  • utils.ts
    
  • ...
    
  • Rename IndexedCollection to ExtMap.

  • Rename from method to fromArray.

  • Have the from method accept an object.

S
Description
No description provided
Readme
1.4 MiB
Languages
TypeScript 87.6%
Vue 7.3%
CSS 4.1%
HTML 0.6%
JavaScript 0.4%