Skip to content

Commit 2a588a7

Browse files
committed
added MD file for Nodoku static site generator
1 parent 579631b commit 2a588a7

File tree

1 file changed

+120
-0
lines changed

1 file changed

+120
-0
lines changed

src/site/generators/nodoku.md

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
---
2+
title: nodoku
3+
repo: /nodoku/nodoku-core
4+
homepage: https://nodoku.io
5+
language:
6+
- JavaScript
7+
- TypeScript
8+
- Node.js
9+
- NextJS
10+
- Tailwind CSS
11+
license:
12+
- MIT, see Nodoku license for details
13+
templates:
14+
- Yaml
15+
- Markdown
16+
description: 'A powerful static site generator, where the Markdown file content is visually presented according to the configuration, given as a Yaml file. Based on NextJS, React and TailwindCSS. Excellent for a landing page, blog, portfolio or any static part of a website'
17+
twitter: nodoku_site_md
18+
startertemplaterepo: https://github.com/nodoku/nodoku-starter-template
19+
---
20+
21+
- Nodoku Home page: https://nodoku.io
22+
- Nodoku Starter Template Github repo: https://github.com/nodoku/nodoku-starter-template
23+
- Nodoku Demo Web site Github repo: https://github.com/epanikas/nodoku-demo-page
24+
- Nodoku Core Github repo: https://github.com/nodoku/nodoku-core
25+
26+
<br>
27+
28+
Nodoku is a static site generator, where the content is provided as MD (Markdown) files, and the visual representation is controlled via Yaml files - called skin.
29+
30+
Nodoku promotes the content-first approach, when the content creation process is not being distracted by the considerations related to the visual representation and design.
31+
32+
Instead, the content is created first as an MD file, demarcated by the special markers into content blocks, and then each block is rendered using the configuration provided in a Yaml file called skin.
33+
34+
Here is an example:
35+
36+
- Markdown file content:
37+
```markdown
38+
```yaml
39+
nd-block:
40+
attributes:
41+
id: product-1
42+
``
43+
44+
# Title of my awesome product
45+
## Subtitle of my awesome product
46+
47+
Description of my product.
48+
And another line of description.
49+
50+
![my-awesome-product](./images/my-awesome-product.png)
51+
```
52+
- Yaml file, controlling the representation of the given piece of content
53+
54+
```yaml
55+
rows:
56+
- row:
57+
components:
58+
- mambaui/hero-left-text:
59+
selector:
60+
attributes:
61+
id: product-1
62+
63+
```
64+
65+
- And here is the result
66+
67+
![my-awesome-product-nodoku-sampl-image](https://raw.githubusercontent.com/nodoku/nodoku-starter-template/refs/heads/main/my-awesome-product-nodoku-sample.png)
68+
69+
70+
## Pluggable set of components
71+
72+
Visual components in Nodoku are supplied via pluggable packages, as a standard package.json dependencies.
73+
74+
For example, components based on Mamba UI set of widgets are added as a dependency:
75+
76+
```json
77+
{
78+
"dependencies": {
79+
...
80+
"nodoku-mambaui": "^0.3",
81+
...
82+
}
83+
}
84+
```
85+
86+
Each set of components ships with its own Yaml configuration schema, as well as Tailwind CSS configuration.
87+
88+
Learn more about Nodoku visual components:
89+
- [Based on Flowbite UI set](https://github.com/nodoku/nodoku-flowbite)
90+
- [Based on MambaUI UI set](https://github.com/nodoku/nodoku-mambaui)
91+
92+
## Easy static content localization
93+
94+
Nodoku allows for easy static content localization (making the content available on different languages) thanks to the way it parses the Markdown file.
95+
96+
Nodoku converts the static content from the Markdown file in stream of content blocks, each having its own unique translation key.
97+
98+
Thanks to these automatically generated translation keys a translation backend of your choice can be plugged in to provide the text translation.
99+
100+
Learn more about Nodoku localization capabilities:
101+
https://github.com/nodoku/nodoku-i18n
102+
103+
## Use of text icons
104+
105+
Nodoku provides a way to denote an icon directly in the Markdown file, as follows:
106+
107+
```md
108+
{icon:nd-react-icons/fa6:FaFacebook} Facebook
109+
{icon:nd-react-icons/fa6:FaInstagram} Instagram
110+
```
111+
112+
Learn more about icon usage in Nodoku:
113+
https://github.com/nodoku/nodoku-icons
114+
115+
## Bootstrap Nodoku project in minutes
116+
117+
For your convenience we have a Nodoku sample project, suitable for forking and deploying in Netlify:
118+
119+
- [Nodoku starter template](https://github.com/nodoku/nodoku-starter-template)
120+
- [Deploy in Netlify](https://app.netlify.com/start/deploy?repository=https://github.com/nodoku/nodoku-starter-template)

0 commit comments

Comments
 (0)