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 da335734d3
commit a6f664088c
405 changed files with 69134 additions and 5936 deletions

View File

@@ -0,0 +1,298 @@
{
"id": "scientific-journal",
"name": "Scientific Journal",
"category": "Academic",
"description": "Data-first design emphasizing clarity, hierarchy, and density. Optimized for papers with complex figures and tables.",
"vibe": "Scientific, Precise, Modern",
"googleFontsImport": "https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Merriweather:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Fira+Mono:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap",
"typography": {
"fonts": {
"heading": "Source Sans 3",
"body": "Merriweather",
"code": "Fira Mono"
},
"colors": {
"text": "222222",
"textSecondary": "555555",
"background": "FFFFFF",
"accent": "0056D2",
"border": "DDDDDD",
"codeBg": "F7F9FA",
"blockquoteBorder": "0056D2"
}
},
"elements": {
"h1": {
"font": "heading",
"size": 24,
"color": "text",
"bold": true,
"align": "left",
"spacing": {
"before": 24,
"after": 12,
"line": 1.2
}
},
"h2": {
"font": "heading",
"size": 18,
"color": "accent",
"bold": true,
"align": "left",
"spacing": {
"before": 20,
"after": 10,
"line": 1.25
}
},
"h3": {
"font": "heading",
"size": 14,
"color": "text",
"bold": true,
"align": "left",
"spacing": {
"before": 16,
"after": 8,
"line": 1.3
}
},
"h4": {
"font": "heading",
"size": 12,
"color": "textSecondary",
"bold": true,
"align": "left",
"allCaps": true,
"spacing": {
"before": 12,
"after": 6,
"line": 1.3
}
},
"h5": {
"font": "body",
"size": 11,
"color": "text",
"bold": true,
"align": "left",
"spacing": {
"before": 10,
"after": 5,
"line": 1.4
}
},
"h6": {
"font": "body",
"size": 10,
"color": "textSecondary",
"italic": true,
"align": "left",
"spacing": {
"before": 8,
"after": 4,
"line": 1.4
}
},
"p": {
"font": "body",
"size": 10.5,
"color": "text",
"align": "justify",
"spacing": {
"before": 0,
"after": 8,
"line": 1.6
}
},
"blockquote": {
"font": "body",
"size": 10,
"color": "textSecondary",
"italic": true,
"align": "left",
"spacing": {
"before": 12,
"after": 12,
"line": 1.5
},
"indent": 18,
"borderLeft": {
"color": "accent",
"width": 3,
"style": "solid"
}
},
"code": {
"font": "code",
"size": 9,
"color": "text",
"background": "codeBg",
"spacing": {
"before": 0,
"after": 0,
"line": 1.3
}
},
"pre": {
"font": "code",
"size": 9,
"color": "text",
"background": "codeBg",
"padding": 10,
"spacing": {
"before": 12,
"after": 12,
"line": 1.3
},
"border": {
"color": "border",
"width": 1,
"style": "solid"
}
},
"ul": {
"spacing": {
"before": 8,
"after": 8,
"line": 1.5
},
"indent": 20,
"bullet": "square"
},
"ol": {
"spacing": {
"before": 8,
"after": 8,
"line": 1.5
},
"indent": 20,
"numbering": "decimal"
},
"li": {
"font": "body",
"size": 10.5,
"color": "text",
"spacing": {
"before": 0,
"after": 0,
"line": 1.5
}
},
"strong": {
"font": "body",
"bold": true
},
"em": {
"font": "body",
"italic": true
},
"a": {
"font": "heading",
"color": "accent",
"underline": false,
"bold": true
},
"table": {
"spacing": {
"before": 12,
"after": 12,
"line": 1.2
},
"borderTop": {
"color": "text",
"width": 1.5,
"style": "solid"
},
"borderBottom": {
"color": "text",
"width": 1.5,
"style": "solid"
}
},
"th": {
"font": "heading",
"size": 9.5,
"color": "text",
"bold": true,
"background": "F0F2F5",
"padding": 6,
"borderBottom": {
"color": "text",
"width": 1,
"style": "solid"
}
},
"td": {
"font": "body",
"size": 9.5,
"color": "text",
"padding": 6
},
"hr": {
"spacing": {
"before": 18,
"after": 18
},
"border": {
"color": "border",
"width": 1,
"style": "solid"
}
},
"img": {
"align": "center",
"spacing": {
"before": 12,
"after": 12
}
},
"del": {
"font": "body",
"strikethrough": true
},
"sup": {
"font": "heading",
"size": 7,
"superScript": true
},
"sub": {
"font": "heading",
"size": 7,
"subScript": true
},
"mark": {
"font": "body",
"background": "E1F5FE",
"color": "text"
},
"footnote": {
"font": "body",
"size": 9,
"color": "textSecondary",
"superScript": true
},
"footnoteRef": {
"font": "body",
"size": 9,
"color": "textSecondary",
"spacing": {
"before": 4,
"after": 4,
"line": 1.2
}
}
},
"page": {
"margins": {
"top": 72,
"bottom": 72,
"left": 72,
"right": 72
},
"columns": 1,
"header": true,
"footer": true
}
}