neopub



 neopub  is a blogging software developed by that supports indieweb building blocks Micropub and Webmention. It runs micro.geheimesite.nl and is written in PHP. neopub is inspired by neofeed, publog and aaronparecki.com.

A microblog running neopub can also be called a neolog.

Robin Boers
on https://micro.geheimesite.nl/ since ????-??-??
 * An example of eat what you cook

Features
neopub has a built-in micropub endpoint that supports the following post-types:
 * notes
 * replies
 * bookmarks
 * likes
 * reposts
 * photo

Images are uploaded to a GitHub repository by default, but you can change what hosting solution you want to use in uploader.php (in the utils directory).

It sends webmentions for all of the above-mentioned post-types. It also supports filtering:
 * per year
 * per tag
 * per post-type

Design
neopub uses a set of JSON files in the content directory to save posts. These also double as JSON feeds (although I'm not sure whether they are valid). These JSON files are categorized per year. This means every year a new JSON file will be created.

The RSS feed is dynamically built using the current year's JSON file, as are the homepage and other feed pages. Accessing previous years' posts is possible by using their permalink or using example.com/posts/2022.

neopub sends webmentions using mention-client-php after a post is published. It receives webmentions using webmention.io and displays them using a modified version of webmention.js that can be found in the assets directory. It also has a form to allow users to send manual webmentions.

Getting started
You may self-host neopub for your own microblog. These are the requirements:


 * PHP 7.4.3
 * Apache (with support for )

To self-host neopub:
 * Get the source code
 * Edit the main config in
 * Copy  to   and enter a GitHub API token. This step is only necessary if you want to upload images to your microblog.
 * Install a theme
 * Optionally install neoblog, a simple dashboard for managing settings, themes, and writing notes. Keep in mind that it is still a WIP. Use at own risk.



Themes
neopub supports theming to some extent. Meaning: you can swap out the  file in the   directory. I made some themes just to experiment. You can browse available themes here: https://neopublished.github.io/themes.

License
neopub is open-source and available on GitHub. It is released under the Apache 2.0 License, but php-markdown and webmention.js are released under the MIT license, while mention-client-php is released under both.