@forgespace/branding-mcp 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/README.md +41 -5
  2. package/dist/index.js +1 -1
  3. package/package.json +20 -3
  4. package/server.json +29 -0
  5. package/.env.example +0 -3
  6. package/.github/CODEOWNERS +0 -1
  7. package/.github/ISSUE_TEMPLATE/config.yml +0 -8
  8. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -22
  9. package/.github/PULL_REQUEST_TEMPLATE.md +0 -22
  10. package/.github/dependabot.yml +0 -17
  11. package/.github/workflows/ci.yml +0 -55
  12. package/.github/workflows/codeql.yml +0 -47
  13. package/.github/workflows/release-automation.yml +0 -56
  14. package/.github/workflows/secret-scan.yml +0 -13
  15. package/.github/workflows/security-scan.yml +0 -37
  16. package/.github/workflows/semgrep.yml +0 -12
  17. package/.github/workflows/trivy.yml +0 -17
  18. package/.gitleaks.toml +0 -14
  19. package/.husky/commit-msg +0 -1
  20. package/.nvmrc +0 -1
  21. package/.prettierrc.json +0 -10
  22. package/CHANGELOG.md +0 -114
  23. package/CONTRIBUTING.md +0 -203
  24. package/catalog-info.yaml +0 -16
  25. package/commitlint.config.cjs +0 -24
  26. package/data/README.md +0 -13
  27. package/docs/API.md +0 -110
  28. package/docs/DATA_SOURCES.md +0 -69
  29. package/docs/INTEGRATION.md +0 -58
  30. package/eslint.config.js +0 -52
  31. package/jest.config.js +0 -40
  32. package/knip.json +0 -10
  33. package/src/__tests__/integration/brand-generation.test.ts +0 -84
  34. package/src/__tests__/integration/mcp-server.test.ts +0 -18
  35. package/src/__tests__/unit/ai-interpreter.test.ts +0 -172
  36. package/src/__tests__/unit/border-system.test.ts +0 -77
  37. package/src/__tests__/unit/color-palette.test.ts +0 -161
  38. package/src/__tests__/unit/contrast-checker.test.ts +0 -124
  39. package/src/__tests__/unit/design-system-tool.test.ts +0 -176
  40. package/src/__tests__/unit/design-tokens.test.ts +0 -184
  41. package/src/__tests__/unit/favicon-generator.test.ts +0 -80
  42. package/src/__tests__/unit/gradient-system.test.ts +0 -122
  43. package/src/__tests__/unit/logo-generator.test.ts +0 -146
  44. package/src/__tests__/unit/motion-system.test.ts +0 -91
  45. package/src/__tests__/unit/og-image-generator.test.ts +0 -115
  46. package/src/__tests__/unit/shadow-system.test.ts +0 -63
  47. package/src/__tests__/unit/spacing-scale.test.ts +0 -60
  48. package/src/__tests__/unit/typography-system.test.ts +0 -71
  49. package/src/index.ts +0 -76
  50. package/src/lib/branding-core/ai/brand-interpreter.ts +0 -30
  51. package/src/lib/branding-core/ai/claude-interpreter.ts +0 -76
  52. package/src/lib/branding-core/ai/intent-applier.ts +0 -59
  53. package/src/lib/branding-core/ai/keyword-interpreter.ts +0 -95
  54. package/src/lib/branding-core/ai/prompts.ts +0 -93
  55. package/src/lib/branding-core/ai/types.ts +0 -36
  56. package/src/lib/branding-core/documents/html-generator.ts +0 -32
  57. package/src/lib/branding-core/documents/pdf-generator.ts +0 -21
  58. package/src/lib/branding-core/exporters/css-variables.ts +0 -71
  59. package/src/lib/branding-core/exporters/design-tokens.ts +0 -86
  60. package/src/lib/branding-core/exporters/figma-tokens.ts +0 -87
  61. package/src/lib/branding-core/exporters/react-theme.ts +0 -69
  62. package/src/lib/branding-core/exporters/sass-variables.ts +0 -74
  63. package/src/lib/branding-core/exporters/tailwind-preset.ts +0 -67
  64. package/src/lib/branding-core/generators/border-system.ts +0 -41
  65. package/src/lib/branding-core/generators/color-palette.ts +0 -147
  66. package/src/lib/branding-core/generators/favicon-generator.ts +0 -33
  67. package/src/lib/branding-core/generators/gradient-system.ts +0 -120
  68. package/src/lib/branding-core/generators/logo-generator.ts +0 -152
  69. package/src/lib/branding-core/generators/motion-system.ts +0 -98
  70. package/src/lib/branding-core/generators/og-image-generator.ts +0 -97
  71. package/src/lib/branding-core/generators/shadow-system.ts +0 -66
  72. package/src/lib/branding-core/generators/spacing-scale.ts +0 -29
  73. package/src/lib/branding-core/generators/typography-system.ts +0 -128
  74. package/src/lib/branding-core/index.ts +0 -28
  75. package/src/lib/branding-core/validators/brand-consistency.ts +0 -79
  76. package/src/lib/branding-core/validators/contrast-checker.ts +0 -37
  77. package/src/lib/branding-core/validators/token-schema.ts +0 -50
  78. package/src/lib/config.ts +0 -13
  79. package/src/lib/logger.ts +0 -12
  80. package/src/lib/types.ts +0 -236
  81. package/src/resources/brand-knowledge.ts +0 -60
  82. package/src/resources/brand-templates.ts +0 -385
  83. package/src/tools/create-brand-guidelines.ts +0 -94
  84. package/src/tools/export-design-tokens.ts +0 -52
  85. package/src/tools/generate-brand-assets.ts +0 -48
  86. package/src/tools/generate-brand-identity.ts +0 -115
  87. package/src/tools/generate-color-palette.ts +0 -43
  88. package/src/tools/generate-design-system.ts +0 -163
  89. package/src/tools/generate-typography-system.ts +0 -42
  90. package/src/tools/refine-brand-element.ts +0 -65
  91. package/src/tools/validate-brand-consistency.ts +0 -32
  92. package/tsconfig.json +0 -21
