Skip to content
Switch branches/tags


Federated, ActivityPub-compatible social network with friends, walls, and groups.

If you have any questions or feedback, there's a Telegram chat you can join.


Running directly on your server

  1. Install and configure MySQL
  2. Install maven and JDK >=15 if you don't have it already
  3. Build the jar by running mvn package and place the one with dependencies at /opt/smithereen/smithereen.jar
  4. Set up the native library (libvips and JNI bindings): pick a binary for your OS and CPU from prebuilt ones or build your own
  5. Install and configure imgproxy
  6. Fill in the config file, see a commented example here
  7. Create a new MySQL database and initialize it with the schema using a command (mysql -p smithereen < schema.sql) or any GUI like phpMyAdmin
  8. Configure and start the daemon: assuming your distribution uses systemd, copy the service file to /etc/systemd/system, then run systemctl daemon-reload and service smithereen start
  9. Run java -jar /opt/smithereen/smithereen.jar /etc/smithereen/ init_admin to create the first account
  10. Log into that account from your web browser, then configure the rest of the server settings from its UI

Using Docker

Copy Docker-specific config example to the project root directory as and edit it to set your domain. Also edit docker-compose.yml to add your imgproxy secrets. You can then use docker-compose to run Smithereen, MySQL, and imgproxy. You still need to configure your web server to reverse proxy the port 4567. Create the first account by running docker exec -it smithereen_web_1 bash -c ./smithereen-init-admin.


Federated, ActivityPub-compatible social network server with friends, walls, and groups.





No packages published