.. | ||
config | ||
lib | ||
priv | ||
rel/rel | ||
test | ||
.dockerignore | ||
.formatter.exs | ||
.sobelow-conf | ||
docker-compose.yaml | ||
Dockerfile | ||
mix.exs | ||
mix.lock | ||
Procfile | ||
README.md |
fediverse.space backend
Notes
- This project requires Elixir >= 1.10.
- Run with
SKIP_CRAWL=true
to just run the server (useful for working on the API without also crawling) - This project is automatically scanned for potential vulnerabilities with Sobelow.
Configuration
There are several environment variables you can set to configure how the crawler behaves.
DATABASE_URL
(required) . The URL of the Postgres db.POOL_SIZE
. The size of the database pool. Default: 10PORT
. Default: 4000BACKEND_HOSTNAME
(required). The url the backend is running on.SECRET_KEY_BASE
(required). Used for signing tokens.TWILIO_ACCOUNT_SID
. Used for sending SMS alerts to the admin.TWILIO_AUTH_TOKEN
. As above.ADMIN_PHONE
. The phone number to receive alerts at.- At the moment, the only alert is when there are potential new spam domains.
TWILIO_PHONE
. The phone number to send alerts from.ADMIN_EMAIL
. Used for receiving alerts.FRONTEND_DOMAIN
(required). Used to generate login links for instance admins.- Don't enter
https://
, this is added automatically.
- Don't enter
SENDGRID_API_KEY
. Needed to send emails to the admin, or to instance admins who want to opt in/out.MASTODON_DOMAIN
. The domain (e.g.mastodon.social
) that your bot login account is hosted on.MASTODON_TOKEN
. The access token for the bot login account.
Deployment
Deployment with Docker is handled as per the Distillery docs.
- To build a new version, run
make build
in this directory. - To migrate a released version, run
./backend eval "Backend.Release.migrate"
Default README
To start your Phoenix server:
- Install dependencies with
mix deps.get
- Create and migrate your database with
mix ecto.setup
- Start Phoenix endpoint with
mix phx.server
Now you can visit localhost:4000
from your browser.
Ready to run in production? Please check our deployment guides.
Learn more
- Official website: http://www.phoenixframework.org/
- Guides: https://hexdocs.pm/phoenix/overview.html
- Docs: https://hexdocs.pm/phoenix
- Mailing list: http://groups.google.com/group/phoenix-talk
- Source: https://github.com/phoenixframework/phoenix