Sign In

identityforge

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

identityforge - npm Package Compare versions

Comparing version
0.3.11
to
0.4.0
+41
-1
dist/api.js

@@ -0,5 +1,7 @@

import { randomUUID } from "node:crypto";
import { resolveApiKey, resolveApiUrl } from "./config.js";
import { isVersionGreater } from "./updateCheck.js";
export const CLI_VERSION = "0.3.11";
export const CLI_VERSION = "0.4.0";
let apiClient = "cli";
const clientProcessReference = randomUUID();
/** Select the client identity used by subsequent API requests. */

@@ -115,2 +117,5 @@ export function setApiClient(client = "cli") {

};
if (process.env.IDENTITYFORGE_TELEMETRY !== "0") {
headers["X-IdentityForge-Process"] = clientProcessReference;
}
const key = resolveApiKey();

@@ -365,2 +370,37 @@ if (key)

}
/** Google Fonts' own five categories, which is what the `fonts` table stores. */
export const FONT_CATEGORIES = [
"sans-serif",
"serif",
"display",
"monospace",
"handwriting",
];
export async function listFonts(opts = {}) {
const qs = new URLSearchParams();
if (opts.search)
qs.set("search", opts.search);
if (opts.category)
qs.set("category", opts.category);
if (opts.page != null)
qs.set("page", String(opts.page));
if (opts.pageSize != null)
qs.set("pageSize", String(opts.pageSize));
const suffix = qs.toString() ? `?${qs.toString()}` : "";
return requestJson(`/api/v1/fonts${suffix}`);
}
/** The id is a slug of the family, and the endpoint accepts either spelling. */
export async function similarFonts(identifier, limit) {
const suffix = limit == null ? "" : `?limit=${limit}`;
return requestJson(`/api/v1/fonts/${encodeURIComponent(identifier)}/similar${suffix}`);
}
export async function fontPairings(opts) {
const qs = new URLSearchParams();
if (opts.family)
qs.set("family", opts.family);
if (opts.role)
qs.set("role", opts.role);
const suffix = qs.toString() ? `?${qs.toString()}` : "";
return requestJson(`/api/v1/font-pairings${suffix}`);
}
export async function listImageDirections(opts = {}) {

@@ -367,0 +407,0 @@ const qs = new URLSearchParams();

+1
-1
{
"name": "identityforge",
"version": "0.3.11",
"version": "0.4.0",
"mcpName": "io.identityforge/mcp",

@@ -5,0 +5,0 @@ "description": "Agent-native brand naming, domain research, and design systems through one CLI and MCP server.",

@@ -43,9 +43,7 @@ <p align="center">

The three-minute lifecycle film follows a design system from the first choice
through later updates, an older-site rebuild, and a client handoff. The Aubade
storefront, Shiftly rebuild, and Kestrel rebrand are complete one-shot agent
builds from real Identity Forge design systems.
through later updates, an older-site rebuild, and a client handoff.
https://github.com/user-attachments/assets/e139a54f-8b06-4ba0-830f-0a476533d166
https://github.com/user-attachments/assets/b5125f58-6918-4355-b849-6863a4345a21
[Download the full-resolution 1080p WebM](https://github.com/KasayoDotCom/identityforge-mcp/releases/download/v0.3.10/identity-forge-lifecycle-explainer-v2.webm).
[Download the full-resolution 1080p WebM](https://github.com/KasayoDotCom/identityforge-mcp/releases/download/v0.3.9/identity-forge-lifecycle-explainer.webm).

@@ -146,3 +144,3 @@ ## For agents

Once connected, your agent gets 61 tools. Browsing free kits needs no key; scopes are noted where they apply.
Once connected, your agent gets 63 tools. Browsing free kits needs no key; scopes are noted where they apply.

@@ -156,2 +154,9 @@ ### Find a design kit

### Choose typography outside a kit
A kit already names its heading, body, and mono faces. These two answer the cases where it does not.
- `search_fonts`: browse the Google Fonts catalog by name or category, or pass `like` with a family you already have to find faces that resemble it. Metadata only, and `like` reads no letterform, so confirm the look before promising it.
- `suggest_font_pairings`: the curated heading/body/mono table, or what goes beside one family the user is committed to.
### Read and apply one

@@ -167,2 +172,9 @@

Identity Forge requests carry one random reference that lasts only for the
current CLI or MCP process. A successful local apply also sends one bodyless
completion signal. Neither includes paths, prompts, file contents, repository
names, or a persistent installation identifier. Set
`IDENTITYFORGE_TELEMETRY=0` to omit both the process reference and local apply
signal; ordinary API requests still appear in server access logs.
| File | What it is |

@@ -383,2 +395,7 @@ | --- | --- |

# Typography, for the cases a kit does not already settle
identityforge fonts search grotesk --category sans-serif # Google Fonts metadata, no files
identityforge fonts similar Inter # faces that resemble one you have
identityforge fonts pairings Fraunces --role heading # curated table + contrast suggestions
# Has this kit moved since I built against it? (read-only)

@@ -385,0 +402,0 @@ identityforge themes versions <id|slug> # version timeline, newest first

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display