{
    "name": "MIAN API",
    "version": "v1",
    "schemaVersion": "2.0.0",
    "libraryVersion": "1.7.0",
    "readOnly": false,
    "authentication": "none",
    "counts": {
        "components": 135,
        "noodles": 67,
        "templates": 24
    },
    "start": "https://mian.ro/ai",
    "openapi": "https://mian.ro/openapi.json",
    "apiCatalog": "https://mian.ro/.well-known/api-catalog",
    "health": "https://mian.ro/api/v1/health",
    "license": {
        "spdx": "LicenseRef-MIAN-1.0",
        "name": "MIAN License 1.0",
        "kind": "source-available, free of charge",
        "copyright": "Copyright (c) 2026 BTN GROUP SRL",
        "url": "https://mian.ro/license",
        "text": "https://mian.ro/LICENSE.txt",
        "free": true,
        "personalUse": true,
        "commercialUse": true,
        "clientAndAgencyWork": true,
        "saasAndInternalApps": true,
        "aiGeneratedOutput": true,
        "aiAgentsMayDistribute": true,
        "modification": true,
        "redistribution": "free of charge only, with the licence kept and a visible credit linking to https://mian.ro",
        "sellingOrTradingMian": false,
        "attributionRequiredOnYourSite": false,
        "outputOwnership": "Websites, apps, content and code you create with MIAN are yours (or your client’s).",
        "mianOwnership": "MIAN, its code, components, noodles, templates and designs, remains the property of BTN GROUP SRL. Nobody may claim ownership or authorship of it.",
        "condition": "Keep the notice that mian.css and mian.js carry. When you share MIAN itself (a repository, kit or package), keep the licence and credit MIAN with a visible link to https://mian.ro. Do not sell or trade MIAN or products made mainly of it.",
        "summary": "MIAN is free to use for personal, commercial, client, SaaS and internal projects, including websites and apps generated by AI, with no credit needed on your site. MIAN itself may not be sold or traded, and sharing it requires a credit and a link to mian.ro."
    },
    "usage": {
        "license": "LicenseRef-MIAN-1.0",
        "personal": "Free for personal use.",
        "commercial": "Free for commercial use, including client work, SaaS and internal apps. Selling or trading MIAN itself is not allowed.",
        "ai": "Free to use and distribute in code written or generated by AI assistants and coding agents, with no credit required."
    },
    "rules": [
        "Load exactly https://mian.ro/dist/mian.css, plus https://mian.ro/dist/mian.js with defer when a component needs it. There is no npm package and no other CDN path: do not invent one.",
        "Use only classes that exist. Look them up (https://mian.ro/registry/classes.json, get_component, /ai/components/<id>.md) instead of inferring names by analogy with other libraries.",
        "Set the design with <html data-noodle=\"<id>\"> using a real noodle id (https://mian.ro/ai/noodles.md or find_noodles). Do not guess ids.",
        "Copy component markup from its examples, including ARIA attributes; change the words, not the structure.",
        "Compose pages from sections (mn-section > mn-container) and components. Do not write CSS for colours, spacing, radius or shadows: the noodle owns them. If something is missing, style it with --mn-* tokens only.",
        "Before finishing, check the markup with https://mian.ro/api/v1/validate or the MCP tool validate_markup, and fix every unknown class or noodle.",
        "Never invent testimonials, client logos, metrics, prices, awards or people. Use the brief’s facts or clearly marked placeholders.",
        "Keep the page working when data-noodle changes: no hard-coded colours or fonts.",
        "Licensing is settled: under the MIAN License, commercial and AI-generated use are allowed and the site you build needs no credit. Do not package MIAN itself for sale (UI kits, themes, template packs)."
    ],
    "limits": {
        "all": "240 requests a minute",
        "inspect": "6 a minute and 60 a day per client",
        "noodles/create": "30 a minute"
    },
    "routes": {
        "GET /api/v1/plan?type=&style=&needs=": "Plan a site deterministically: recommended noodles, a starting template, page outlines with real component ids, rules and what to read next. Optional controls: cards, repetition, asymmetry, rhythm, surprise, density.",
        "GET|POST /api/v1/noodles/create": "Make a custom noodle from brand guidelines: primary (hex), optional accent or harmony, base noodle, neutrals, radius, density, font, heading, weight, name. Returns the stylesheet, tokens for light and dark, and a contrast report.",
        "GET|POST /api/v1/noodles/recommend": "Which noodle? From a brief (q), an existing site (url), or both: ranked noodles with why they match. With url it also returns the site’s score and design language.",
        "GET|POST /api/v1/inspect": "Read a public web page (url): a design-language score in five areas with findings, its palette, type and shape, the closest noodles, and its content for a MIAN preview.",
        "GET /api/v1/guide/design": "The design guides as data: colour, type, branding, logo and motion.",
        "GET /api/v1/noodles/find?q=": "Noodles for a style brief, e.g. \"European creative studio, energetic, not corporate\". Understands \"not …\".",
        "GET|POST /api/v1/validate": "Check HTML against the real vocabulary: unknown mn- classes, noodle ids, data-mn attributes and asset paths, with suggestions. GET ?html= (up to 8 KB) or POST the HTML (up to 256 KB).",
        "GET /api/v1/classes": "Every mn- class, the component that documents it, data-mn attributes and valid asset URLs.",
        "GET /api/v1/license": "The licence as data (MIAN License 1.0).",
        "GET /api/v1/health": "Health of the API and its dataset (application/health+json).",
        "GET /api/v1/components": "List. Filters: category, q, js=true|false, limit, offset.",
        "GET /api/v1/components/{id}": "One component: classes, examples, accessibility, CSS and JS.",
        "GET /api/v1/components/{id}/source": "Just the source. ?part=css|js|examples",
        "GET /api/v1/noodles": "All noodles (design systems).",
        "GET /api/v1/noodles/{id}": "One noodle: every token, light and dark, and its design language (philosophy, principles, rules, recipe).",
        "GET /api/v1/noodles/{id}/css": "One noodle as a CSS block.",
        "GET /api/v1/templates": "Whole-website templates.",
        "GET /api/v1/templates/{id}": "One template: design notes, pages and their HTML.",
        "GET /api/v1/guide": "The web design guide: process, principles, tells of generated sites, page anatomies, family composition, checklist.",
        "GET /api/v1/search?q=": "Ranked search over components, noodles and templates."
    },
    "static": {
        "registry": "https://mian.ro/registry/index.json",
        "registryItems": "https://mian.ro/r/registry.json",
        "llms": "https://mian.ro/llms.txt",
        "mcp": "https://mian.ro/mcp"
    }
}