feat: port all template categories to JSON format

- Ported Minimalist templates to JSON (Swiss Grid, Brutalist, etc.)
- Ported Tech templates to JSON (SaaS, Terminal, Cyberpunk, etc.)
- Ported Creative templates to JSON (Art Gallery, Zine, Pop Art, etc.)
- Ported Industrial templates to JSON (Blueprint, Factory, Schematic, etc.)
- Ported Nature templates to JSON (Botanical, Ocean, Mountain, etc.)
- Ported Lifestyle templates to JSON (Cookbook, Travel, Coffee House, etc.)
- Ported Vintage templates to JSON (Art Deco, Medieval, Retro 80s, etc.)
- Updated README.md to reflect the new JSON-based style system (example configuration and contribution workflow)
- Completed migration of over 150 styles to the new architecture
This commit is contained in:
TypoGenie
2026-02-01 18:51:43 +02:00
parent a2631ac473
commit 60f39ed961
405 changed files with 69134 additions and 5936 deletions

View File

@@ -0,0 +1,321 @@
{
"id": "grunge-90s",
"name": "Grunge 90s",
"category": "creative",
"description": "Distressed, chaotic aesthetic inspired by 90s zines and music. Messy typography, torn edges, and angsty vibes.",
"vibe": "Chaotic, Distressed, Raw",
"googleFontsImport": "https://fonts.googleapis.com/css2?family=Rock+Salt&family=Special+Elite&display=swap",
"typography": {
"fonts": {
"heading": "Rock Salt",
"body": "Special Elite",
"code": "Special Elite"
},
"colors": {
"text": "212121",
"textSecondary": "4E342E",
"background": "EFEBE9",
"accent": "D84315",
"border": "3E2723",
"codeBg": "D7CCC8",
"blockquoteBorder": "212121"
}
},
"elements": {
"h1": {
"font": "heading",
"size": 36,
"color": "textSecondary",
"bold": true,
"align": "center",
"spacing": {
"before": 40,
"after": 20,
"line": 1.2
},
"rotation": -2,
"borderBottom": {
"color": "accent",
"width": 6,
"style": "dashed",
"space": 10
}
},
"h2": {
"font": "heading",
"size": 24,
"color": "text",
"bold": true,
"align": "left",
"spacing": {
"before": 30,
"after": 15,
"line": 1.3
},
"rotation": 1,
"background": "accent",
"padding": 8
},
"h3": {
"font": "body",
"size": 20,
"color": "text",
"bold": true,
"align": "left",
"spacing": {
"before": 24,
"after": 12,
"line": 1.3
},
"borderLeft": {
"color": "border",
"width": 4,
"style": "solid",
"space": 8
}
},
"h4": {
"font": "body",
"size": 18,
"color": "textSecondary",
"bold": true,
"align": "left",
"spacing": {
"before": 20,
"after": 10,
"line": 1.3
},
"allCaps": true
},
"h5": {
"font": "body",
"size": 16,
"color": "accent",
"bold": true,
"align": "left",
"spacing": {
"before": 16,
"after": 8,
"line": 1.4
}
},
"h6": {
"font": "body",
"size": 14,
"color": "text",
"italic": true,
"align": "left",
"spacing": {
"before": 16,
"after": 8,
"line": 1.4
}
},
"p": {
"font": "body",
"size": 14,
"color": "text",
"align": "left",
"spacing": {
"before": 0,
"after": 16,
"line": 1.6
}
},
"blockquote": {
"font": "heading",
"size": 14,
"color": "text",
"italic": false,
"align": "center",
"spacing": {
"before": 24,
"after": 24,
"line": 1.5
},
"padding": 20,
"border": {
"color": "border",
"width": 3,
"style": "solid"
},
"rotation": 1
},
"code": {
"font": "code",
"size": 12,
"color": "textSecondary",
"background": "codeBg",
"spacing": {
"before": 0,
"after": 0,
"line": 1.4
}
},
"pre": {
"font": "code",
"size": 12,
"color": "textSecondary",
"background": "codeBg",
"padding": 16,
"spacing": {
"before": 16,
"after": 16,
"line": 1.4
},
"border": {
"color": "border",
"width": 2,
"style": "dashed"
}
},
"ul": {
"spacing": {
"before": 16,
"after": 16,
"line": 1.6
},
"indent": 28,
"bullet": "disc"
},
"ol": {
"spacing": {
"before": 16,
"after": 16,
"line": 1.6
},
"indent": 28,
"numbering": "decimal"
},
"li": {
"font": "body",
"size": 14,
"color": "text",
"spacing": {
"before": 4,
"after": 4,
"line": 1.6
}
},
"strong": {
"font": "heading",
"bold": true,
"color": "textSecondary"
},
"em": {
"font": "body",
"italic": true,
"background": "codeBg"
},
"a": {
"font": "body",
"color": "accent",
"underline": true,
"bold": true
},
"table": {
"spacing": {
"before": 24,
"after": 24,
"line": 1.2
},
"border": {
"color": "border",
"width": 2,
"style": "solid"
}
},
"th": {
"font": "heading",
"size": 14,
"color": "background",
"bold": true,
"background": "textSecondary",
"padding": 12
},
"td": {
"font": "body",
"size": 14,
"color": "text",
"padding": 12,
"borderBottom": {
"color": "border",
"width": 1,
"style": "solid"
}
},
"hr": {
"spacing": {
"before": 32,
"after": 32
},
"border": {
"color": "accent",
"width": 4,
"style": "dashed"
}
},
"img": {
"align": "left",
"spacing": {
"before": 24,
"after": 24
},
"border": {
"color": "text",
"width": 4,
"style": "solid"
},
"grayscale": true,
"rotation": 1
},
"del": {
"font": "body",
"strikethrough": true,
"color": "accent"
},
"sup": {
"font": "body",
"size": 10,
"superScript": true
},
"sub": {
"font": "body",
"size": 10,
"subScript": true
},
"mark": {
"font": "body",
"background": "accent",
"color": "background"
},
"footnote": {
"font": "body",
"size": 12,
"color": "textSecondary",
"superScript": true,
"italic": true
},
"footnoteRef": {
"font": "body",
"size": 12,
"color": "textSecondary",
"spacing": {
"before": 6,
"after": 6,
"line": 1.2
}
}
},
"page": {
"margins": {
"top": 72,
"bottom": 72,
"left": 72,
"right": 72
},
"columns": 1,
"header": true,
"footer": true
}
}