1- # patternfly-component-schemas
1+ # @ patternfly/ patternfly-component-schemas
22
33JSON Schema metadata for PatternFly React components, providing structured validation and documentation for component props.
44
55## 📦 Installation
66
77``` bash
8- npm install patternfly-component-schemas
8+ npm install @patternfly/ patternfly-component-schemas
99```
1010
1111## 🏗️ Structure
1212
1313This package uses a split structure for optimal performance and modularity:
1414
1515```
16- patternfly-component-schemas/
16+ @patternfly/ patternfly-component-schemas/
1717├── components/
1818│ ├── AboutModal/
1919│ │ ├── schema.json # JSON Schema for AboutModal props
@@ -79,14 +79,19 @@ npm run rebuild
7979The package is generated from ` component-metadata.json ` which contains the raw PatternFly component metadata for the latest release. This file is included in the git repository for development but excluded from the NPM package.
8080
8181### Updating Component Metadata
82- ** Current Process - (Manual)**
82+
83+ ** 📋 Manual Process (Current)**
83841 . Clone https://github.com/patternfly/patternfly-doc-core
84852 . Run ` npm run build:props ` in the doc-core directory
85- 3 . Copy ` dist/props.json ` content to ` component-metadata.json ` of this repo.
86+ 3 . Copy ` dist/props.json ` content to ` component-metadata.json ` of this repo
86874 . Run ` npm run build ` to regenerate schemas
87- 5 . Test and publish
88+ 5 . Commit with: ` feat(components): sync with PatternFly vX.X.X `
89+ 6 . Push to ` main ` → ** automatic release triggers** 🚀
8890
89- ** Future** : This will be automated to sync with PatternFly releases.
91+ ** 🔮 Future Automation**
92+ - Dependency management via Renovate/Dependabot
93+ - Automated PRs for PatternFly quarterly releases
94+ - Human-in-the-loop review for component updates
9095
9196## 📊 Package Contents
9297
@@ -111,12 +116,57 @@ This package is specifically designed for:
111116
112117MIT
113118
119+ ## 🚀 Automated Releases
120+
121+ This package uses ** semantic-release** for automated versioning and publishing based on conventional commits.
122+
123+ ### Commit Message Format
124+
125+ Follow [ Conventional Commits] ( https://conventionalcommits.org/ ) specification:
126+
127+ ```
128+ <type>[optional scope]: <description>
129+ ```
130+
131+ ** Examples:**
132+ ``` bash
133+ feat: add new component schemas
134+ fix: correct required props validation
135+ docs: update installation instructions
136+ chore: update dependencies
137+ ```
138+
139+ ### Release Process
140+
141+ 1 . ** Push commits** to ` main ` branch using conventional format
142+ 2 . ** GitHub Actions** runs CI and tests
143+ 3 . ** Semantic-release** analyzes commits and publishes to NPM
144+ 4 . ** GitHub releases** created automatically
145+
114146## 🤝 Contributing
115147
1161481 . Fork the repository
117- 2 . Update ` component-metadata.json ` with your changes
118- 3 . Run ` npm run build ` to regenerate schemas
119- 4 . Submit a pull request
149+ 2 . Create a feature branch
150+ 3 . Update ` component-metadata.json ` with your changes
151+ 4 . Run ` npm run build ` to regenerate schemas
152+ 5 . Commit using conventional commit format
153+ 6 . Submit a pull request
154+
155+ ### Development Setup
156+
157+ ``` bash
158+ # Install dependencies
159+ npm install
160+
161+ # Build schemas
162+ npm run build
163+
164+ # Watch for changes
165+ npm run dev
166+
167+ # Clean and rebuild
168+ npm run rebuild
169+ ```
120170
121171---
122172
0 commit comments