@clearvision-software/lighthouse-models
Shared models and TypeScript types library for Lighthouse applications. This package provides a centralized location for all shared data models, interfaces, and types used across the Lighthouse ecosystem.
Purpose
This package serves as the single source of truth for data models across Lighthouse applications, ensuring:
- Consistent data structures across all Lighthouse services and applications
- Type safety through TypeScript definitions
- Reduced code duplication
- Simplified model updates and maintenance
Installation
npm install @clearvision-software/lighthouse-models
Usage
import { YourModel } from '@clearvision-software/lighthouse-models';
const model: YourModel = {
};
Contributing
This repository uses Conventional Commits for commit messages and automated versioning through Release Please.
Commit Message Format
When making changes, please follow these commit message conventions:
-
feat: - New features (minor version bump)
feat: add user preferences model
-
fix: - Bug fixes (patch version bump)
fix: correct type definition in auth model
-
feat!: or fix!: or including BREAKING CHANGE: - Breaking changes (major version bump)
feat!: rename authentication interfaces
BREAKING CHANGE: AuthModel has been renamed to AuthenticationModel
-
chore: - Maintenance tasks (no version bump)
chore: update documentation
For more details on the release process, see Release Please documentation.
Manual Version Override
If you need to manually specify a version:
git commit --allow-empty -m "chore: release 2.0.0" -m "Release-As: 2.0.0"
Release Process
Releases are automated through GitHub Actions:
- Push changes with conventional commits to the main branch
- Release Please creates/updates a Release PR with changelog and version updates
- When the Release PR is merged, a new GitHub release is created
- The package is automatically published to npm