-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Open
Description
Description:
Background
With the introduction of Project-local schemas in v1.0.0, OpenSpec has become significantly more flexible, allowing teams to define their own coding standards and architecture styles (like DDD, Clean Architecture, or specific tech stacks) through custom schemas.
The Problem
Currently, custom schemas are confined to the openspec/schemas/ directory within a specific project. While this works for individual teams, it creates "knowledge silos." There is no centralized way for the community to:
- Share high-quality schemas they have developed (e.g., a "Next.js + Tailwind + Shadcn" schema).
- Discover and reuse best-practice schemas created by others, leading to repetitive work.
Proposed Solution
I suggest establishing an official channel or mechanism for sharing and discovering schemas. Potential implementations could include:
- Community Schema Registry: A dedicated repository (e.g.,
Fission-AI/openspec-community-schemas) where users can submit Pull Requests to contribute their schemas. - CLI Integration: Adding commands like
openspec schema list(to see remote community schemas) andopenspec schema pull <schema-name>to easily import them into a local project. - Official Gallery/Marketplace: A lightweight documentation page or website that showcases recommended schemas for different scenarios (e.g., Microservices, TDD, Frontend-heavy apps).
Why it matters
- Lowering the Barrier to Entry: New users can jumpstart their projects with industry-standard schemas without needing to master the OpenSpec template syntax first.
- Ecosystem Growth: A shared repository encourages the community to standardize SDD (Spec-Driven Development) practices for various frameworks (Go, Rust, React, etc.).
- Improved AI Accuracy: High-quality, community-vetted schemas will help the AI generate more consistent and production-ready code.
I would love to hear the team's thoughts on how we can build this ecosystem together!
Metadata
Metadata
Assignees
Labels
No labels