Powerhouse Document Engineering
This package provides a set of tools and components for document engineering within the Powerhouse ecosystem.
Installation
# Using npm
npm install @powerhousedao/document-engineering
# Using yarn
yarn add @powerhousedao/document-engineering
# Using pnpm
pnpm add @powerhousedao/document-engineering
Usage
The package provides several entry points for different use cases:
Main Package
import { ... } from '@powerhousedao/document-engineering';
UI Components
import { ... } from '@powerhousedao/document-engineering/ui';
Scalars
For data manipulation and transformation utilities:
import { ... } from '@powerhousedao/document-engineering/scalars';
GraphQL
For GraphQL related utilities and schema definitions:
import { ... } from '@powerhousedao/document-engineering/graphql';
Styles
To include the package's styles:
import '@powerhousedao/document-engineering/style.css';
Import Maps
Within the project, the following import maps are available:
#assets
- Assets utilities and components#scalars
- Scalar transformations and utilities#ui
- UI components#graphql
- GraphQL related utilities
Development
Prerequisites
- Node.js (LTS version)
- pnpm
Setup
# Install dependencies
pnpm install
# Run storybook for development
pnpm storybook
# Build the package
pnpm build
Testing
# Run tests
pnpm test
# Run tests in watch mode
pnpm test:watch
Semantic Release
This project uses semantic-release for versioning. Commit messages should follow the Conventional Commits specification.
Release channels:
main
branch - Latest stable releasestaging
branch - Pre-release with staging tagdev
branch - Development pre-release
To make a commit using the conventional format:
pnpm commit
License
AGPL-3.0-only