A toot search engine for Mastodon
Elixir JavaScript HTML Shell CSS
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
assets
config
lib
pgdata
priv
test
.gitignore
Dockerfile
README.md
docker-compose.prod.yml
docker-compose.yml
mix.exs
mix.lock
run_prod.sh
services.sh

README.md

Warning: this is a simple proof of concept. Code is not polished and I'm not used to elixir/phoenix, this is a toy project. UI is awful.

You're more than welcome to contribute though. I will most probably learn some more elixir by merging your PRs. On the frontend side, I might not learn anything unfortunately. I'll still welcome any effort to make this better.

Clericalist

It's a simple toot search engine.

Requirements:

  • docker
  • docker-compose
  • elixir

To start the project locally:

  • Get a mastodon postgres dump, place it at pgdata/dump
  • Run ./services.sh
    • First question asked: do you want to drop your current data by removing this project's postgres and elastic containers?
    • Second question: do you want to automatically download a new pg dump replacing the local one?
      • Say no, unless you add mastodon to your ssh config and adapt the scp command to get the dump from the correct location in the correct format

This services.sh does the following (unless you answer "yes" to any question):

  1. Start the containers
  2. Create the postgres DB
  3. Run the migrations
  4. Import the dump into the DB

Next step:

  • Install Node.js dependencies with cd assets && yarn install
  • Index the publicly visible toots into elasticsearch with mix index

Finally:

  • Start Phoenix endpoint with mix phx.server, now you can visit localhost:4000 from your browser.