Archived version of the gab source code from before they pulled the public repo
Go to file
robcolbert 247ccbc265 indentation fix 2019-07-08 18:29:52 -04:00
.circleci Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.dependabot Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.github change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
app change prompt for verified users re: display name change 2019-07-08 06:16:33 -04:00
bin Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
config adapt remote_ip determination for CF 2019-07-04 04:05:34 -04:00
db change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
dist Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
docs production stuff 2019-07-07 02:42:29 -04:00
lib generates RSA key pairs for migrated accounts 2019-07-04 16:25:06 -04:00
log Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
nanobox Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
public Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
spec revert OStatus xmlns to mastodon.social 2019-07-06 21:57:50 -04:00
streaming indentation fix 2019-07-08 18:29:52 -04:00
vendor Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.buildpacks Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.codeclimate.yml Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.dockerignore Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.editorconfig Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.env.nanobox Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.env.production.sample change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
.env.test Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.env.vagrant Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.eslintignore Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.eslintrc.js Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.foreman Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.gitattributes Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.gitignore Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.haml-lint.yml Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.jshintrc Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.nanoignore Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.nvmrc Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.profile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.rspec Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.rubocop.yml Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.ruby-version Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.scss-lint.yml Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.slugignore Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
.yarnclean Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
AUTHORS.md updated 2019-07-03 22:57:21 -04:00
Aptfile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
CHANGELOG.md Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
CONTRIBUTING.md change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
Capfile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
Dockerfile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
Gemfile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
Gemfile.lock Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
LICENSE Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
Procfile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
Procfile.dev Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
README.md Gab Social is not, in fact, based on Gab Social. 2019-07-04 05:48:16 -04:00
Rakefile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
Vagrantfile Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
app.json change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
babel.config.js Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
boxfile.yml Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
config.ru Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
docker-compose.yml docker-compose updates 2019-07-05 15:51:43 -04:00
gs-deploy-develop Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
gs-export Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
gs-logtail Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
package-lock.json package-lock.json created by NPM install. 2019-07-02 13:06:16 -04:00
package.json change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
postcss.config.js Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
priv-config Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00
scalingo.json change all GitHub links to Gab's GitLab at code.gab.com 2019-07-03 13:26:13 -04:00
yarn.lock Gab Social. All are welcome. 2019-07-02 03:10:25 -04:00

README.md

Gab Social

Gab Social is an open source and fully decentralized social network powered by the Gab Platform. It is the new social network of Gab.com. This change was made to further Gab's committment to it's users trust and privacy online. And, by offering decentralization and federation, Gab further demonstrates a lack of interest in the ownership of your data.

The Gab Social project is based on the Mastodon project, and is licensed under the terms and conditions of AGPL-3.0. While we will be keeping this license, over time we will be keeping less and less of the original project's source code and approach.

Our goal is to establish the foundation of a federated network of social networks. Our first step is our move to this technology, which immediately enables the construction of that network and provides the tools people will need to create and build. Over time, a new implementation of this system will emerge that is entirely based on Node.js, moves away from Postgres as it's database, and becomes part of the HYDRA family.

Project goals

We have diverged from Gab Social in several ways in pursuit of our own goals.

  1. Node.js has been updated to 10.15.3LTS for hosting the Streaming API in compliance with the Gab Platform.
  2. Statuses were renamed from 'toots' to 'gabs'
  3. The maximum length of a status was increased to 3,000 characters
  4. Advanced media (MP4, WebM, etc.) was limited to PRO subscribers
  5. The creation of custom emoji was limited to PRO subscribers
  6. The browser client user experience has been significantly altered to match what users of Gab will expect
  7. Features were added to integrate the system with the Gab platform (accessing trends from Dissenter, for example)

BTCPay

In order to make BTC flow work, 3 enviornment variables need to be set:

Deployment

Tech stack:

  • Ruby on Rails powers the REST API and other web pages
  • React.js and Redux are used for the dynamic parts of the interface
  • Node.js powers the streaming API

Requirements:

  • PostgreSQL 9.5+
  • Redis
  • Ruby 2.4+
  • Node.js 8+

The repository includes deployment configurations for Docker and docker-compose, but also a few specific platforms like Heroku, Scalingo, and Nanobox.

A stand-alone installation guide will be provided as soon as possible.

A Vagrant configuration is included for development purposes.

License

Copyright (C) 2019 Gab AI, Inc., and other contributors (see AUTHORS.md, forked)

Copyright (C) 2016-2019 Eugen Rochko & other Gab Social contributors

This program 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.

This program 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 this program. If not, see https://www.gnu.org/licenses/.