poops 1.0.15 → 1.0.17
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/.nojekyll +1 -0
- package/README.md +35 -29
- package/changelog/blog-functionality.html +57 -0
- package/changelog/feed.rss +31 -0
- package/changelog/front-matter.html +60 -0
- package/changelog/index.html +73 -0
- package/changelog/markdown-support.html +55 -0
- package/example/dist/css/styles.css +2202 -12515
- package/example/dist/css/styles.css.map +1 -1
- package/example/dist/css/styles.min.css +2 -2
- package/example/dist/js/scripts.js +1 -1
- package/example/dist/js/scripts.min.js +1 -1
- package/example/src/markup/_data/links.json +4 -0
- package/example/src/markup/_layouts/blog.html +35 -0
- package/example/src/markup/_layouts/default.html +93 -0
- package/example/src/markup/_partials/{header.html → heading.html} +3 -3
- package/example/src/markup/_partials/site-header.html +16 -0
- package/example/src/markup/changelog/blog-functionality.md +9 -0
- package/example/src/markup/changelog/feed.rss +23 -0
- package/example/src/markup/changelog/front-matter.md +12 -0
- package/example/src/markup/changelog/index.html +28 -0
- package/example/src/markup/changelog/markdown-support.md +7 -0
- package/example/src/markup/index.html +25 -27
- package/example/src/scss/_config.scss +22 -0
- package/example/src/scss/index.scss +1 -0
- package/example/src/scss/style/index.scss +0 -20
- package/index.html +58 -40
- package/lib/markups.js +259 -15
- package/lib/styles.js +1 -1
- package/lib/utils/helpers.js +26 -1
- package/package.json +9 -4
- package/poops.js +12 -4
- package/{example/src/markup/_layouts/layout.html → test.html} +10 -6
- package//360/237/222/251.json +20 -13
package/.nojekyll
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ It uses a simple config file where you define your input and output paths and it
|
|
|
35
35
|
* Supports multiple input and output paths
|
|
36
36
|
* Resolves node modules
|
|
37
37
|
* Can add a templatable banner to output files (optional)
|
|
38
|
-
* Static site generation with [nunjucks](https://mozilla.github.io/nunjucks/) templating (optional)
|
|
38
|
+
* Static site generation with [nunjucks](https://mozilla.github.io/nunjucks/) templating, with blogging option (optional)
|
|
39
39
|
* Has a configurable local server (optional)
|
|
40
40
|
* Rebuilds on file changes (optional)
|
|
41
41
|
* Live reloads on file changes (optional)
|
|
@@ -102,18 +102,20 @@ Just create a `poops.json` file in the root of your project and add the followin
|
|
|
102
102
|
"markup": {
|
|
103
103
|
"in": "example/src/markup",
|
|
104
104
|
"out": "/",
|
|
105
|
-
"
|
|
106
|
-
"
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
"
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
"
|
|
115
|
-
|
|
116
|
-
|
|
105
|
+
"options": {
|
|
106
|
+
"site": {
|
|
107
|
+
"title": "Poops",
|
|
108
|
+
"description": "A super simple bundler for simple web projects."
|
|
109
|
+
},
|
|
110
|
+
"data": [
|
|
111
|
+
"example/src/markup/data/links.json",
|
|
112
|
+
"example/src/markup/data/poops.yaml"
|
|
113
|
+
],
|
|
114
|
+
"includePaths": [
|
|
115
|
+
"example/src/markup/_layouts",
|
|
116
|
+
"example/src/markup/_partials"
|
|
117
|
+
]
|
|
118
|
+
}
|
|
117
119
|
},
|
|
118
120
|
"banner": "/* {{ name }} v{{ version }} | {{ homepage }} | {{ license }} License */",
|
|
119
121
|
"serve" : {
|
|
@@ -245,17 +247,19 @@ Here is a sample markup configuration:
|
|
|
245
247
|
"markups": {
|
|
246
248
|
"in": "src/markup",
|
|
247
249
|
"out": "dist",
|
|
248
|
-
"
|
|
249
|
-
"
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
"data
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
"
|
|
258
|
-
|
|
250
|
+
"options": {
|
|
251
|
+
"site": {
|
|
252
|
+
"title": "My Awesome Site",
|
|
253
|
+
"description": "This is my awesome site"
|
|
254
|
+
},
|
|
255
|
+
"data": [
|
|
256
|
+
"data/links.json",
|
|
257
|
+
"data/other.yaml"
|
|
258
|
+
],
|
|
259
|
+
"includePaths": [
|
|
260
|
+
"_includes"
|
|
261
|
+
]
|
|
262
|
+
}
|
|
259
263
|
}
|
|
260
264
|
}
|
|
261
265
|
```
|
|
@@ -377,12 +381,14 @@ Same as `watch` property, `includePaths` accepts an array of paths to include. I
|
|
|
377
381
|
* [x] Add nunjucks static templating
|
|
378
382
|
* [ ] Refactor nunjucks implementation
|
|
379
383
|
* [ ] Complete documentation for nunjucks
|
|
380
|
-
* [
|
|
381
|
-
* [
|
|
382
|
-
* [ ] Future implementation: alternative templating engine liquidjs
|
|
383
|
-
* [
|
|
384
|
+
* [x] Add markdown support
|
|
385
|
+
* [x] Front Matter support
|
|
386
|
+
* [ ] Future implementation: alternative templating engine liquidjs?
|
|
387
|
+
* [x] Future implementation: posts and custom collections, so we can have a real static site generator
|
|
388
|
+
* [x] Collection pagination system
|
|
389
|
+
* [x] Post published toggle
|
|
390
|
+
* [x] RSS and ATOM generation for collections
|
|
384
391
|
* [ ] Refactor!!!!
|
|
385
|
-
* [ ] Add more argv options like config creation, etc.
|
|
386
392
|
|
|
387
393
|
## Why?
|
|
388
394
|
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<title>Blog Functionality | 💩 Poops</title>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
|
+
<meta name="description" content="Hey folks, this is my second blog post.">
|
|
8
|
+
<link rel="alternate" type="application/rss+xml" href="https://stamat.github.io/poops/changelog/feed.rss">
|
|
9
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
|
+
<link rel="stylesheet" href="../example/dist/css/styles.min.css">
|
|
12
|
+
<link href="https://fonts.googleapis.com/css2?family=DM+Sans&family=Poppins:wght@700&display=swap" rel="stylesheet">
|
|
13
|
+
<script src="https://cdn.jsdelivr.net/npm/canvas-confetti@1.5.1/dist/confetti.browser.min.js"></script>
|
|
14
|
+
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/atom-one-dark.min.css">
|
|
15
|
+
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
|
|
16
|
+
</head>
|
|
17
|
+
<body class="bg-brownish">
|
|
18
|
+
|
|
19
|
+
<header class="py-8">
|
|
20
|
+
<div class="container d-flex justify-space-between align-center h-48">
|
|
21
|
+
|
|
22
|
+
<a href="../" class="d-flex flex-row align-center text-primary text-none text-bold font-heading h6">
|
|
23
|
+
<img src="../poop.png" class="d-block mr-8" alt="Poops" width="48" height="48">
|
|
24
|
+
POOPS
|
|
25
|
+
</a>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
<nav class="ml-auto">
|
|
29
|
+
|
|
30
|
+
<a href="https://stamat.github.io/poops/changelog" id="changelog">Changelog</a>
|
|
31
|
+
|
|
32
|
+
<a href="https://github.com/stamat/poops#readme" id="docs">Docs</a>
|
|
33
|
+
|
|
34
|
+
</nav>
|
|
35
|
+
</div>
|
|
36
|
+
</header>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class="container">
|
|
40
|
+
|
|
41
|
+
<h1>Blog Functionality</h1>
|
|
42
|
+
<p> Hey folks, this is my second blog post.</p>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
</div>
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
<script>document.write('<script src="http://'
|
|
49
|
+
+ (location.host || 'localhost').split(':')[0]
|
|
50
|
+
+ ':35729/livereload.js?snipver=1"></'
|
|
51
|
+
+ 'script>')</script>
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
<script>hljs.highlightAll();</script>
|
|
55
|
+
<script async type="text/javascript" src="../example/dist/js/scripts.min.js"></script>
|
|
56
|
+
</body>
|
|
57
|
+
</html>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" ?>
|
|
2
|
+
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
|
3
|
+
<channel>
|
|
4
|
+
<title>Changelog | 💩 Poops</title>
|
|
5
|
+
<description>Straightforward, no-bullshit bundler for the web.</description>
|
|
6
|
+
<link>https://stamat.github.io/poops</link>
|
|
7
|
+
<atom:link href="https://stamat.github.io/poops/changelog/feed.rss" rel="self" type="application/rss+xml" />
|
|
8
|
+
<lastBuildDate>Thu, 21 Sep 2023 21:32:19 +0200</lastBuildDate>
|
|
9
|
+
|
|
10
|
+
<pubDate>Thu, 21 Sep 2023 15:42:00 +0200</pubDate>
|
|
11
|
+
<ttl>1800</ttl>
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
<item>
|
|
15
|
+
<title>Blog Functionality</title>
|
|
16
|
+
<guid isPermaLink="true">https://stamat.github.io/poops/changelog/blog-functionality.html</guid>
|
|
17
|
+
<link>https://stamat.github.io/poops/changelog/blog-functionality.html</link>
|
|
18
|
+
<description>Hey folks, this is my second blog post.</description>
|
|
19
|
+
<pubDate>Thu, 21 Sep 2023 15:42:00 +0200</pubDate>
|
|
20
|
+
</item>
|
|
21
|
+
|
|
22
|
+
<item>
|
|
23
|
+
<title>Added Front Matter support!</title>
|
|
24
|
+
<guid isPermaLink="true">https://stamat.github.io/poops/changelog/front-matter.html</guid>
|
|
25
|
+
<link>https://stamat.github.io/poops/changelog/front-matter.html</link>
|
|
26
|
+
<description>Front matter is an awesome idea! Since the static site generator functionality of Poops is inspired by Jekyll and the genius of peeps that came up with the idea of front matter, I decided to add it to Poops as well. Made things super simple! And that's what Poops is all about. Making things simple.</description>
|
|
27
|
+
<pubDate>Tue, 19 Sep 2023 02:00:00 +0200</pubDate>
|
|
28
|
+
</item>
|
|
29
|
+
|
|
30
|
+
</channel>
|
|
31
|
+
</rss>
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<title>Added Front Matter support! | 💩 Poops</title>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
|
+
<meta name="description" content="Front matter is an awesome idea! Since the static site generator functionality of Poops is inspired by Jekyll and the genius of peeps that came up with the idea of front matter, I decided to add it to Poops as well. Made things super simple! And that's what Poops is all about. Making things simple.">
|
|
8
|
+
<link rel="alternate" type="application/rss+xml" href="https://stamat.github.io/poops/changelog/feed.rss">
|
|
9
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
|
+
<link rel="stylesheet" href="../example/dist/css/styles.min.css">
|
|
12
|
+
<link href="https://fonts.googleapis.com/css2?family=DM+Sans&family=Poppins:wght@700&display=swap" rel="stylesheet">
|
|
13
|
+
<script src="https://cdn.jsdelivr.net/npm/canvas-confetti@1.5.1/dist/confetti.browser.min.js"></script>
|
|
14
|
+
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/atom-one-dark.min.css">
|
|
15
|
+
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
|
|
16
|
+
</head>
|
|
17
|
+
<body class="bg-brownish">
|
|
18
|
+
|
|
19
|
+
<header class="py-8">
|
|
20
|
+
<div class="container d-flex justify-space-between align-center h-48">
|
|
21
|
+
|
|
22
|
+
<a href="../" class="d-flex flex-row align-center text-primary text-none text-bold font-heading h6">
|
|
23
|
+
<img src="../poop.png" class="d-block mr-8" alt="Poops" width="48" height="48">
|
|
24
|
+
POOPS
|
|
25
|
+
</a>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
<nav class="ml-auto">
|
|
29
|
+
|
|
30
|
+
<a href="https://stamat.github.io/poops/changelog" id="changelog">Changelog</a>
|
|
31
|
+
|
|
32
|
+
<a href="https://github.com/stamat/poops#readme" id="docs">Docs</a>
|
|
33
|
+
|
|
34
|
+
</nav>
|
|
35
|
+
</div>
|
|
36
|
+
</header>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class="container">
|
|
40
|
+
|
|
41
|
+
<h1>Added Front Matter support!</h1>
|
|
42
|
+
<blockquote>
|
|
43
|
+
<p>Front matter is an awesome idea! Since the static site generator functionality of Poops is inspired by Jekyll and the genius of peeps that came up with the idea of front matter, I decided to add it to Poops as well. Made things super simple! And that's what Poops is all about. Making things simple.</p>
|
|
44
|
+
</blockquote>
|
|
45
|
+
<p>Adding Front Matter was a breeze. Seriously.</p>
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
<script>document.write('<script src="http://'
|
|
52
|
+
+ (location.host || 'localhost').split(':')[0]
|
|
53
|
+
+ ':35729/livereload.js?snipver=1"></'
|
|
54
|
+
+ 'script>')</script>
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
<script>hljs.highlightAll();</script>
|
|
58
|
+
<script async type="text/javascript" src="../example/dist/js/scripts.min.js"></script>
|
|
59
|
+
</body>
|
|
60
|
+
</html>
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<title>Changelog | 💩 Poops</title>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
|
+
<meta name="description" content="Follow the latest changes of Poops.">
|
|
8
|
+
<link rel="alternate" type="application/rss+xml" href="https://stamat.github.io/poops/changelog/feed.rss">
|
|
9
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
|
+
<link rel="stylesheet" href="../example/dist/css/styles.min.css">
|
|
12
|
+
<link href="https://fonts.googleapis.com/css2?family=DM+Sans&family=Poppins:wght@700&display=swap" rel="stylesheet">
|
|
13
|
+
<script src="https://cdn.jsdelivr.net/npm/canvas-confetti@1.5.1/dist/confetti.browser.min.js"></script>
|
|
14
|
+
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/atom-one-dark.min.css">
|
|
15
|
+
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
|
|
16
|
+
</head>
|
|
17
|
+
<body class="bg-brownish">
|
|
18
|
+
|
|
19
|
+
<header class="py-8">
|
|
20
|
+
<div class="container d-flex justify-space-between align-center h-48">
|
|
21
|
+
|
|
22
|
+
<a href="../" class="d-flex flex-row align-center text-primary text-none text-bold font-heading h6">
|
|
23
|
+
<img src="../poop.png" class="d-block mr-8" alt="Poops" width="48" height="48">
|
|
24
|
+
POOPS
|
|
25
|
+
</a>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
<nav class="ml-auto">
|
|
29
|
+
|
|
30
|
+
<a href="https://stamat.github.io/poops/changelog" id="changelog">Changelog</a>
|
|
31
|
+
|
|
32
|
+
<a href="https://github.com/stamat/poops#readme" id="docs">Docs</a>
|
|
33
|
+
|
|
34
|
+
</nav>
|
|
35
|
+
</div>
|
|
36
|
+
</header>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class="container">
|
|
40
|
+
|
|
41
|
+
<div class="text-center">
|
|
42
|
+
<h1>Changelog</h1>
|
|
43
|
+
</div>
|
|
44
|
+
|
|
45
|
+
<div class="post">
|
|
46
|
+
<h2><a href="../changelog/blog-functionality.html">Blog Functionality</a></h2>
|
|
47
|
+
<div class="date">Sep 21, 2023</div>
|
|
48
|
+
Hey folks, this is my second blog post.
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
<div class="post">
|
|
52
|
+
<h2><a href="../changelog/front-matter.html">Added Front Matter support!</a></h2>
|
|
53
|
+
<div class="date">Sep 19, 2023</div>
|
|
54
|
+
Front matter is an awesome idea! Since the static site generator functionality of Poops is inspired by Jekyll and the genius of peeps that came up with the idea of front matter, I decided to add it to Poops as well. Made things super simple! And that's what Poops is all about. Making things simple.
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
</div>
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
<script>document.write('<script src="http://'
|
|
65
|
+
+ (location.host || 'localhost').split(':')[0]
|
|
66
|
+
+ ':35729/livereload.js?snipver=1"></'
|
|
67
|
+
+ 'script>')</script>
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
<script>hljs.highlightAll();</script>
|
|
71
|
+
<script async type="text/javascript" src="../example/dist/js/scripts.min.js"></script>
|
|
72
|
+
</body>
|
|
73
|
+
</html>
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<title>Markdown Support | 💩 Poops</title>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
|
+
<meta name="description" content="Hey folks, this is my second blog post.">
|
|
8
|
+
<link rel="alternate" type="application/rss+xml" href="https://stamat.github.io/poops/changelog/feed.rss">
|
|
9
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
|
+
<link rel="stylesheet" href="../example/dist/css/styles.min.css">
|
|
12
|
+
<link href="https://fonts.googleapis.com/css2?family=DM+Sans&family=Poppins:wght@700&display=swap" rel="stylesheet">
|
|
13
|
+
<script src="https://cdn.jsdelivr.net/npm/canvas-confetti@1.5.1/dist/confetti.browser.min.js"></script>
|
|
14
|
+
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/atom-one-dark.min.css">
|
|
15
|
+
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
|
|
16
|
+
</head>
|
|
17
|
+
<body class="bg-brownish">
|
|
18
|
+
|
|
19
|
+
<header class="py-8">
|
|
20
|
+
<div class="container d-flex justify-space-between align-center h-48">
|
|
21
|
+
|
|
22
|
+
<a href="../" class="d-flex flex-row align-center text-primary text-none text-bold font-heading h6">
|
|
23
|
+
<img src="../poop.png" class="d-block mr-8" alt="Poops" width="48" height="48">
|
|
24
|
+
POOPS
|
|
25
|
+
</a>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
<nav class="ml-auto">
|
|
29
|
+
|
|
30
|
+
<a href="https://stamat.github.io/poops/changelog" id="changelog">Changelog</a>
|
|
31
|
+
|
|
32
|
+
<a href="https://github.com/stamat/poops#readme" id="docs">Docs</a>
|
|
33
|
+
|
|
34
|
+
</nav>
|
|
35
|
+
</div>
|
|
36
|
+
</header>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class="container">
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</div>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<script>document.write('<script src="http://'
|
|
47
|
+
+ (location.host || 'localhost').split(':')[0]
|
|
48
|
+
+ ':35729/livereload.js?snipver=1"></'
|
|
49
|
+
+ 'script>')</script>
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
<script>hljs.highlightAll();</script>
|
|
53
|
+
<script async type="text/javascript" src="../example/dist/js/scripts.min.js"></script>
|
|
54
|
+
</body>
|
|
55
|
+
</html>
|