@mcptoolshop/logo-presets
v1.0.0
Published
Curated generation presets for @mcptoolshop/logo-studio. Skip the tuning, start generating.
Maintainers
Readme
What is this?
Generation presets for @mcptoolshop/logo-studio. Each preset bundles the right checkpoint, sampler, CFG scale, steps, style, and negative prompts for a specific use case. Load a preset, and the tuning is done.
Install
npm install @mcptoolshop/logo-presets @mcptoolshop/logo-studioQuick start
import { mine, compile, generate } from '@mcptoolshop/logo-studio';
import {
loadPreset,
applyPresetToCompileOptions,
applyPresetToGenOptions,
} from '@mcptoolshop/logo-presets';
const preset = loadPreset('tech-startup')!;
const mined = await mine({
name: 'Acme',
description: 'We build bridges between legacy systems and modern cloud infrastructure.',
});
const compiled = compile(mined, applyPresetToCompileOptions(preset, {}));
const result = await generate(compiled, applyPresetToGenOptions(preset, {
backend: 'together',
}));Available presets
| ID | Style | Best for |
|---|---|---|
| tech-startup | Geometric, clean | Tech companies, developer tools |
| luxury-brand | Elegant, metallic | High-end products, fashion, jewelry |
| gaming | Bold, dynamic | Games, esports, entertainment |
| healthcare | Organic, calming | Medical, wellness, biotech |
| fintech | Swiss precision | Finance, banking, insurance |
| creative-agency | Expressive, modern | Design studios, creative services |
| saas | Minimal, gradient | Software products, cloud services |
| e-commerce | Friendly, colorful | Online retail, marketplaces |
User overrides always win
Presets fill gaps in your options. If you explicitly set a value, it takes precedence:
// Preset says cfg: 3.5, but your override wins
const genOptions = applyPresetToGenOptions(preset, {
backend: 'comfyui',
cfg: 5.0, // overrides preset
steps: 20, // overrides preset
});Custom presets
Create a JSON file with your own presets:
{
"version": 1,
"presets": [
{
"id": "my-brand",
"name": "My Brand Style",
"description": "Our specific brand guidelines",
"category": "custom",
"style": "minimal",
"logoType": "wordmark",
"cfg": 4.0,
"steps": 25,
"extraNegatives": ["busy", "ornate"]
}
]
}Load it:
import { loadPreset } from '@mcptoolshop/logo-presets';
const preset = loadPreset('my-brand', './my-presets.json');API
// List all presets (built-in + optional user file)
listPresets(userPresetPath?: string): GenerationPreset[]
// Load one preset by ID
loadPreset(id: string, userPresetPath?: string): GenerationPreset | null
// Load user presets from a JSON file
loadUserPresets(filePath: string): GenerationPreset[]
// Apply preset to compile options (user values win)
applyPresetToCompileOptions(preset, userOptions): CompileOptions
// Apply preset to generation options (user values win)
applyPresetToGenOptions(preset, userOptions): GenOptionsSecurity & Data Scope
| Aspect | Detail | |--------|--------| | Data touched | In-memory preset objects (checkpoints, samplers, prompts) | | Data NOT touched | No filesystem access, no network requests, no user data | | Permissions | None — pure library with no I/O | | Network | None | | Telemetry | None collected or sent |
See SECURITY.md for vulnerability reporting.
Scorecard
| Category | Score | |----------|-------| | A. Security | 10 | | B. Error Handling | 10 | | C. Operator Docs | 10 | | D. Shipping Hygiene | 10 | | E. Identity (soft) | 10 | | Overall | 50/50 |
Full audit: SHIP_GATE.md · SCORECARD.md
License
MIT
