A social media frontend with a focus on custom branding and ease of use. https://soapbox.pub
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Go to file
Alex Gleason 967bf8f30a
Merge branch 'vitest-fixes' into 'develop'
8 months ago
.github Move FUNDING.yml to .github/FUNDING.yml 2 years ago
.gitlab Add template for easy before/after screenshots 1 year ago
.husky Use lint-staged with Husky to only lint changed files 3 years ago
.vscode vscode: don't lint css through VSCode (rely on stylint and Tailwind extension) 1 year ago
app Merge branch 'vitest-fixes' into 'develop' 8 months ago
custom Allow custom module imports 2 years ago
docs Add `yarn i18n` command to fix translation files 1 year ago
installation Fix Mastodon Media Uploads 9 months ago
scripts Change ESLint rules, lint 1 year ago
tailwind Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 1 year ago
types Change ESLint rules, lint 1 year ago
.dockerignore dockerignore: .git 2 years ago
.editorconfig Add .editorconfig 4 years ago
.env.example Patron updates 4 years ago
.eslintignore Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 1 year ago
.eslintrc.cjs eslint: @typescript-eslint/no-duplicate-imports --> import/no-duplicates 8 months ago
.gitattributes Add .gitattributes, prevent conflicts on CHANGELOG.md 1 year ago
.gitignore gitignore vite temp files 8 months ago
.gitlab-ci.yml Merge branch 'renovate/docker-24.x' into 'develop' 8 months ago
.lintstagedrc.json Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 1 year ago
.stylelintrc.json Upgrade stylelint, fix scss linting 8 months ago
.tool-versions asdf: nodejs 20.0.0 1 year ago
CHANGELOG.md Fix aspect ratio of avatars in audio player 10 months ago
COFE_OF_CONDUCT.md Replace code of conduct with cofe of conduct 4 years ago
Dockerfile Update Node.js to v20 1 year ago
Dockerfile.dev Update Node.js to v20 1 year ago
LICENSE Add LICENSE and README 4 years ago
README.md Update README.md 1 year ago
app.json Add app.json 2 years ago
babel.config.cjs Upgrade babel, simplify deps 1 year ago
compose-dev.yaml Support Docker local development 2 years ago
dangerfile.ts Danger: don't warn about changelog for docs, CI, etc 1 year ago
heroku.yml Add heroku.yml so it uses the Dockerfile 2 years ago
package.json Merge branch 'vitest-fixes' into 'develop' 8 months ago
postcss.config.cjs Add back necessary sass deps 8 months ago
renovate.json Renovate: disable lockFileMaintenance 1 year ago
soapbox-screenshot.png Overhaul README 1 year ago
tailwind.config.cjs Remove deprecated Tailwind line-clamp plugin (now bundled with v3.3) 1 year ago
tsconfig.json tsconfig: fix third-party types 8 months ago
vite.config.ts vitest: add setup file, use @testing-library/jest-dom 8 months ago
yarn.lock Merge branch 'vitest-fixes' into 'develop' 8 months ago

README.md

Soapbox Screenshot

Soapbox is customizable open-source software that puts the power of social media in the hands of the people. Feature-rich and hyper-focused on providing a user experience to rival Big Tech, Soapbox is already home to some of the biggest alternative social platforms.

On The Fediverse

You may have heard of Mastodon. Soapbox builds upon what Mastodon made great to make something even better.

You can run Mastodon+Soapbox, Rebased+Soapbox, and more.

Soapbox is the frontend (what users see) while Mastodon is the backend (data, APIs). You can mix-and-match in the Fediverse ecosystem.

💡 If you're starting a new server, we highly recommend Rebased+Soapbox. Rebased is our custom-built backend just for Soapbox, providing important new features such as quote posting and chats.

See: Installing Rebased+Soapbox

Try It Out

Want to give Soapbox a shot? Here are some suggested servers:

  • gleasonator.com - operated by the lead developer of Soapbox
  • social.teci.world - free speech server run by a Soapbox contributor
  • spinster.xyz - one of the largest feminist communities on the internet
  • poa.st - the largest Soapbox server on the network

Want to use Soapbox against any existing Mastodon/Pleroma server? Try:

  • fe.soapbox.pub - enter your server's domain name to use Soapbox on any server!

🚀 Starting Your Own Server

Starting your own server is one of the best ways to have freedom online! We recommend installing Rebased+Soapbox.

See here for a detailed setup guide: Installing Rebased+Soapbox

Adding Soapbox to an Existing Server

Already have a server? No problem — it is still possible to use Soapbox.

💡 If using Pleroma, it's recommended to upgrade it to Rebased. This comes with better support and many new features, helping you get the most out of Soapbox.

Developing Soapbox

tl;dr — git clone, yarn, and yarn dev.

For detailed guides, see these pages:

  1. Soapbox local development
  2. yarn commands
  3. How it works
  4. Environment variables
  5. Developing a backend

Contributing

We welcome contributions to this project. To contribute, see Contributing to Soapbox.

Translators can help by providing translations through Weblate. Native speakers from all around the world are welcome!

Project Philosophy

Soapbox was born out of the need to build independent platforms with a unique identity and brand.

This is in contrast to Mastodon's idea, where all servers are called "Mastodon" and use the Mastodon colors and logo. Users won't see the word "Soapbox" throughout the UI, they'll see the name of your website and your logo. To facilitate this, Soapbox has a robust customization UI and integrated moderation tools. Large servers are a priority.

One disadvantage of this approach is that it does not help the software spread. Some of the biggest servers on the network and running Soapbox and people don't even know it!

License & Credits

© Alex Gleason & other Soapbox contributors
© Eugen Rochko & other Mastodon contributors
© Trump Media & Technology Group
© Gab AI, Inc.

Soapbox is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Soapbox is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with Soapbox. If not, see https://www.gnu.org/licenses/.