46 lines
3.2 KiB
Markdown
46 lines
3.2 KiB
Markdown
This lists some of the projects I've worked on that I'm most proud of,
|
|
especially personal projects and open source contributions.
|
|
|
|
## Bulgur Cloud
|
|
|
|
[Bulgur Cloud](https://github.com/SeriousBug/bulgur-cloud) is a cloud storage and sharing solution, similar to Google Drive,
|
|
OneDrive, or NextCloud. Bulgur Cloud is lightweight and easy to self host: it
|
|
requires very little resources, comes with the user interface bundled into a
|
|
single executable, and requires no databases or external dependencies.
|
|
|
|
![A web page with 3 files listed, "sprite-fright.mp4", "test.txt", and "sprite-fright.LICENSE.txt". There are pencil and thrash bin symbols to the right of the file names. A leftward arrow is grayed out on the top left, and top right says "kaan". On the bottom right there's a symbol of a cloud with an up arrow.](https://bgenc.net/img/2022-03-29-00-16-13.png)
|
|
|
|
A demo is available at [bulgur-cloud.bgenc.net](https://bulgur-cloud.bgenc.net).
|
|
Please enter `test` for both username and password to log into the demo. The
|
|
demo is read only, so if you try to upload, rename, or delete anything you'll
|
|
get an error message.
|
|
|
|
Bulgur Cloud is free, open source software, licensed under AGPL-3.0. You can find the source code at [SeriosBug/bulgur-cloud](https://github.com/SeriousBug/bulgur-cloud), releases are available under the [releases tab](https://github.com/SeriousBug/bulgur-cloud/releases) as well as [DockerHub](https://hub.docker.com/r/seriousbug/bulgur-cloud).
|
|
|
|
Bulgur Cloud's backend is written in Rust using the [Actix web framework](https://actix.rs/), and includes a RESTful API, a CLI management
|
|
tool, and a rich web application UI built with [React Native](https://reactnative.dev/), [Native Base](https://nativebase.io/),
|
|
[Redux](https://react-redux.js.org/), and [React Navigation](https://reactnavigation.org/).
|
|
There's also a HTML-only user interface that uses server rendered HTML templates for users without JavaScript.
|
|
|
|
## gandi-live-dns
|
|
|
|
[gandi-live-dns](https://github.com/SeriousBug/gandi-live-dns-rust) is a system service (daemon) that automatically updates your IP
|
|
address on the domain provider Gandi's domain name servers, allowing you to host
|
|
web services without a static IP address.
|
|
|
|
It features a simple configuration file, self rate limiting, self contained
|
|
[binary releases](https://github.com/SeriousBug/gandi-live-dns-rust/releases),
|
|
docker [images](https://hub.docker.com/r/seriousbug/gandi-live-dns-rust),
|
|
and systemd [service files](https://github.com/SeriousBug/gandi-live-dns-rust/tree/master/Packaging).
|
|
|
|
## Image Survey
|
|
|
|
[Image Survey](https://github.com/SeriousBug/image-survey) is a self hosted web service for doing qualitative image comparison
|
|
surveys. It can be used to do surveys where 2 image variants are compared
|
|
against each other or against an original. It's built for quick, anonymous surveys.
|
|
|
|
![A web page with an image of a flower, repeated 3 times with differing levels of compression artifacts. Above the images are buttons to zoom and go back, and below are buttons to pick the left or right image.](https://github.com/SeriousBug/image-survey/raw/master/misc/screenshot-vote.jpg)
|
|
|
|
It's built with a Python backend that serves a REST API, and a React frontend.
|
|
It uses an sqlite database to store the data, with hand-coded SQL queries.
|