Make sure you have the following software installed:
- Node.js
- pnpm
- watchman
Clone the repo:
git clone ...
Install dependencies:
pnpm install
Run the build:
make check build
Define the following environment variables:
export PROJECT__ROOT="$PWD"
export PATH="$PROJECT__ROOT/.bin:$PATH"
Now you have asap executable available which rebuilds the bin/ source code
on each invocation:
asap --help
To typecheck the project:
make check
We use [debug][] npm package for debig logs, enable it by setting DEBUG
environment variable:
DEBUG='asap:*' asap
The bin directory hosts the asap executable code with main.ts being the
entry point (this is the module which is being run when you invoke asap):
bin
├── Build.ts
├── main.ts
├── PromiseUtil.ts
├── RouteSet.ts
├── types.ts
└── Watch.ts
The src directory hosts the asap library which exposes applicaton api:
src
├── index.tsx
├── api.ts
├── Router.ts
└── Routing.ts
There are three main entry points to the asap:
bin/main.tsprovidesasapexecutablesrc/index.tsprovides@mechanize/asapclient side application librarysrc/api.tsprovides@mechanize/asap/apiserver side API library