2023-09-19 13:22:22 +02:00
2023-09-19 09:54:25 +02:00
2023-08-24 14:30:19 +02:00
2023-09-15 16:03:52 +02:00
2023-09-16 09:59:30 +02:00
2023-09-16 09:59:30 +02:00
2023-08-24 18:24:25 +02:00
2023-09-13 14:42:46 +02:00
2023-09-13 16:00:12 +02:00
2023-08-23 16:51:19 +02:00
2023-09-18 17:22:46 +02:00
2023-09-18 17:22:46 +02:00
2023-09-16 16:14:59 +02:00
2023-09-15 16:03:52 +02:00
2023-09-17 22:35:46 +02:00
2023-09-16 23:40:27 +02:00
2023-09-15 16:03:52 +02:00
2023-09-15 16:03:52 +02:00
2023-09-14 16:02:27 +02:00
2023-09-15 16:03:52 +02:00
2023-09-15 21:37:33 +02:00
2023-09-15 21:37:33 +02:00
2023-09-15 16:03:52 +02:00
2023-09-16 23:40:27 +02:00

Oddµ: A minimal wiki

This program runs a wiki. It serves all the Markdown files (ending in .md) into web pages and allows you to edit them. If your files don't provide their own title (# title), the file name (without .md) is used for the title. Subdirectories are created as necessary.

This is a minimal wiki. There is no version history. It's well suited as a secondary medium: collaboration and conversation happens elsewhere, in chat, on social media. The wiki serves as the text repository that results from these discussions.

The wiki lists no recent changes. The expectation is that the people that care were involved in the discussions beforehand.

The wiki also produces no feed. The assumption is that announcements are made on social media: blogs, news aggregators, discussion forums, the fediverse, but humans.

This wiki uses a Markdown library to generate the web pages from Markdown. There are two extensions Oddmu adds to the library: local links [[like this]] and hashtags #Like_This.

This wiki uses the lingua library to detect languages in order to get hyphenation right.

This wiki uses the standard html/template library to generate HTML.

When saving a page, the page name is take from the URL and the page content is taken from the body form parameter. To illustrate, here's how to edit a page using curl:

curl --form body="Did you bring a towel?" \
  http://localhost:8080/save/welcome

Building

go build

Running

The working directory is where pages are saved and where templates are loaded from. You need a copy of the template files in this directory. Here's how to start it in the source directory:

go run .

The program serves the local directory as a wiki on port 8080. Point your browser to http://localhost:8080/ to use it.

Bugs

If you spot any, contact me.

References

Writing Web Applications provided the initial code for this wiki.

Description
No description provided
Readme AGPL-3.0 5.8 MiB
Languages
Go 69.5%
HTML 29.5%
Makefile 1%