aboutsummaryrefslogtreecommitdiff
path: root/index.html
blob: bded92db81aa27a0af9a8041459cfeaf1592ba9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Shinobi Website | A text-based, RSS focused blogging "system"</title><meta charset="UTF-8"></meta><meta http-equiv="x-ua-compatible" content="IE=edge,chrome=1"></meta><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1,shrink-to-fit=no"></meta><link rel="icon" href="data:,"><style>
                    hr{border:0;height:1px;margin:0.2em 0;}
                    a,a:link{display:inline-block;}
                    pre{
                        margin:0;
                        white-space: pre-wrap;
                        word-break: break-word;
                    }
                    .date{
                        margin-top: 1em;
                        overflow: hidden;
                        white-space: nowrap;
                        width: 16ch;
                    }
                </style></head><body><pre>   ______ _______  ______  ___  ____
  / __/ // /  _/ |/ / __ \/ _ )/  _/
 _\ \/ _  // //    / /_/ / _  |/ /
/___/_//_/___/_/|_/\____/____/___/

       /\
,vvvvvvv\\-------------------------,
`^^^^^^^//========================"
       \/


WHAT IS A SHINOBI WEBSITE?
==========================

A shinobi website is a text-based, RSS focused blogging "system". I put
the word system in quotes since it's really just a simple bash script
that converts plain text files into an RSS feed. So, it isn't an actual
blogging platform or website in the traditional sense.

Why the name "shinobi"? Well, a shinobi was a covert agent or mercenary
during the time of feudal Japan. Due to their focus on infiltration and
assassination, they required a strong focus on stealth and being unseen.

A shinobi website follows the same principles of being secretive and
unseen (minus the assassinations and espionage). Only those who
*choose* to include your feed in their respective RSS readers can view
your content via the included URL.

It's like an exclusive club[0] for your true, real audience.


A SHINOBI WEBSITE IS PURE MINIMALISM
------------------------------------

Imagine writing *just* content. No dependencies. No heavy-duty build
process. Nothing but simple plain text files. One bare-bones bash
script is all you need to generate a valid RSS file from your existing
text files.

This concept isn't anything new. In fact, this entire project was
greatly influenced by WRITING FOR THE INTERNET ACROSS A HUMAN
LIFETIME[1]


CREATE YOUR OWN
---------------

1. Simply clone/download the project below
2. Make sure you edit the parameters at the top of the script.sh (in
your favorite text editor)

```shell
#!/bin/sh
DOMAIN="YOUR-DOMAIN"
POST_DIR="posts/"
AUTHOR="YOUR-EMAIL (YOUR-NAME)"
TIME="00:00:00 EST"
```

3. Write your posts/pages as plain text files (.txt) inside a
sub-folder (/posts)
4. Run the `make` in you terminal when a new post/page is added
5. (Optional) Run `make serve` to test your changes locally
6. Update your site files and RSS feed to your web server
7. Profit!


THE CODE
--------

I hardly consider myself a hardcore "developer" (I'm actually a UI
designer - if you can believe it!) so please go easy on judging my ugly
coding skills. It gets the job done quickly and renders valid RSS
syntax. That's all that matters.

You can find the very basic project code on sourcehut (licensed under
MIT):

https://git.btxx.org/shinobi


WRITING A POST OR PAGE
----------------------

There are only a few minor caveats you need to be aware of when writing
your plain text files. If you have the technical skills, you have the
freedom to change these settings within the script.sh file itself.

1. The first line of each text file needs to be the post's date
2. The second line of each text file needs to be the post's title
3. The third line of each text file needs to be blank
4. The fourth line of each text file needs to be the post's description

Example:

01| Wed, 13 Dec 2045
02| MY AMAZING BLOG POST FROM THE FUTURE
03|
04| This blog post is ahead of its time

That's it. The script will take care of everything and render things
perfectly for most RSS readers.


READ THE OFFICIAL SHINOBI.WEBSITE
---------------------------------

Simply add:

</pre><a href="https://shinobi.btxx.org/feed.xml"><pre>https://shinobi.btxx.org/feed.xml</pre></a><pre>

to your RSS reader of choice. For Apple devices, I strongly recommend
using the NetNewsWire[2] family of applications. For those on other
platforms I would recommend the web-based application Feedly.


ARTICLES
--------
</pre><pre class="date">Tue, 14 Jun 2022 08:40:17 EDT</pre><pre>INTERACTIVE LINKS INSIDE XML FEEDS</pre><a href="https://shinobi.btxx.org/posts/patch-3.txt"><pre>https://shinobi.btxx.org/posts/patch-3.txt</pre></a><pre class="date">Tue, 31 May 2022 08:40:17 EDT</pre><pre>CUSTOMIZED RSS FEED WITH XSLT</pre><a href="https://shinobi.btxx.org/posts/patch-2.txt"><pre>https://shinobi.btxx.org/posts/patch-2.txt</pre></a><pre class="date">Sun, 15 May 2022 08:40:17 EDT</pre><pre>FIRST MAJOR PATCH AND QOL IMPROVEMENTS</pre><a href="https://shinobi.btxx.org/posts/patch-1.txt"><pre>https://shinobi.btxx.org/posts/patch-1.txt</pre></a><pre class="date">Mon, 09 May 2022 08:40:17 EDT</pre><pre>THE SHINOBI SCRIPT IS NOW AVAILABLE ON SOURCEHUT</pre><a href="https://shinobi.btxx.org/posts/shinobi-sourcehut.txt"><pre>https://shinobi.btxx.org/posts/shinobi-sourcehut.txt</pre></a><pre class="date">Fri, 06 May 2022 08:40:17 EDT</pre><pre>FULL POSTS ARE NOW RENDERED INSIDE RSS READERS</pre><a href="https://shinobi.btxx.org/posts/full-posts-rss-readers.txt"><pre>https://shinobi.btxx.org/posts/full-posts-rss-readers.txt</pre></a><pre class="date">Thu, 21 Apr 2022 08:40:17 EDT</pre><pre>SIMPLE GUIDE FOR CREATING YOUR OWN SHINOBI.WEBSITE</pre><a href="https://shinobi.btxx.org/posts/create-your-own-shinobi-website.txt"><pre>https://shinobi.btxx.org/posts/create-your-own-shinobi-website.txt</pre></a><pre class="date">Thu, 14 Apr 2022 08:40:17 EDT</pre><pre>INTRODUCING SHINOBI.WEBSITE</pre><a href="https://shinobi.btxx.org/posts/introducing-shinobi-website.txt"><pre>https://shinobi.btxx.org/posts/introducing-shinobi-website.txt</pre></a><pre>

Articles posted here will mostly cover updates and patch notes for
all things Shinobi. Following this feed is a good way to stay up-to-date.


HELP BY CONTRIBUTING!
---------------------

I am far from a good developer, so my code is most likely lacking.
Please don't hesitate to submit patches or suggest changes below:

</pre><a href="https://git.btxx.org/shinobi"><pre>https://git.btxx.org/shinobi</pre></a><pre>


FOOTNOTES
---------
[0]: https://daverupert.com/rss-club/
[1]:http://len.falken.directory/misc/writing-for-the-internet-across-a-human-lifetime.txt
[2]: https://netnewswire.com


Thanks for reading,
-- Brad


</pre></body></html>