A social media frontend with a focus on custom branding and ease of use. https://soapbox.pub
 
 
 
 
 
Go to file
Chewbacca e32ea32f15 Merge branch 'group-name-validation' into 'develop'
Group name validation

See merge request soapbox-pub/soapbox!2388
2023-03-30 13:28:03 +00:00
.github
.gitlab
.husky
.storybook Add support for react-intl for Storybook 2023-02-07 14:23:28 -05:00
.vscode vscode: don't lint css through VSCode (rely on stylint and Tailwind extension) 2023-01-17 21:20:46 -06:00
app Merge branch 'group-name-validation' into 'develop' 2023-03-30 13:28:03 +00:00
custom
docs Add `yarn i18n` command to fix translation files 2023-02-28 10:13:53 -06:00
installation
jest Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 2023-01-17 18:34:11 -06:00
scripts Change ESLint rules, lint 2023-02-16 00:12:02 +01:00
stories Change ESLint rules, lint 2023-02-16 00:12:02 +01:00
tailwind Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 2023-01-17 18:34:11 -06:00
types Types, update styles 2023-02-26 20:34:57 +01:00
webpack Merge remote-tracking branch 'soapbox/develop' into rss-button 2023-01-30 23:16:25 +01:00
.dockerignore
.editorconfig
.env.example
.eslintignore Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 2023-01-17 18:34:11 -06:00
.eslintrc.cjs Change ESLint rules, lint 2023-02-16 00:12:02 +01:00
.gitattributes
.gitignore
.gitlab-ci.yml GitLab CI: only run Docker job when a tag is pushed 2023-02-15 19:57:40 -06:00
.lintstagedrc.json Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 2023-01-17 18:34:11 -06:00
.stylelintrc.json
.tool-versions Update dependency node to v18.14.0 2023-02-02 20:06:42 +00:00
CHANGELOG.md Merge branch 'textarea-counter' into 'develop' 2023-03-30 00:30:39 +00:00
COFE_OF_CONDUCT.md
Dockerfile
Dockerfile.dev
LICENSE
README.md Update README.md 2023-03-09 21:39:31 +01:00
app.json
babel.config.cjs Upgrade babel, simplify deps 2023-02-02 19:32:32 -06:00
compose-dev.yaml
dangerfile.ts
heroku.yml
jest.config.cjs Merge remote-tracking branch 'soapbox/develop' into update-emoji-mart 2023-02-23 17:42:31 +01:00
package.json Chats: fix crash in emoji autosuggest 2023-03-19 19:59:46 -05:00
postcss.config.cjs Rename some files to .cjs, make the codebase aware of .cjs and .mjs extensions 2023-01-17 18:34:11 -06:00
renovate.json
soapbox-screenshot.png
tailwind.config.cjs Add Trending and Suggested Groups to discovery 2023-02-27 08:26:59 -05:00
tsconfig.json EntityStore: allow deleting entities 2023-03-14 14:14:48 -05:00
webpack.config.ts
yarn.lock Chats: fix crash in emoji autosuggest 2023-03-19 19:59:46 -05:00

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/.