@terrymooreii/sia 2.1.5 → 2.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_config.yml +3 -1
- package/docs/README.md +132 -0
- package/docs/creating-themes.md +772 -0
- package/docs/front-matter.md +557 -0
- package/docs/markdown-guide.md +536 -0
- package/docs/template-reference.md +581 -0
- package/lib/assets.js +1 -1
- package/lib/config.js +3 -1
- package/lib/content.js +74 -2
- package/lib/templates.js +3 -2
- package/package.json +1 -1
- package/readme.md +2 -1
- package/themes/developer/includes/hero.njk +6 -0
- package/themes/developer/pages/index.njk +1 -4
- package/themes/magazine/includes/hero.njk +8 -0
- package/themes/magazine/pages/index.njk +4 -9
- package/themes/main/includes/hero.njk +6 -0
- package/themes/main/pages/index.njk +1 -4
- package/themes/minimal/includes/hero.njk +6 -0
- package/themes/minimal/pages/index.njk +2 -5
package/_config.yml
CHANGED
package/docs/README.md
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# Sia Documentation
|
|
2
|
+
|
|
3
|
+
Welcome to the Sia documentation. Sia is a simple, powerful static site generator built with JavaScript, featuring markdown content, Nunjucks templates, and multiple themes.
|
|
4
|
+
|
|
5
|
+
## Documentation
|
|
6
|
+
|
|
7
|
+
| Guide | Description |
|
|
8
|
+
|-------|-------------|
|
|
9
|
+
| [Template Reference](template-reference.md) | Nunjucks variables, filters, and template syntax |
|
|
10
|
+
| [Markdown Guide](markdown-guide.md) | Markdown syntax and all supported plugins |
|
|
11
|
+
| [Front Matter Reference](front-matter.md) | YAML front matter options for posts, pages, and notes |
|
|
12
|
+
| [Creating Themes](creating-themes.md) | How to create and customize themes |
|
|
13
|
+
|
|
14
|
+
## Quick Links
|
|
15
|
+
|
|
16
|
+
### Getting Started
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Install Sia globally
|
|
20
|
+
npm install -g @terrymooreii/sia
|
|
21
|
+
|
|
22
|
+
# Create a new site
|
|
23
|
+
sia init my-blog
|
|
24
|
+
|
|
25
|
+
# Start development server
|
|
26
|
+
cd my-blog
|
|
27
|
+
npm run dev
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### Creating Content
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Create a new blog post
|
|
34
|
+
npx sia new post "My Post Title"
|
|
35
|
+
|
|
36
|
+
# Create a new page
|
|
37
|
+
npx sia new page "About Me"
|
|
38
|
+
|
|
39
|
+
# Create a short note
|
|
40
|
+
npx sia new note "Quick thought"
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Building for Production
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
npm run build
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Features Overview
|
|
50
|
+
|
|
51
|
+
- **Enhanced Markdown** - Syntax highlighting, emoji support, footnotes, alert boxes, auto-linkify, and more
|
|
52
|
+
- **Nunjucks Templates** - Flexible templating with includes, layouts, and custom filters
|
|
53
|
+
- **Multiple Content Types** - Blog posts, static pages, and notes (tweet-like short posts)
|
|
54
|
+
- **Tags & Categories** - Organize content with tags and auto-generated tag pages
|
|
55
|
+
- **Pagination** - Built-in pagination for listing pages
|
|
56
|
+
- **Image Support** - Automatic image copying and organization
|
|
57
|
+
- **Live Reload** - Development server with hot reloading
|
|
58
|
+
- **Multiple Themes** - Built-in themes (main, minimal, developer, magazine) with light/dark mode
|
|
59
|
+
- **RSS Feed** - Automatic RSS feed generation
|
|
60
|
+
- **SEO Ready** - Open Graph and Twitter Card meta tags included
|
|
61
|
+
|
|
62
|
+
## Project Structure
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
my-site/
|
|
66
|
+
├── _config.yml # Site configuration
|
|
67
|
+
├── src/
|
|
68
|
+
│ ├── posts/ # Blog posts (markdown)
|
|
69
|
+
│ ├── pages/ # Static pages
|
|
70
|
+
│ ├── notes/ # Short notes/tweets
|
|
71
|
+
│ └── images/ # Images
|
|
72
|
+
├── _layouts/ # Custom layouts (optional)
|
|
73
|
+
├── _includes/ # Custom includes (optional)
|
|
74
|
+
├── styles/ # Custom CSS (optional)
|
|
75
|
+
└── dist/ # Generated output
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Configuration
|
|
79
|
+
|
|
80
|
+
Edit `_config.yml` to customize your site:
|
|
81
|
+
|
|
82
|
+
```yaml
|
|
83
|
+
site:
|
|
84
|
+
title: "My Blog"
|
|
85
|
+
description: "A personal blog"
|
|
86
|
+
url: "https://example.com"
|
|
87
|
+
author: "Your Name"
|
|
88
|
+
|
|
89
|
+
theme:
|
|
90
|
+
name: main # Options: main, minimal, developer, magazine
|
|
91
|
+
|
|
92
|
+
input: src
|
|
93
|
+
output: dist
|
|
94
|
+
|
|
95
|
+
collections:
|
|
96
|
+
posts:
|
|
97
|
+
path: posts
|
|
98
|
+
layout: post
|
|
99
|
+
permalink: /blog/:slug/
|
|
100
|
+
sortBy: date
|
|
101
|
+
sortOrder: desc
|
|
102
|
+
pages:
|
|
103
|
+
path: pages
|
|
104
|
+
layout: page
|
|
105
|
+
permalink: /:slug/
|
|
106
|
+
notes:
|
|
107
|
+
path: notes
|
|
108
|
+
layout: note
|
|
109
|
+
permalink: /notes/:slug/
|
|
110
|
+
|
|
111
|
+
pagination:
|
|
112
|
+
size: 10
|
|
113
|
+
|
|
114
|
+
server:
|
|
115
|
+
port: 3000
|
|
116
|
+
showDrafts: false
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## CLI Commands
|
|
120
|
+
|
|
121
|
+
| Command | Description |
|
|
122
|
+
|---------|-------------|
|
|
123
|
+
| `sia init [directory]` | Create a new site |
|
|
124
|
+
| `sia dev` | Start development server with live reload |
|
|
125
|
+
| `sia build` | Build for production |
|
|
126
|
+
| `sia new post "Title"` | Create a new blog post |
|
|
127
|
+
| `sia new page "Title"` | Create a new page |
|
|
128
|
+
| `sia new note "Content"` | Create a new note |
|
|
129
|
+
|
|
130
|
+
## License
|
|
131
|
+
|
|
132
|
+
MIT
|