open-index/open-npm huggingface dataset:
npm package: @objectstack/spec-constants
Description: ObjectStack Convention Constants - Directory and file conventions for ObjectStack packages
Author: ObjectStack
Latest version: 0.1.0

# @objectstack/spec-constants

[![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue.svg)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

> ObjectStack Convention Constants

## 📜 Overview

This package defines the **"Law of Location"** - where things must be in ObjectStack packages.

**Guiding Principle:** *"Strict Types, No Logic"*

This package contains:
- ✅ Constants (Convention configurations)

This package does NOT contain:
- ❌ Database connections
- ❌ UI components
- ❌ Runtime business logic

## 🚀 Installation

```bash
pnpm install @objectstack/spec-constants
```

## 📦 What's Inside

### Constants

- `PKG_CONVENTIONS` - Directory and file conventions
- `PackageDirectory` - Type for package directories
- `PackageFile` - Type for package files

## 📚 Usage

```typescript
import { PKG_CONVENTIONS } from '@objectstack/spec-constants';

console.log(PKG_CONVENTIONS.DIRS.SCHEMA);    // 'src/schemas'
console.log(PKG_CONVENTIONS.DIRS.TRIGGERS);  // 'src/triggers'
console.log(PKG_CONVENTIONS.FILES.MANIFEST); // 'objectstack.config.ts'
```

## 📄 License

MIT
npm package: @objectstack/spec-meta
Description: ObjectStack Metamodel Type Definitions - Core interfaces for entities, fields, and views
Author: ObjectStack
Latest version: 0.1.0

# @objectstack/spec-meta

[![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue.svg)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

> ObjectStack Metamodel Type Definitions

## 📜 Overview

This package defines the **core metamodel interfaces** that form the contract between the backend (ObjectQL) parser and the frontend (ObjectUI) renderer.

**Guiding Principle:** *"Strict Types, No Logic"*

This package contains:
- ✅ TypeScript Interfaces (Entity, Field, View types)

This package does NOT contain:
- ❌ Database connections
- ❌ UI components
- ❌ Runtime business logic

## 🚀 Installation

```bash
pnpm install @objectstack/spec-meta
```

## 📦 What's Inside

### Core Interfaces

- `FieldType` - Available field data types
- `ObjectField` - Field definition interface
- `ObjectEntity` - Entity (data model) definition interface
- `ObjectView` - View configuration interface

## 📚 Usage

```typescript
import { ObjectEntity, ObjectField, FieldType } from '@objectstack/spec-meta';

const userEntity: ObjectEntity = {
  name: 'User',
  label: 'User',
  pluralLabel: 'Users',
  fields: [
    {
      name: 'email',
      label: 'Email',
      type: 'email',
      required: true
    }
  ],
  primaryKey: 'id',
  displayField: 'email'
};
```

## 📄 License

MIT
npm package: @objectstack/spec-plugin
Description: ObjectStack Plugin Runtime Interfaces - Type definitions for plugin development
Author: ObjectStack
Latest version: 0.1.0

# @objectstack/spec-plugin

[![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue.svg)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

> ObjectStack Plugin Runtime Interfaces

## 📜 Overview

This package defines the **contract that every plugin must implement** to be loaded by ObjectOS.

**Guiding Principle:** *"Strict Types, No Logic"*

This package contains:
- ✅ TypeScript Interfaces (Plugin runtime interfaces)

This package does NOT contain:
- ❌ Database connections
- ❌ UI components
- ❌ Runtime business logic

## 🚀 Installation

```bash
pnpm install @objectstack/spec-plugin
```

## 📦 What's Inside

### Plugin Interfaces

- `ObjectStackPlugin` - Plugin interface with lifecycle methods
- `PluginContext` - Context provided to plugin methods
- `PluginFactory` - Plugin factory function type
- `PluginLogger` - Logger interface
- `ObjectQLClient` - Database client interface
- `ObjectOSKernel` - OS kernel interface

## 📚 Usage

```typescript
import { ObjectStackPlugin, PluginContext } from '@objectstack/spec-plugin';

export default function createPlugin(): ObjectStackPlugin {
  return {
    async onInstall(ctx: PluginContext) {
      ctx.logger.info('Plugin installed');
    },
    
    async onEnable(ctx: PluginContext) {
      ctx.logger.info('Plugin enabled');
    },
    
    async onDisable(ctx: PluginContext) {
      ctx.logger.info('Plugin disabled');
    }
  };
}
```

## 📄 License

MIT
npm package: @objectstack/spec-schemas
Description: ObjectStack Zod Validation Schemas - Runtime validation for ObjectStack configurations
Author: ObjectStack
Latest version: 0.1.0

# @objectstack/spec-schemas

[![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue.svg)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

> ObjectStack Zod Validation Schemas

## 📜 Overview

This package contains **Zod schemas for validating** ObjectStack configurations and manifests.

**Guiding Principle:** *"Strict Types, No Logic"*

This package contains:
- ✅ Zod Schemas (Validation rules with type inference)

This package does NOT contain:
- ❌ Database connections
- ❌ UI components
- ❌ Runtime business logic

## 🚀 Installation

```bash
pnpm install @objectstack/spec-schemas
```

## 📦 What's Inside

### Schemas

- `ManifestSchema` - Zod schema for package manifests
- `MenuItemSchema` - Zod schema for menu items
- `ObjectStackManifest` - TypeScript type for manifests
- `MenuItem` - TypeScript type for menu items

## 📚 Usage

```typescript
import { ManifestSchema, type ObjectStackManifest } from '@objectstack/spec-schemas';

const manifest: ObjectStackManifest = {
  id: 'com.example.myapp',
  version: '1.0.0',
  type: 'plugin',
  name: 'My App',
  permissions: ['system.user.read']
};

// Validate with Zod
ManifestSchema.parse(manifest);
```

## 📄 License

MIT