This repository contains all the packages used in the Stonecrop project. It is managed with Rush.
These packages in combination create an application that creates a schema driven UI and system of event driven hooks (actual hooks, not the React kind which are not hooks at all). These are available in both the UI and as server middleware.
This project has the following system dependencies:
pnpm(using yarn or npm will break packages)rush- Node v22 LTS (installation instructions)
git clone stonecrop
# or
git pull
# install dependencies
cd stonecrop
rush update
rush rebuild
# Work on aform, for example
cd aform
# sometimes, when changing branches or updating dependencies you may have issues
# this command removes and re-links all dependencies
rush purge && rush update && rush rebuild
# Provide changelog for release
rush change
# Stage changes and run linters
rushx lint@stonecrop/aform— Schema-driven form components with validation@stonecrop/atable— Advanced data table with Excel-like navigation and editing@stonecrop/beam— UI component library with consistent theming@stonecrop/casl-middleware— CASL-based authorization middleware@stonecrop/code-editor— Code editor component@stonecrop/desktop— Desktop-specific UI patterns and command palette@stonecrop/graphql-client— Vue composables for GraphQL data fetching@stonecrop/graphql-middleware— GraphQL query/mutation middleware using doctype schemas@stonecrop/node-editor— Visual FSM editor with Vue Flow integration@stonecrop/nuxt-grafserv— PostGraphile/Grafserv integration for Nuxt@stonecrop/nuxt— Nuxt module: schema-driven routing, pages, and layouts@stonecrop/rockfoil— GraphQL authorization server@stonecrop/schema— Doctype schema definitions, field types, naming utilities, and GraphQL → doctype converter@stonecrop/stonecrop— Core orchestration: Registry, HST state management, and workflow engine@stonecrop/themes— Shared CSS tokens and design system themes@stonecrop/utilities— Shared helper functions and type utilities