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.
mgabdev 17bb84cf83 Added adjustment for footer-bar in iphonex 3 weeks ago
.circleci Gab Social. All are welcome. 4 months ago
.dependabot Gab Social. All are welcome. 4 months ago
.github change all GitHub links to Gab's GitLab at code.gab.com 4 months ago
app Added adjustment for footer-bar in iphonex 3 weeks ago
bin Gab Social. All are welcome. 4 months ago
config removed unsupported warnings option 3 weeks ago
db Merge branch 'feature/revision-history' of https://code.gab.com/gab/social/gab-social into develop 1 month ago
dist Gab Social. All are welcome. 4 months ago
docs manual password reset doc 2 months ago
lib gabctl accounts delete|suspend separated 3 months ago
log Gab Social. All are welcome. 4 months ago
nanobox Gab Social. All are welcome. 4 months ago
public Gab Social. All are welcome. 4 months ago
spec group_removed_users table to forbid users joining once removed 4 months ago
streaming send statuscard update on user-specific channel 2 months ago
vendor Gab Social. All are welcome. 4 months ago
.buildpacks Gab Social. All are welcome. 4 months ago
.codeclimate.yml Gab Social. All are welcome. 4 months ago
.dockerignore Gab Social. All are welcome. 4 months ago
.editorconfig Gab Social. All are welcome. 4 months ago
.env.nanobox Gab Social. All are welcome. 4 months ago
.env.production.sample change all GitHub links to Gab's GitLab at code.gab.com 4 months ago
.env.test Gab Social. All are welcome. 4 months ago
.env.vagrant Gab Social. All are welcome. 4 months ago
.eslintignore Gab Social. All are welcome. 4 months ago
.eslintrc.js Gab Social. All are welcome. 4 months ago
.foreman Gab Social. All are welcome. 4 months ago
.gitattributes Gab Social. All are welcome. 4 months ago
.gitignore Ignore Vagrant .log files 3 months ago
.haml-lint.yml Gab Social. All are welcome. 4 months ago
.jshintrc Gab Social. All are welcome. 4 months ago
.nanoignore Gab Social. All are welcome. 4 months ago
.nvmrc Gab Social. All are welcome. 4 months ago
.profile Gab Social. All are welcome. 4 months ago
.rspec Gab Social. All are welcome. 4 months ago
.rubocop.yml Gab Social. All are welcome. 4 months ago
.ruby-version Gab Social. All are welcome. 4 months ago
.scss-lint.yml Gab Social. All are welcome. 4 months ago
.slugignore Gab Social. All are welcome. 4 months ago
.yarnclean Gab Social. All are welcome. 4 months ago
AUTHORS.md updated 4 months ago
Aptfile Gab Social. All are welcome. 4 months ago
CHANGELOG.md Gab Social. All are welcome. 4 months ago
CONTRIBUTING.md change all GitHub links to Gab's GitLab at code.gab.com 4 months ago
Capfile Gab Social. All are welcome. 4 months ago
Dockerfile vim added to Docker build 3 months ago
Gemfile Gab Social. All are welcome. 4 months ago
Gemfile.lock Gab Social. All are welcome. 4 months ago
LICENSE Gab Social. All are welcome. 4 months ago
Procfile Gab Social. All are welcome. 4 months ago
Procfile.dev Gab Social. All are welcome. 4 months ago
README.md Turned the BTCPay links into invalid links. 2 months ago
Rakefile Gab Social. All are welcome. 4 months ago
Vagrantfile Upgrade Vagrant Node.js to 10.x, fixes #56 3 months ago
app.json change all GitHub links to Gab's GitLab at code.gab.com 4 months ago
babel.config.js Gab Social. All are welcome. 4 months ago
boxfile.yml Gab Social. All are welcome. 4 months ago
config.ru Gab Social. All are welcome. 4 months ago
docker-compose.yml docker-compose updates 4 months ago
gs-deploy-develop Gab Social. All are welcome. 4 months ago
gs-export Gab Social. All are welcome. 4 months ago
gs-logtail Gab Social. All are welcome. 4 months ago
package.json Added react-datepicker module 1 month ago
postcss.config.js Gab Social. All are welcome. 4 months ago
priv-config Gab Social. All are welcome. 4 months ago
scalingo.json change all GitHub links to Gab's GitLab at code.gab.com 4 months ago
yarn.lock yarn upgrade 3 weeks ago

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 Mastodon 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. The browser client user experience has been significantly altered to match what users of Gab will expect
  5. Features were added to integrate the system with the Gab platform (accessing trends from Dissenter, for example)
  6. Groups and group moderation
  7. Quote posting

BTCPay

In order to make BTC flow work, 3 environment 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.

Local development

To get started developing on Gab, you will need to run a version of it locally. The following instructions assume you are already familiar with using a terminal program.

  1. Install Vagrant and VirtualBox if you haven’t already.
  2. Clone this repository with git clone https://code.gab.com/gab/social/gab-social.git
  3. Change into the project directory with cd gab-social
  4. Run vagrant up to provision the virtual machine. This will take a while.
  5. Finally, run vagrant ssh -c "cd /vagrant && foreman start" to start the local web server.
  6. Visit http://0.0.0.0:3000 in your web browser to see Gab’s splash screen. If it doesn’t load, or styling is missing, wait another minute and refresh the page.
  7. Log in with the username admin and password administrator
  8. Have fun developing on Gab!

License

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

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