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.
It's 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.
Seems to be a general-purpose mapping server of some kind.
Waarzitje.nu is a basic application for submitting and retrieving live location updates. Originally focused on OsmAnd, but basically any application that supports REST could use it.
The back-end (REST API) of this application is made with Go, the front-end mapping interface is made with modern Vue 3 and TypeScript. Because of its modular setup, it is possible to run only the back-end, only the front-end or a combination of both.
A search engine made for honors class. Now made for everyone.
webhook is a lightweight configurable tool written in Go, that allows you to easily create HTTP endpoints (hooks) on your server, which you can use to execute configured commands. You can also pass data from the HTTP request (such as headers, payload or query variables) to your commands. webhook also allows you to specify rules which have to be satisfied in order for the hook to be triggered.
BlanketDB is a very simple database written in Python based on SQLite. It is intended for small IoT projects where you need a quick way to collect and store data from sensors and other devices. You communicate with BlanketDB using HTTP GET / POST / DELETE requests. Request and response bodies are usually JSON, but you can also POST HTML forms directly to BlanketDB. There is no schema in the database, you simply store objects in buckets.
Documentation: https://blanketdb.readthedocs.io.
Manticore Search is an open-source search engine that was born in 2017 as a continuation of the famous Sphinx Search engine. We took all the best from that, significantly improved its functionality, fixed hundreds of bugs, and rewrote it almost completely internally. And left it all open-sourced! That’s what makes Manticore Search a modern, fast and light-weight full-featured search engine.
We have designed and developed Manticore to provide you with multi-functional relevant search capabilities with high performance and low resource consumption and importantly easily integrable. It doesn’t matter what environment you are using, whether it’s Windows, Linux, MacOS or Docker, you can always use Manticore Search and connect to it from different programming languages or HTTP via JSON or even using MySQL client.
Github: https://github.com/manticoresoftware/manticoresearch
Problems I'm seeing
µStreamer is a lightweight and very quick server to stream MJPG video from any V4L2 device to the net. All new browsers have native support of this video format, as well as most video players such as mplayer, VLC etc. µStreamer is a part of the Pi-KVM project designed to stream VGA and HDMI screencast hardware data with the highest resolution and FPS possible.
If you're going to live-stream from your backyard webcam and need to control it, use mjpg-streamer. If you need a high-quality image with high FPS - µStreamer for the win.
In the AUR.
I wrote this script during the grueling process of installing and setting up an email server. It perfectly reproduces my successful steps to ensure the same setup time and time again, now with many improvements.
I'm glad to say that dozens, hundreds of people have now used it and there is a sizeable network of people with email servers thanks to this script.
I've linked this file on Github to a shorter, more memorable address on my website so you can get it on your machine with this short command:
curl -LO lukesmith.xyz/emailwiz.sh
When prompted by a dialog menu at the beginning, select "Internet Site", then give your full domain without any subdomain, i.e. lukesmith.xyz.
Debian (and derivatives) specific.
Sort of a self-hosted Youtube work-alike for your media collection. Browse, organize, and curate your stuff. Movies, shows, music. Live TV enabled, can function as a DVR.
Client apps for Android TV, FireTV, Roku, Kodi, Xbox One, PS4, and more. Or you can watch stuff in your web browser.
Github: https://github.com/jellyfin
REST API docs: https://api.jellyfin.org/
Official package repos for Debian and Ubuntu. In the AUR. There's even a portable version (if you have the .net core runtime handy).
Pleroma is a free, federated social networking server built on open protocols. It is compatible with GNU Social, Mastodon, and many other ActivityPub implementations.
The project consists of several components: Pleroma is the server implementation, and comes bundled with PleromaFE, the default frontend. Other useful utilities are also provided, such as an ActivityPub relay.
High performance, low latency, you can even run it on a RasPi (and many busy Pleroma instances are!)
Written in Elixir and Phoenix, with Postgres as its back-end.
Source code: https://git.pleroma.social/pleroma/pleroma/