Test bed for ATJ platform tooling, completed as part of the 10x Digital Access to Justice Platform project.
The workspace dependencies are depicted in this auto-generated workspace project dependencies graph.
Additional documentation:
The platform is made up of the following high-level terms.
- Content authors: legal experts who craft guided interview experiences via a "no code" interface
- Self-represented litigants (SREs): end-users who interact with the court via guided interviews created by content authors
- Blueprint: produced by a content author, the blueprint defines the structure of an interactive session between a court and an SRL
- Conversation: one instance of a blueprint; the interactive session between a court and an SRL. Other terms for this concept include dialogue or session.
- Pattern/template: the building blocks of a blueprint, patterns implement UX best-practices, defining the content and behavior of the user interface.
- Prompt: produced by a pattern, the prompt defines what is presented to the end user at single point in a conversation.
- Component: user interface component that acts as the building block of prompts.
This project uses the version of Node.js defined in .nvmrc. To ensure you're using the correct node version, you may use the Node Version Manager (NVM):
nvm install
This project uses pnpm workspaces. To work with this project, install pnpm and then the project dependencies:
pnpm install
To run the complete test suite, with coverage metrics generated:
pnpm test
To run tests in watch mode (except the infra
tests, which use Jest):
pnpm vitest
To start developing with hot reloading, use:
pnpm build
then run:
pnpm dev
These local servers will be started:
- Astro website - http://localhost:4321/
- Storybook - http://localhost:61610/
To lint the source code:
pnpm lint
A command-line interface is provided for manually running operations. The corresponding app resides in ./apps/cli. A wrapper script, in the root directory, is provided.
./manage.sh --help