# blog
-Blog at unlimited.pizza -> Only 3 at a time.*
+Blog at unlimited.pizza -> Only 3 at a time.
The blog is no longer 100% ephemeral. Instead it now keeps an archive
in a separate folder. The archive is intended to be used as a gemlog.
## How to add a new entry
-Create a directory with a `.gmi` gemini file, and an `/assets`
-directory with anything you want in there. This can be in any directory.
-
-```
-.
-└── this-is-an-example-post
- ├── assets
- │ └── example.wav
- └── this-is-an-example-post.md
-```
+Create a `.gmi` gemini file.
You can add this to the blog using the following command, it will shift
all entries and remove the oldest one if limit of posts is reached
(defualts to 3):
-`blog --add path/to/blog_post`
+```
+blog --add path/to/blog_post.gmi
+```
These commands will regenerate the static files. At that point you can
preview your blog by serving the files on the `static` directory.
If you need to make corrections use:
-`blog --update path/to/blog_post`
+```
+blog --update path/to/blog_post.gmi
+```
This will replace the latest with the contents of the `path` without
shifting the existing entries.
-`blog --publish <bucket>`
+You can always regenerate the static files by using
-Will publish the blog to the mentioned s3 bucket.
+```
+blog --generate
+```
+
+To publish the blog, you can select an s3 bucket and run it with:
+
+```
+blog --publish <bucket>
+```
+
+You can also publish the archive of posts as a gemlog, by passing a valid
+rsync target
+
+```
+blog --publish-archive <rsync_target>
+```
+
+Blog supports saving snapshots of the blog in git, and you can add and remove
+remotes with the following commands:
+
+```
+blog --add-remote <git_url>
+blog --remove-remote
+```
+
+If a remote is present, it will be pulled before adding or updating, and pushed
+after it finishes. You can manually trigger this by calling
+
+```
+blog --sync-up
+blog --sync-down
+```
## Configuring