@tago-io/dashboard-schema
v2.4.0
Published
TypeScript schema definitions for TagoIO Dashboard components
Readme
@tago-io/dashboard-schema
TypeScript schema definitions for TagoIO Dashboard components, providing type-safe validation and structure for dashboard widgets and configurations.
Installation
This package is published to GitHub Packages. To install it, you need to
configure npm to use GitHub Packages for the @tago-io scope.
1. Configure npm registry
Create or update your .npmrc file in your project root:
@tago-io:registry=https://npm.pkg.github.com2. Authenticate with GitHub Packages
You need a GitHub Personal Access Token with read:packages permission:
npm login --scope=@tago-io --registry=https://npm.pkg.github.comWhen prompted:
- Username: Your GitHub username
- Password: Your GitHub Personal Access Token
- Email: Your GitHub email
3. Install the package
npm install @tago-io/dashboard-schemaUsage
import { Dashboard, DeviceData, Widget } from "@tago-io/dashboard-schema";
// Use the schema types in your application
const widgetConfig: Widget.WidgetCreate = {
// Your widget configuration
};
const dashboardConfig: Dashboard.DashboardCreate = {
// Your dashboard configuration
};
// Need draft-7 JSON Schema with .describe() metadata preserved?
const angularJSONSchema = Widget.widgetCreateJSONSchemas.angular;
// angularJSONSchema.$schema === "http://json-schema.org/draft-07/schema#"Development
Prerequisites
- Node.js >= 18.0.0
- npm or pnpm
Setup
# Install dependencies
npm install
# Run tests
npm test
# Run linter
npm run linter
# Format code
npm run format
# Build the package
npm run buildPublishing
The package is automatically published to GitHub Packages when:
- A new release is created on GitHub
To manually publish:
npm version patch # or minor/major
npm publishLicense
ISC © TagoIO Inc.
