MWIN (My Witty Interactive Nonsense): A simple, self-hosted, terminal-based chat room application written in Go. No installation required, just download and run! Multiple users can join and participate in the chat room simultaneously. Users can choose their own name or use the default. Self contained, has no dependencies.
ACME Server implementation (http-01 challenge). Builtin CA to sign/revoke certificates (can be replaced with an external CA), CA rollover is supported. Notification Mails (account created, certificate will expire soon, certificate is expired) with customizable templates. Web UI (certificate log) with customizable templates.
Tested with Certbot, Traefik, Caddy, uacme, and acme.sh.
The Dockerfile is remarkably understandable, which should make it easy to run it normally.
Devzat is a custom SSH server that takes you to a chat instead of a shell prompt. Because there's SSH apps on all platforms (even on phones) you can connect to Devzat on any device!
Supports commands, rooms (channels?), Markdown formatting, private messages, and pseudo-shell commands.
OpenSMTPD is a FREE implementation of the server-side SMTP protocol as defined by RFC 5321, with some additional standard extensions. It allows ordinary machines to exchange emails with other systems speaking the SMTP protocol.
Started out of dissatisfaction with other implementations, OpenSMTPD is a fairly complete SMTP implementation.
OpenSMTPD is primarily developed by Gilles Chehade and Eric Faurot, with contributions from various OpenBSD hackers and members from other communities.
OpenSMTPD is part of the OpenBSD Project. The software is freely usable and re-usable by everyone under an ISC license.
A single PHP file which acts as a basic ActivityPub server. This is designed to be a lightweight educational tool to show you the basics of how ActivityPub works. There are no tests, no checks, no security features, no header verifications, no containers, no gods, no masters. Needs only PHP v8.3 with OpenSSL turned on, an HTTPS certificate in for the web server, and about 50 megs of disk space for data storage.
I actively do not want you to use this code in production. It is not suitable for anything other than educational use. The use of AGPL is designed to be an incentive for you to learn from this software and then write something better. It is the nadir of bad coding. There are no tests, bugger-all security, scalability isn't considered, and it is a mess. But it works.
Mox is a modern full-featured open source secure mail server for low-maintenance self-hosted email. Quick and easy to start/maintain mail server, for your own domain(s). SMTP (with extensions) for receiving, submitting and delivering email. IMAP4 (with extensions) for giving email clients access to email. Webmail for reading/sending email from the browser. SPF/DKIM/DMARC for authenticating messages/delivery. Reputation tracking, learning (per user) host-, domain- and sender address-based reputation from (Non-)Junk email classification. Bayesian spam filtering that learns (per user) from (Non-)Junk email. Rejected emails are stored in a mailbox called Rejects for a short period, helping with misclassified legitimate synchronous signup/login/transactional emails. Automatic TLS with ACME, for use with Let's Encrypt and other CA's. DANE and MTA-STS for inbound and outbound delivery over SMTP with STARTTLS, including REQUIRETLS and with incoming/outgoing TLSRPT reporting. Web admin interface that helps you set up your domains and accounts (instructions to create DNS records, configure SPF/DKIM/DMARC/TLSRPT/MTA-STS), for status information, managing accounts/domains, and modifying the configuration file. Account autodiscovery (with SRV records, Microsoft-style, Thunderbird-style, and Apple device management profiles) for easy account setup (though client support is limited). "mox localserve" subcommand for running mox locally for email-related testing/developing, including pedantic mode. Most non-server Go packages mox consists of are written to be reusable.
At least it tells you how to compile and install it so you don't have to reverse engineer a bunch of Dockerfiles.
SponsorBlock is an extension that will skip over sponsored segments of YouTube videos. This is the server backend for it. Uses a Postgres or Sqlite database to hold all the timing data.
To make sure that this project doesn't die, I have made the database publicly downloadable at https://sponsor.ajay.app/database. You can download a backup or get archive.org to take a backup if you do desire. The database is under this license unless you get explicit permission from me.
Take control of your honks and join the federation. An ActivityPub server with minimal setup and support costs. Spend more time using the software and less time operating it.
No attention mining. No likes, no faves, no polls, no stars, no claps, no counts.
Purple color scheme. Custom emus. Memes too. Avatars automatically assigned by the NSA.
The button to submit a new honk says "it's gonna be honked".
The honk mission is to work well if it's what you want. This does not imply the goal is to be what you want.
Written in Go, uses SQLite. Can't say I'm too wild about the function and variable names but it was designed to be silly.
When you use Docker Hub, this is what you're using.
docs/deploying.md describes how to deploy Registry as a Docker container. They definitely don't make it easy to break out of their ecosystem.
Simplistic and stateless XMPP implementation for python. A building block for non-blocking XMPP clients, components, gateways and servers. This library was mostly written from scratch, except for the xmpp.sasl which is a modified copy of the contents of the pyxmpp2 library by Jacek Konieczny.
Headway is a maps stack in a box that makes it easy to take your location data into your own hands. With just a few commands you can bring up your own fully functional maps server. This includes a frontend, basemap, geocoder and routing engine. Over 200 different cities are currently supported.
Headway is currently capable of showing a map, searching for points of interest and addresses within an OpenStreetMap extract and providing directions between any two places within that extract. Supported modes include driving, cycling and walking. Transit directions are a work-in-progress.
A Git server without all of the features of Github, Gitlab, or whatever. It's just a server designed for use over SSH. Configured with its own Git repository. Repos created on demand with just a git push
. SSH in and browse the text-mode control panel. View files. Access control built in.
SSH key auth.
In the AUR. Packaged for lots of different distros, too.
A very simple webhook server to launch shell scripts.
With a little file creation trickery, it's really quite easy to build an ActivityPub server.
Smashing, the spiritual successor to Dashing, is a Sinatra based framework that lets you build excellent dashboards. It looks especially great on TVs. Use premade widgets, or fully create your own with scss, html, and coffeescript. Has a REST API to push data to the dashboard. Drag and drop interface for building a dashboard.
Install the gem. Run it to create a new dashboard ("project"). Run bundle. Start the server for the project.
Technitium DNS Server is an open source authoritative as well as recursive DNS server that can be used for self hosting a DNS server for privacy & security. It works out-of-the-box with no or minimal configuration and provides a user friendly web console accessible using any modern web browser. Implements not only ad- and malware blocking but DNS-over-TLS and DNS-over-HTTPS. Authoritative server as well as recursive resolver. Implements HTTP and SOCKS5 proxy support for tunneling resolution requests through Tor as well as proxy servers.
Written in Csharp. :(
Implementation of a super-lightweight network file system for sharing files across and between 8-bit computers. Originally designed for the Spectrum but has been ported to the Atari. Implementations exist for Linux, Spectrum, and Atari.
Protocol spec: https://github.com/FujiNetWIFI/spectranet/blob/master/tnfs/tnfs-protocol.md
A simple, personal chat program that runs on a single computer. No Internet, just you.
MultiChat was intended for folks that need to talk to the voices within them for one reason or another. Maybe you think better when you talk to yourself. Maybe you're a system and need to have a conversation externally. Maybe it's a handy tool for simulating social interactions ahead of time. Maybe you need a tool for roleplay, or want to write as though your characters were in a chat room. Maybe you just want to mess around. Whatever the reason, MultiChat was made to let you have that conversation.
Lightweight, no non-standard dependencies.
Recoll is a desktop full-text search tool. Finds documents based on their contents as well as their file names. Can search most document formats, even if they're compressed (even Maildir/ and mailboxes). You may need external applications for text extraction. Based on Xapian. Primarily desktop but it could be run server-side. Indices are backwards-compatible.
Source code: https://framagit.org/medoc92/recoll
Flies on solid state storage!
Can be plugged into Searx: https://searx.github.io/searx/admin/engines/recoll.html
WaveDB is SQLite with a HTTP interface.
It is a ~6MB (~2MB UPX-compressed) self-contained, zero-dependency executable that bundles SQLite 3.35.5 (2021-04-19) with JSON1, RTREE, FTS5, GEOPOLY, STAT4, and SOUNDEX.
If you are already a fan of SQLite, WaveDB acts as a thin HTTP-server wrapper that lets you access your SQLite databases over a network.
WaveDB can be used as a lightweight, cross-platform, installation-free companion SQL database for Wave apps. The h2o-wave package includes non-blocking async functions to access WaveDB.
Database files managed by WaveDB are 100% interoperable with SQLite, which means you can manage them with the sqlite3 CLI, backup/restore/transfer them as usual, or use Litestream for replication.