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:
75
README.md
75
README.md
@@ -63,7 +63,7 @@ In a world where document formatting tools are increasingly locked behind paywal
|
||||
|
||||
<div align="center">
|
||||
|
||||
| 🌟 **Free Forever** | 🔒 **Privacy First** | 🎨 **40+ Styles** | 🤝 **Open Source** |
|
||||
| 🌟 **Free Forever** | 🔒 **Privacy First** | 🎨 **150+ Styles** | 🤝 **Open Source** |
|
||||
|:---:|:---:|:---:|:---:|
|
||||
| No fees, no trials, no catches | All processing happens locally on your machine | From minimalist to ornate, academic to artistic | MIT licensed — use it, fork it, improve it together |
|
||||
|
||||
@@ -78,7 +78,7 @@ In a world where document formatting tools are increasingly locked behind paywal
|
||||
### 🎯 Core Capabilities
|
||||
|
||||
- **📄 Universal Markdown Support** — Drop in any `.md`, `.txt`, or `.markdown` file
|
||||
- **🎨 40+ Typography Styles** — Curated across 8 aesthetic categories
|
||||
- **🎨 150+ Typography Styles** — Curated across 8 aesthetic categories
|
||||
- **📐 Multiple Paper Sizes** — A4 and Letter formats supported
|
||||
- **💾 Local Processing** — Your documents never leave your machine
|
||||
- **🖥️ Native Desktop Apps** — Built with Tauri for Windows, macOS, and Linux
|
||||
@@ -86,7 +86,7 @@ In a world where document formatting tools are increasingly locked behind paywal
|
||||
|
||||
### 🏛️ Style Categories
|
||||
|
||||
Each style is a labor of love, crafted with attention to typographic detail:
|
||||
Each of the 163+ styles is a labor of love, crafted with attention to typographic detail:
|
||||
|
||||
| Category | Description | Example Styles |
|
||||
|----------|-------------|----------------|
|
||||
@@ -310,35 +310,58 @@ Want to contribute a new style to the collective? Here's how:
|
||||
1. **Choose a Category** — Find the appropriate file in `/styles/`
|
||||
2. **Define Your Style** — Create a complete `StyleOption` object:
|
||||
|
||||
```typescript
|
||||
```json
|
||||
{
|
||||
id: 'my-custom-style',
|
||||
name: 'My Style',
|
||||
category: 'Creative',
|
||||
description: 'A brief description of the aesthetic',
|
||||
vibe: 'Keywords that capture the feeling',
|
||||
googleFontsImport: 'https://fonts.googleapis.com/css2?family=YourFont&display=swap',
|
||||
wordConfig: {
|
||||
heading1: {
|
||||
font: 'Your Font',
|
||||
size: 24,
|
||||
color: '1a1a1a',
|
||||
bold: true,
|
||||
// ... more properties
|
||||
"id": "my-custom-style",
|
||||
"name": "My Style",
|
||||
"category": "Creative",
|
||||
"description": "A brief description of the aesthetic",
|
||||
"vibe": "Keywords that capture the feeling",
|
||||
"googleFontsImport": "https://fonts.googleapis.com/css2?family=YourFont&display=swap",
|
||||
"typography": {
|
||||
"fonts": {
|
||||
"heading": "Your Font",
|
||||
"body": "Your Body Font",
|
||||
"code": "Your Code Font"
|
||||
},
|
||||
heading2: { /* ... */ },
|
||||
body: { /* ... */ },
|
||||
accentColor: '6366f1'
|
||||
"colors": {
|
||||
"text": "1a1a1a",
|
||||
"textSecondary": "4a4a4a",
|
||||
"background": "ffffff",
|
||||
"accent": "6366f1",
|
||||
"border": "e5e5e5",
|
||||
"codeBg": "f3f4f6",
|
||||
"blockquoteBg": "f9fafb",
|
||||
"blockquoteBorder": "6366f1"
|
||||
}
|
||||
},
|
||||
previewCss: `
|
||||
h1 { font-family: 'Your Font'; font-size: 24pt; }
|
||||
/* ... match wordConfig exactly */
|
||||
`
|
||||
"elements": {
|
||||
"h1": {
|
||||
"font": "heading",
|
||||
"size": 24,
|
||||
"color": "text",
|
||||
"bold": true,
|
||||
"spacing": { "before": 24, "after": 12, "line": 1.2 }
|
||||
},
|
||||
"p": {
|
||||
"font": "body",
|
||||
"size": 11,
|
||||
"color": "text",
|
||||
"spacing": { "before": 0, "after": 10, "line": 1.5 }
|
||||
}
|
||||
// ... define other elements (h2-h6, blockquote, code, etc.)
|
||||
},
|
||||
"page": {
|
||||
"margins": { "top": 72, "bottom": 72, "left": 72, "right": 72 },
|
||||
"columns": 1,
|
||||
"header": true,
|
||||
"footer": true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
3. **Export It** — Add to the category's export array
|
||||
4. **Test Both Paths** — Verify preview looks right AND Word export works
|
||||
3. **Save It** — Save as a `.json` file in `src-tauri/templates/<category>/`
|
||||
4. **Build** — The app automatically loads JSON templates at runtime
|
||||
5. **Share With All** — Submit a PR so everyone benefits!
|
||||
|
||||
### Configuration Options
|
||||
|
||||
Reference in New Issue
Block a user