package/README.md CHANGED
@@ -7,6 +7,7 @@
7
7
  </div>
8
8
 
9
9
  [![CI](https://github.com/Forge-Space/branding-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/Forge-Space/branding-mcp/actions/workflows/ci.yml)
10
+ [![npm version](https://img.shields.io/npm/v/@forgespace/branding-mcp)](https://www.npmjs.com/package/@forgespace/branding-mcp)
10
11
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
11
12
 
12
13
  Generate complete design systems — colors, typography, spacing, shadows, borders, motion tokens, gradients, multi-variant logos, favicons, and OG images with multi-format export. 9 MCP tools, zero API dependencies, algorithmic-first generation.
@@ -34,19 +35,35 @@ npm install
34
35
  npm run build
35
36
  ```
36
37
 
37
- ### As MCP Server (stdio)
38
+ ### Run from npm (stdio)
39
+
40
+ ```bash
41
+ npx -y @forgespace/branding-mcp@latest
42
+ ```
43
+
44
+ ### Install globally
45
+
46
+ ```bash
47
+ npm install -g @forgespace/branding-mcp
48
+ forgespace-branding-mcp
49
+ ```
50
+
51
+ ### IDE / client config
38
52
 
39
53
  ```json
40
54
  {
41
55
  "mcpServers": {
42
- "branding": {
43
- "command": "node",
44
- "args": ["path/to/branding-mcp/dist/index.js"]
56
+ "forgespace-branding": {
57
+ "command": "npx",
58
+ "args": ["-y", "@forgespace/branding-mcp@latest"]
45
59
  }
46
60
  }
47
61
  }
48
62
  ```
49
63
 
64
+ Set `ANTHROPIC_API_KEY` when you want AI-assisted refinement. The server also
65
+ works in algorithmic-only mode without external APIs.
66
+
50
67
  ### MCP Tools
51
68
 
52
69
  | Tool | Description |
@@ -78,6 +95,19 @@ npm run test:coverage # Coverage report
78
95
  npm run build # Build TypeScript
79
96
  ```
80
97
 
98
+ ## Distribution
99
+
100
+ - **npm** — installable as
101
+ [`@forgespace/branding-mcp`](https://www.npmjs.com/package/@forgespace/branding-mcp)
102
+ - **MCP Registry metadata** — `server.json` and `mcpName` are included for
103
+ registry submission
104
+ - **Tag release automation** — pushing `v*` runs npm publish with provenance,
105
+ then publishes the same version to the MCP Registry via GitHub OIDC
106
+ - **Weekly registry ops** — `.github/workflows/mcp-registry-status.yml` refreshes
107
+ one issue with npm and MCP Registry drift, visibility, and next actions
108
+ - **GitHub** —
109
+ [Forge-Space/branding-mcp](https://github.com/Forge-Space/branding-mcp)
110
+
81
111
  ## Architecture
82
112
 
83
113
  ```
@@ -101,10 +131,16 @@ src/
101
131
  Part of the [Forge Space](https://github.com/Forge-Space) ecosystem:
102
132
 
103
133
  - **mcp-gateway** — Register as MCP server (port 8033)
104
- - **uiforge-mcp** — Consumes brand tokens via `brandId` parameter
134
+ - **ui-mcp** — Consumes brand tokens via `brandId` parameter
105
135
  - **uiforge-webapp** — Brand management UI at `/branding/*`
106
136
  - **forge-patterns** — Shared configs and conventions
107
137
 
138
+ ## Community
139
+
140
+ - [Documentation](https://docs.forgespace.co/docs)
141
+ - [GitHub Discussions](https://github.com/orgs/Forge-Space/discussions)
142
+ - [Issue tracker](https://github.com/Forge-Space/branding-mcp/issues)
143
+
108
144
  ## License
109
145
 
110
146
  MIT
package/dist/index.js CHANGED
@@ -19,7 +19,7 @@ async function main() {
19
19
  logger.info({ env: config.nodeEnv }, 'Starting branding-mcp server');
20
20
  const server = new McpServer({
21
21
  name: '@forgespace/branding-mcp',
22
- version: '0.1.0',
22
+ version: '0.7.1',
23
23
  });
24
24
  registerGenerateBrandIdentity(server);
25
25
  registerGenerateColorPalette(server);
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@forgespace/branding-mcp",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
+ "mcpName": "io.github.forge-space/branding-mcp",
4
5
  "description": "MCP server for AI-powered brand identity generation — color palettes, typography systems, design tokens, and brand guidelines with multi-format export",
5
6
  "type": "module",
6
7
  "main": "dist/index.js",
@@ -26,18 +27,34 @@
26
27
  "typecheck": "tsc --noEmit",
27
28
  "check:cycles": "madge --circular --extensions ts src/",
28
29
  "knip": "knip",
30
+ "registry:check": "node scripts/registry-check.mjs",
29
31
  "pre-commit": "npm run lint && npm run format && npm run test",
30
- "prepare": "husky"
32
+ "prepare": "husky",
33
+ "prepublishOnly": "npm run build",
34
+ "prepack": "npm run build"
35
+ },
36
+ "files": [
37
+ "dist",
38
+ "README.md",
39
+ "LICENSE",
40
+ "server.json"
41
+ ],
42
+ "publishConfig": {
43
+ "access": "public",
44
+ "registry": "https://registry.npmjs.org/"
31
45
  },
32
46
  "keywords": [
33
47
  "mcp",
48
+ "mcp-server",
34
49
  "branding",
35
50
  "design-tokens",
36
51
  "color-palette",
37
52
  "typography",
38
53
  "brand-identity",
54
+ "agent-tools",
39
55
  "ai",
40
- "forge-space"
56
+ "forge-space",
57
+ "internal-developer-platform"
41
58
  ],
42
59
  "author": "Forge Space",
43
60
  "license": "MIT",
package/server.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
+ "name": "io.github.forge-space/branding-mcp",
4
+ "description": "AI-powered brand identity generation via MCP with design tokens, typography, logo assets, and brand guidelines export.",
5
+ "version": "0.7.1",
6
+ "registryType": "npm",
7
+ "repository": {
8
+ "url": "https://github.com/Forge-Space/branding-mcp",
9
+ "source": "github"
10
+ },
11
+ "packages": [
12
+ {
13
+ "registryType": "npm",
14
+ "identifier": "@forgespace/branding-mcp",
15
+ "version": "0.7.1",
16
+ "transport": {
17
+ "type": "stdio"
18
+ }
19
+ }
20
+ ],
21
+ "environmentVariables": [
22
+ {
23
+ "name": "ANTHROPIC_API_KEY",
24
+ "description": "Optional. Enables natural-language brand refinement with Anthropic when the AI strategy is selected.",
25
+ "isRequired": false,
26
+ "isSecret": true
27
+ }
28
+ ]
29
+ }
package/.env.example DELETED
@@ -1,3 +0,0 @@
1
- ANTHROPIC_API_KEY=REPLACE_WITH_YOUR_ANTHROPIC_API_KEY
2
- LOG_LEVEL=info
3
- NODE_ENV=development
@@ -1 +0,0 @@
1
- * @LucasSantana-Dev
@@ -1,8 +0,0 @@
1
- blank_issues_enabled: false
2
- contact_links:
3
- - name: Forge Space Discussions
4
- url: https://github.com/orgs/Forge-Space/discussions
5
- about: Ask questions and share ideas
6
- - name: Security Policy
7
- url: https://github.com/Forge-Space/.github/security/policy
8
- about: Report security vulnerabilities
@@ -1,22 +0,0 @@
1
- ---
2
- name: Feature Request
3
- about: Suggest a new feature or improvement
4
- title: '[FEATURE] '
5
- labels: ['enhancement', 'needs-triage']
6
- ---
7
-
8
- ## Problem
9
-
10
- <!-- What problem does this solve? -->
11
-
12
- ## Proposed Solution
13
-
14
- <!-- How should it work? -->
15
-
16
- ## Alternatives Considered
17
-
18
- <!-- Other approaches you thought of -->
19
-
20
- ## Additional Context
21
-
22
- <!-- Screenshots, examples, references -->
@@ -1,22 +0,0 @@
1
- ## Summary
2
-
3
- <!-- Brief description of what this PR does -->
4
-
5
- ## Changes
6
-
7
- <!-- Bullet list of changes -->
8
-
9
- ## Type
10
-
11
- - [ ] feat: New feature
12
- - [ ] fix: Bug fix
13
- - [ ] refactor: Code refactoring
14
- - [ ] chore: Maintenance
15
- - [ ] docs: Documentation
16
-
17
- ## Checklist
18
-
19
- - [ ] `npm run validate` passes
20
- - [ ] Tests cover new functionality
21
- - [ ] CHANGELOG.md updated
22
- - [ ] No secrets or credentials committed
@@ -1,17 +0,0 @@
1
- version: 2
2
- updates:
3
- - package-ecosystem: 'npm'
4
- directory: '/'
5
- schedule:
6
- interval: 'weekly'
7
- day: 'monday'
8
- groups:
9
- forge-ecosystem:
10
- patterns: ['@forgespace/*']
11
- minor-and-patch:
12
- update-types: ['minor', 'patch']
13
- open-pull-requests-limit: 10
14
- - package-ecosystem: 'github-actions'
15
- directory: '/'
16
- schedule:
17
- interval: 'weekly'
@@ -1,55 +0,0 @@
1
- name: CI
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- pull_request:
7
- branches: [main]
8
-
9
- concurrency:
10
- group: ${{ github.workflow }}-${{ github.ref }}
11
- cancel-in-progress: true
12
-
13
- jobs:
14
- lint:
15
- name: Lint & Format
16
- runs-on: ubuntu-latest
17
- steps:
18
- - uses: Forge-Space/.github/.github/actions/setup-node@main
19
- - run: npm run lint:check
20
- - run: npm run format:check
21
-
22
- typecheck:
23
- name: Type Check
24
- runs-on: ubuntu-latest
25
- steps:
26
- - uses: Forge-Space/.github/.github/actions/setup-node@main
27
- - run: npm run typecheck
28
-
29
- test:
30
- name: Test (Node ${{ matrix.node-version }})
31
- runs-on: ubuntu-latest
32
- strategy:
33
- matrix:
34
- node-version: [22, 24]
35
- steps:
36
- - uses: Forge-Space/.github/.github/actions/setup-node@main
37
- with:
38
- node-version: ${{ matrix.node-version }}
39
- - run: npm run test:coverage
40
- - name: Upload coverage
41
- if: matrix.node-version == 22
42
- uses: codecov/codecov-action@v5
43
- with:
44
- file: ./coverage/lcov.info
45
- fail_ci_if_error: false
46
-
47
- build:
48
- name: Build
49
- runs-on: ubuntu-latest
50
- needs: [lint, typecheck, test]
51
- steps:
52
- - uses: Forge-Space/.github/.github/actions/setup-node@main
53
- - run: npm run build
54
- - name: Verify dist output
55
- run: test -f dist/index.js
@@ -1,47 +0,0 @@
1
- name: CodeQL Security Analysis
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- pull_request:
7
- branches: [main]
8
- schedule:
9
- - cron: '0 2 * * 1'
10
-
11
- jobs:
12
- analyze:
13
- name: Analyze
14
- runs-on: ubuntu-latest
15
- timeout-minutes: 360
16
- permissions:
17
- security-events: write
18
- packages: read
19
- actions: read
20
- contents: read
21
-
22
- steps:
23
- - name: Checkout repository
24
- uses: actions/checkout@v6
25
-
26
- - name: Setup Node.js
27
- uses: actions/setup-node@v6
28
- with:
29
- node-version: 22
30
- cache: npm
31
-
32
- - name: Install dependencies
33
- run: npm ci
34
-
35
- - name: Initialize CodeQL
36
- uses: github/codeql-action/init@v4
37
- with:
38
- languages: javascript-typescript
39
- queries: +security-and-quality
40
-
41
- - name: Build project
42
- run: npm run build
43
-
44
- - name: Perform CodeQL Analysis
45
- uses: github/codeql-action/analyze@v4
46
- with:
47
- category: '/language:javascript-typescript'
@@ -1,56 +0,0 @@
1
- name: Release
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
-
8
- concurrency:
9
- group: release
10
- cancel-in-progress: false
11
-
12
- jobs:
13
- validate:
14
- name: Validate
15
- runs-on: ubuntu-latest
16
- steps:
17
- - uses: actions/checkout@v6
18
- - uses: actions/setup-node@v6
19
- with:
20
- node-version: 22
21
- cache: npm
22
- - run: npm ci
23
- - run: npm run build
24
- - run: npm run test
25
-
26
- release:
27
- name: Create Release
28
- needs: [validate]
29
- runs-on: ubuntu-latest
30
- permissions:
31
- contents: write
32
- steps:
33
- - uses: actions/checkout@v6
34
- - name: Create GitHub Release
35
- uses: softprops/action-gh-release@v2
36
- with:
37
- generate_release_notes: true
38
-
39
- publish:
40
- name: Publish to npm
41
- needs: [validate]
42
- runs-on: ubuntu-latest
43
- permissions:
44
- contents: read
45
- steps:
46
- - uses: actions/checkout@v6
47
- - uses: actions/setup-node@v6
48
- with:
49
- node-version: 22
50
- cache: npm
51
- registry-url: https://registry.npmjs.org
52
- - run: npm ci
53
- - run: npm run build
54
- - run: npm publish --access public
55
- env:
56
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -1,13 +0,0 @@
1
- name: Secret Scanning
2
-
3
- on:
4
- push:
5
- branches: ['**']
6
- pull_request:
7
- branches: [main]
8
-
9
- jobs:
10
- secrets:
11
- uses: Forge-Space/.github/.github/workflows/reusable-secret-scan.yml@main
12
- permissions:
13
- contents: read
@@ -1,37 +0,0 @@
1
- name: Security Scan
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- pull_request:
7
- branches: [main]
8
- schedule:
9
- - cron: '0 6 * * 1'
10
-
11
- jobs:
12
- audit:
13
- name: Dependency Audit
14
- runs-on: ubuntu-latest
15
- steps:
16
- - uses: actions/checkout@v6
17
- - uses: actions/setup-node@v6
18
- with:
19
- node-version: 22
20
- cache: npm
21
- - run: npm ci
22
- - name: Audit production dependencies
23
- run: npm audit --omit=dev --audit-level=high
24
- - name: Audit dev dependencies (advisory only)
25
- run: npm audit --audit-level=high || echo "::warning::Dev dependencies have vulnerabilities. Review manually."
26
- continue-on-error: true
27
-
28
- secret-scanning:
29
- name: Secret Scanning
30
- runs-on: ubuntu-latest
31
- steps:
32
- - uses: actions/checkout@v6
33
- with:
34
- fetch-depth: 0
35
- - uses: trufflesecurity/trufflehog@v3.93.7
36
- with:
37
- extra_args: --only-verified
@@ -1,12 +0,0 @@
1
- name: Semgrep CE
2
-
3
- on:
4
- pull_request: {}
5
- push:
6
- branches: [main]
7
- paths:
8
- - .github/workflows/semgrep.yml
9
-
10
- jobs:
11
- semgrep:
12
- uses: Forge-Space/.github/.github/workflows/reusable-semgrep.yml@main
@@ -1,17 +0,0 @@
1
- name: Trivy Security Scan
2
-
3
- on:
4
- pull_request: {}
5
- push:
6
- branches: [main]
7
-
8
- permissions:
9
- contents: read
10
- security-events: write
11
-
12
- jobs:
13
- trivy:
14
- uses: Forge-Space/.github/.github/workflows/reusable-trivy.yml@main
15
- permissions:
16
- contents: read
17
- security-events: write
package/.gitleaks.toml DELETED
@@ -1,14 +0,0 @@
1
- title = "Branding MCP Gitleaks Config"
2
-
3
- [allowlist]
4
- description = "Allowlist for placeholder values"
5
- regexTarget = "match"
6
- regexes = [
7
- '''REPLACE_WITH_.*''',
8
- '''your-.*-here''',
9
- '''example\.com''',
10
- ]
11
- paths = [
12
- '''.env\.example''',
13
- '''data/.*''',
14
- ]
package/.husky/commit-msg DELETED
@@ -1 +0,0 @@
1
- npx --no -- commitlint --edit "$1"
package/.nvmrc DELETED
@@ -1 +0,0 @@
1
- 22
package/.prettierrc.json DELETED
@@ -1,10 +0,0 @@
1
- {
2
- "semi": true,
3
- "trailingComma": "es5",
4
- "singleQuote": true,
5
- "printWidth": 100,
6
- "tabWidth": 2,
7
- "arrowParens": "always",
8
- "endOfLine": "lf",
9
- "jsxSingleQuote": true
10
- }
package/CHANGELOG.md DELETED
@@ -1,114 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- ## [Unreleased]
6
-
7
- ## [0.7.0] - 2026-03-07
8
-
9
- ### Added
10
-
11
- - **Import cycle detection** — `madge --circular` via `npm run check:cycles`
12
- - **Dead code detection** — knip config with library export exclusions
13
- - **Security scanning** — Semgrep CE and Trivy integration in CI
14
- - **Issue templates** — Bug report and feature request templates
15
- - **Service catalog** — catalog-info.yaml for IDP service discovery
16
- - **Ecosystem health** — Dependabot config, .nvmrc, CODEOWNERS
17
-
18
- ### Changed
19
-
20
- - **CI workflows** — Migrated to org-wide reusable workflows for security scans and Node.js setup
21
- - **Dependency updates** — Bumped lint-staged (15.5.2→16.3.2), actions/setup-node (4→6), actions/checkout (4→6), trufflesecurity/trufflehog (3.93.3→3.93.7), and minor/patch group updates
22
-
23
- ### Removed
24
-
25
- - Unused dependencies: `culori`, `pdfkit`, `satori`, `sharp`, `@types/pdfkit`
26
-
27
- ## [0.6.2] - 2026-03-07
28
-
29
- ### Fixed
30
-
31
- - **WCAG contrast compliance** — Secondary (#3B82F6→#2563EB) and accent (#F59E0B→#B45309) colors now pass AA 4.5:1 on white backgrounds. Brand consistency score 75→100
32
-
33
- ## [0.6.1] - 2026-03-06
34
-
35
- ### Changed
36
-
37
- - **Modern Horn brand templates** — Default Forge Space logo SVGs updated to Modern Horn icon geometry and Sora wordmark (#A78BFA/#8B5CF6/#6D28D9)
38
-
39
- ## [0.6.0] - 2026-03-01
40
-
41
- ### Added
42
-
43
- - Public type exports from package entry point: `BrandIdentity`, `ColorPalette`, `TypographySystem`, `SpacingScale`, `ShadowSystem`, `BorderSystem`, `MotionSystem`, `GradientSystem`, `LogoOutput`, `BrandStyle`, `ColorHarmony`, `ExportFormat`
44
- - Enables downstream packages (`@forgespace/brand-guide`) to re-export types without reaching into internal paths
45
-
46
- ## [0.5.0] - 2026-02-28
47
-
48
- ### Added
49
-
50
- - New MCP tool: `generate_design_system` — complete design system in one call (identity + token export combined)
51
- - 10 new tests for design system tool (198 total across 16 suites)
52
-
53
- ## [0.4.0] - 2026-02-28
54
-
55
- ### Added
56
-
57
- - Gradient system generator with 5 style-aware presets (hero, button, card, text, background) across 8 brand styles
58
- - Multi-variant logo generator: wordmark, monogram, abstract, icon (4 SVG variants per brand)
59
- - Favicon generator producing 4 sizes (16, 32, 180, 512) with stroke optimization for small sizes
60
- - OG image templates: default (1200x630), article (1200x630), social (1200x1200) with brand gradient backgrounds
61
- - New MCP tool: `generate_brand_assets` for favicon and OG image generation from existing brand identity
62
- - All 6 exporters support gradient tokens (CSS, Tailwind, W3C JSON, Figma, React, Sass)
63
- - 55 new tests (188 total), 15 test suites
64
-
65
- ### Changed
66
-
67
- - Logo generator uses brand typography font instead of hardcoded Inter
68
- - `LogoOutput` now includes `variants` record alongside backward-compatible `svg` field
69
- - `LogoConfig` accepts optional `style` for style-aware monogram/abstract shapes
70
-
71
- ## [0.3.0] - 2026-02-28
72
-
73
- ### Added
74
-
75
- - Shadow/elevation system generator with 6 levels (none, sm, md, lg, xl, 2xl), brand-tinted colors, light/dark theme support
76
- - Border/shape system generator with style-aware radius scales and border widths for all 8 brand styles
77
- - Motion/animation system generator with duration scales, cubic-bezier easings, and transition presets per brand style
78
- - New token types in `BrandIdentity`: `shadows`, `borders`, `motion` (backward-compatible, optional)
79
- - All 6 exporters updated: CSS variables, Tailwind preset, W3C JSON, Figma tokens, React theme, Sass variables now include shadow, border, and motion tokens
80
- - `generate_brand_identity` tool now includes shadows, borders, and motion in output
81
- - 36 new tests (133 total), 98.36% statement coverage, 100% function coverage
82
-
83
- ## [0.2.0] - 2026-02-24
84
-
85
- ### Added
86
-
87
- - AI interpretation layer for natural language brand refinement (`src/lib/branding-core/ai/`)
88
- - Strategy pattern: keyword (zero-cost), Claude API (Anthropic Messages), and auto (fallback) interpreters
89
- - `BrandIntent` abstraction decoupling NL understanding from generator execution
90
- - 20+ color keywords (warm, vibrant, premium, muted, dark, elegant, etc.) with HSL shift values
91
- - 15+ typography keywords (serif, editorial, dramatic, modern, compact, etc.) with font/scale mapping
92
- - `intent-applier` module applying HSL hue/saturation/lightness shifts before palette generation
93
- - Structured Claude prompts with brand context, JSON schema, and design principles
94
- - Optional `strategy` parameter on `refine_brand_element` tool (keyword/ai/auto)
95
- - `_interpretation` metadata in refinement responses showing strategy used and reasoning
96
- - 24 new tests for AI interpreter, intent applier, and strategy selection (97 total)
97
-
98
- ## [0.1.0] - 2026-02-24
99
-
100
- ### Added
101
-
102
- - Initial project structure with MCP server architecture
103
- - Color palette generator with 6 harmony modes (complementary, analogous, triadic, split-complementary, tetradic, monochromatic)
104
- - Typography system generator with modular type scales and curated font pairings
105
- - Spacing scale generator with geometric progression
106
- - SVG logo generator with brand colors and initials
107
- - 6 design token exporters: W3C JSON, CSS custom properties, Tailwind preset, Figma tokens, React theme, Sass variables
108
- - WCAG contrast checker (AA/AAA compliance)
109
- - Brand consistency validator with scoring
110
- - HTML brand guidelines generator
111
- - 7 MCP tools: generate_brand_identity, generate_color_palette, generate_typography_system, export_design_tokens, create_brand_guidelines, validate_brand_consistency, refine_brand_element
112
- - 2 MCP resources: brand templates catalog, brand knowledge base
113
- - Unit and integration test suite
114
- - CI/CD workflows (lint, test, build, security scan)