summaryrefslogtreecommitdiff
path: root/README.md
AgeCommit message (Collapse)Author
2026-01-01Add miget hosting note to readme [skip ci]Ben Busby
2025-06-03Fix missing logo [skip ci]Ben Busby
2025-01-27Add search engine links to readme [skip ci]Ben Busby
Adds links for Kagi and Whoogle
2025-01-27Update readme [skip ci]Ben Busby
Adds search integration docs to readme
2025-01-27Update breezewiki routing behavior, update readmeBen Busby
BreezeWiki requires the subdomain of a fandom link to be preserved when routing, otherwise the redirect doesn't work correctly. Cleaned up readme examples
2025-01-21Rewrite project, add daily update of services listBen Busby
The project was rewritten from Elixir to Go, primarily because: - I don't write Elixir anymore and don't want to maintain a project in a language I no longer write - I already write Go for other projects, including my day job, so it's a safer bet for a project that I want to maintain long term - Go allows me to build portable executables that will make it easier for others to run farside on their own machines The Go version of Farsside also has a built in task to fetch the latest services{-full}.json file from the repo and ingest it, which makes running a farside server a lot simpler. It also automatically fetches the latest instance state from https://farside.link unless configured as a primary farside node, which will allow others to use farside without increasing traffic to all instances that are queried by farside (just to the farside node itself).
2024-03-06Fix Scribe repo URL in readme [skip ci]Ben Busby
Closes #159
2024-03-06Update SimplyTranslate repo URL in readme [skip ci]Ben Busby
Closes #160
2024-03-06Fix typo [skip ci] (#157)Jakub Wilk
2023-07-17Add env var for toggling cron task on/offBen Busby
FARSIDE_CRON allows turning on/off the scheduled instance availability check that occurs every 5 minutes by setting the variable to 1 (on) or 0 (off). The default behavior is "on".
2023-03-22Allow compiling to standalone binary via bakewareBen Busby
This introduces a simple way of compiling Farside to a somewhat portable, standalone binary. The resulting binary isn't completely portable since it depends on the C runtime of the host system. As a result, it's advised to use systems with older library versions when compiling for true portability. Closes #50 Co-authored-by: Jason Clark <mithereal@gmail.com>
2022-10-31Remove Redis dep, replace w/ native Elixir libBen Busby
This removes the dependency on Redis for core app functionality. Rather than using the key/value store provided by Redis, Farside now uses a key/val store provided by [cubdb](https://github.com/lucaong/cubdb) for identical functionality but without reliance on a non-Elixir service. This solution was chosen instead of ets, because storing instance data in memory leads to a period of broken functionality whenever the app restarts and hasn't re-populated instance data yet. It was also chosen instead of dets, because the documentation for dets was pretty hard to understand at first glance. Tests and the CI build were updated to reflect the removed dependency on Redis. New environment variable `FARSIDE_DATA_DIR` can be used to point to a directory where the instance data can be stored by cubdb. Co-authored-by: Jason Clark <mithereal@gmail.com>
2022-09-30Fix `packages.debian.org` readme link [skip ci] (#65)notarun
2022-09-22Include link to browser extension setup in readmeBen Busby
2022-09-15Remove bibliogram from readme [skip ci]Ben Busby
2022-08-03Add sr.ht link to index list view, update instance listBen Busby
2022-08-02Fix readme logo spacing [skip ci]Ben Busby
2022-08-02Remove leftover markdown table in readme [skip ci]Ben Busby
2022-08-02Use html tables in readme [skip ci]Ben Busby
Sourcehut doesn't support markdown table formatting, but does support html tables.
2022-08-02Center README.md logo and badges [skip ci] (#56)uranuspucksaxophone
2022-07-27Add note about Cloudflare to readme [skip ci]Ben Busby
2022-07-27Make conn values and services path configurable at runtimeBen Busby
Connection values (such as redis server port and the port to run farside on) as well as the services json file to use can now be set via environment variables: FARSIDE_PORT sets the port for Farside to run on FARSIDE_REDIS_PORT sets the redis server port for Farside to use FARSIDE_SERVICES_JSON sets the services json file for Farside to use This partially addresses the move towards de-listing Cloudflare instances by default by allowing different services json files to be used with different redis servers. See #43
2022-06-21Add note to demo table in readmeBen Busby
The demo table doesn't include all available services that are supported by Farside, and likely shouldn't anyways since it already clutters up the readme a bit. The existing demos should give a good enough idea of how Farside works and how to use it.
2022-06-09Include new URL functionality in readmeBen Busby
2022-05-18Add required debian package to README [skip ci] (#35)invokah
Add a required package (erlang dev) for debian people hoping to run farside themselves
2022-03-18Support SearXNGBen Busby
Added a new seperate service for only redirecting to SearXNG instances. Note that plain "searx" redirects will use both SearX and SearXNG instances for those who don't have a preference between the two. Closes #23
2022-03-14Add Scribe to examples in readmeBen Busby
Closes #22
2022-02-14Remove redis config file from command in readmeBen Busby
Specifying the default redis.conf file is not required, and should be excluded from the project documentation.
2022-01-27Preserve redirect with `/_/` path prefix (#13)Ben Busby
This adds a straightforward way of preserving Farside's redirecting behavior in the user's browser history. That way if an instance becomes unavailable between the 5 min scans, the user can opt to navigate back one page and be taken to a new instance. This is accomplished using a single line of JS, and could potentially work as the default behavior of Farside (with the current default behavior requiring a path prefix instead). This should be revisited down the road when more people are using this service.
2022-01-26Support imgur alternativesBen Busby
- Imgin (only one instance) - https://git.voidnet.tech/kev/imgin/ - Rimgo - https://codeberg.org/video-prize-ranch/rimgo Closes #11
2021-12-28Broaden HTTPoison status code inspectionBen Busby
Rather than enforcing a 200 status code, the instance query is deemed a success if the status code is <400. Various services return 200-399 status codes that don't necessarily indicate an error, but may have to do with how the instance was configured.
2021-12-21Set `lang_interface=en` param in whoogle demoBen Busby
Should avoid issues where the default configured language for a particular instance isn't english (which is the assumed language in the demo).
2021-12-17Support lingva translate serviceBen Busby
https://github.com/TheDavidDelta/lingva-translate
2021-12-16Clarify demo links in readmeBen Busby
2021-12-16Add piped instance, update demos in readmeBen Busby
2021-12-09Remove `FARSIDE_NO_ROUTER` env varBen Busby
The FARSIDE_NO_ROUTER variable wasn't terribly useful after refactoring the app to include the update routine internally (rather than available externally as an elixir script). Now the only supported environment variable is FARSIDE_TEST, which is still useful for tests and quick validation of functionality.
2021-11-24Use quantum core for update schedulingBen Busby
Rather than requiring a traditional crontab install, the app now leverages quantum-core (link below) to schedule the instance update/sync task every 5 minutes. Some updates as a result: - The new job is scheduled at runtime in server.ex. - The update.exs script was refactored to be compiled along with the rest of the app as instances.ex. - Scheduler and Server modules were added for creating and executing the new update task - All shell scripts were removed, as they are no longer needed https://github.com/quantum-elixir/quantum-core
2021-11-15Allow bypassing app router with `FARSIDE_NO_ROUTER`Ben Busby
Setting the aforementioned env var skips creation of the app router, which is useful for running update.exs when the main app is already running (otherwise there's a port conflict).
2021-11-15Add searx example to demo tableBen Busby
2021-11-15Add Whoogle example to demo table in readmeBen Busby
2021-11-12Update readmeBen Busby
Expanded readme to include a demo, a "how it works" section, and a general overview of Farside's purpose.
2021-11-12Convert logo to SVGBen Busby
2021-11-08Update README.mdBen Busby
2021-11-08Add readme bannerBen Busby
2021-11-07Refactor project to new nameBen Busby
The name of the project is being refactored from Privacy Revolver to Farside. The reasoning behind this is: 1. A shorter name is easier to remember 2. It can stand for "FOSS alternative redirecting service" (which I know doesn't encapsulate all letters from "farside", but it's close enough). This commit also includes improvements to the update script for determining how far along the script is.
2021-10-26Add CI status to readme, update descriptionBen Busby
2021-10-21Initial commitBen Busby