Type Link Model (TLM) Monorepo
TLM is a simple modelling technique inspired by Object Role Modelling that is suitable for working with web APIs and the typical simple tree structures used in web documents.
This is an unfinished hobby project. Use at your own risk.
- latest LTS node
- recent pnpm, if you have node, try
corepack enable - docker cli installed and connected
- latest stable rust
pnpm install
pnpm run setup
pnpm run testcargo build
cargo test
cargo clippy -- -D warningsor run tests with coverage:
brew install cargo-llvm-cov
cargo llvm-covCode style follows Prettier.
Follow
with types:
- build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
- ci: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
- docs: Documentation only changes
- feat: A new feature
- fix: A bug fix
- perf: A code change that improves performance
- refactor: A code change that neither fixes a bug nor adds a feature
- revert: undoing (an)other commit(s)
- style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
- test: Adding missing tests or correcting existing tests
- improvement: Improves code in some other way (that is not a feat or fix)
- chore: Changes that take care of some other kind of chore that doesn't impact the main code
(based on angular conventions https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit)
- Run
pnpm update -rto do minor dependency updates - Run
pnpm up -L -rto do major dependency updates - Run
pnpm run x dedupe-depsto add overrides topackage.jsonto try and pin transitive dependencies to later versions
See docs/.