Go to file
Thibaut Girka bbf0b4caf5
Do not mark toots as sensitive if they don't have any media attached
2019-02-01 12:55:32 +01:00
.circleci Fix CircleCI (#9695) 2019-01-02 20:48:22 +01:00
.github Merge branch 'master' into glitch-soc/merge-upstream 2018-10-22 17:51:38 +02:00
app Do not mark toots as sensitive if they don't have any media attached 2019-02-01 12:55:32 +01:00
bin Upgrade Babel to version 7.0.0 (#5925) 2018-09-14 17:59:48 +02:00
config config/webpack/production.js: Remove caching in OfflinePlugin (introduced in 0692991b5) 2019-01-21 03:19:20 +01:00
db Merge branch 'master' into glitch-soc/merge-upstream 2019-01-19 18:28:37 +01:00
dist Add nginx and systemd templates (#8770) 2018-09-24 16:46:05 +02:00
lib Merge branch 'master' into glitch-soc/merge-upstream 2019-01-19 18:28:37 +01:00
log Initial commit 2016-02-20 22:53:20 +01:00
nanobox Update Nginx config for Nanobox apps (#9310) 2018-11-20 22:24:35 +01:00
public Replace animated oops.gif by a non-animated image 2018-12-19 20:49:58 +01:00
spec Merge branch 'master' into glitch-soc/merge-upstream 2019-01-19 18:28:37 +01:00
streaming Only stream local-only toots to logged-in users 2018-11-13 18:55:57 +01:00
vendor Increase files checked by ESLint (#9705) 2019-01-04 11:28:38 +01:00
.buildpacks Add ffmpeg buildpack for scalingo (#8500) 2018-08-29 01:21:23 +02:00
.codeclimate.yml Upgrade ESLint to v5.x (#9694) 2019-01-02 07:28:53 +01:00
.dockerignore Add .bundle to .dockerignore (#7895) 2018-06-26 20:33:29 +02:00
.editorconfig Add final newline to locale files (#2890) 2017-05-07 19:55:47 +02:00
.env.nanobox Rename S3_CLOUDFRONT_HOST to S3_ALIAS_HOST. (#8423) 2018-08-25 13:27:08 +02:00
.env.production.sample Merge branch 'master' into glitch-soc/merge-upstream 2018-08-26 14:23:24 +02:00
.env.test Do not test PAM authentication by default (#9027) 2018-10-20 07:32:26 +02:00
.env.vagrant update vagrant configs (#8706) 2018-09-16 14:49:15 -04:00
.eslintignore Increase files checked by ESLint (#9705) 2019-01-04 11:28:38 +01:00
.eslintrc.js Increase files checked by ESLint (#9705) 2019-01-04 11:28:38 +01:00
.foreman Replace sprockets/browserify with Webpack (#2617) 2017-05-03 02:04:16 +02:00
.gitattributes Add .gitattributes file to avoid unwanted CRLF (#3954) 2017-06-26 13:15:24 +02:00
.gitignore Ignore elasticsearch directory (#7070) 2018-04-08 16:57:16 +09:00
.gitlab-ci.yml Add GitLab CI config 2019-01-21 03:19:17 +01:00
.gitmodules Rename themes -> flavours ? ? 2017-12-03 23:26:40 -08:00
.haml-lint.yml Added haml-lint and fix warnings (#2773) 2017-05-08 03:35:25 +02:00
.nanoignore Remove Storybook (#4397) 2017-07-27 22:30:27 +02:00
.nvmrc Upgrade Node.js to v8.x on nvmrc (#8023) 2018-07-15 12:29:17 +09:00
.profile Add ffmpeg and dependent packages as well as LD_LIBRARY_PATHs (#3276) 2017-05-24 17:57:33 +02:00
.rspec Adding a Mention model, test stubs 2016-02-25 00:17:01 +01:00
.rubocop.yml Move more tasks to tootctl (#8675) 2018-09-14 17:42:22 +02:00
.ruby-version Upgrade default Ruby version to 2.6.0 (#9688) 2019-01-01 16:40:17 +01:00
.scss-lint.yml Enable CodeClimate SCSS Lint checks (#2886) 2017-05-07 20:47:31 +02:00
.slugignore Remove Storybook (#4397) 2017-07-27 22:30:27 +02:00
.yarnclean Reduce container size with clean yarn (#3506) 2017-09-30 22:05:24 +02:00
AUTHORS.md Update AUTHORS (#9764) 2019-01-08 18:17:56 +01:00
Aptfile Adjust Aptfile for Heroku-18 stack (#8588) 2018-09-09 02:10:58 +02:00
CHANGELOG.md Change CHANGELOG.md references from pull requests to authors (#9864) 2019-01-19 16:25:20 +01:00
CODE_OF_CONDUCT.md update code of conduct email address 2017-11-21 11:01:28 -05:00
CONTRIBUTING.md Merge branch 'master' into glitch-soc/merge-upstream 2018-10-22 17:51:38 +02:00
Capfile remove capistrano/faster_assets from Capfile (#2737) 2017-05-03 12:14:52 +02:00
Dockerfile Merge branch 'master' into glitch-soc/merge-upstream 2019-01-19 18:28:37 +01:00
Gemfile Merge branch 'master' into glitch-soc/merge-upstream 2019-01-19 18:28:37 +01:00
Gemfile.lock Merge branch 'master' into glitch-soc/merge-upstream 2019-01-19 18:28:37 +01:00
LICENSE Fix #49 - License changed from GPL-2.0 to AGPL-3.0 2016-09-21 23:04:34 +02:00
Procfile More robust PuSH subscription refreshes (#2799) 2017-05-05 02:23:01 +02:00
Procfile.dev Fix Procfile on OS X (#6748) 2018-03-12 03:50:40 +01:00
README.md README.md: document deployement with build.sh 2019-01-21 03:19:13 +01:00
Rakefile Initial commit 2016-02-20 22:53:20 +01:00
Vagrantfile Merge branch 'master' into glitch-soc/merge-upstream 2019-01-02 15:36:53 +01:00
app.json Change logo URL for Heroku and Scalingo (#4476) 2017-08-01 05:59:11 +02:00
babel.config.js Upgrade Babel to version 7.0.0 (#5925) 2018-09-14 17:59:48 +02:00
boxfile.yml [Nanobox] Enable ElasticSearch support by default (#6977) 2018-03-31 13:17:25 +02:00
build.sh remove gzip on assets, add build.sh 2019-01-21 03:19:13 +01:00
config.ru Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
docker-compose.yml Remove uneeded command and switch to images for TOR (#9438) 2019-01-04 16:15:09 +01:00
jest.config.js Removed glitch tests 2017-11-17 19:29:17 -08:00
package.json remove --color and --progress from buildscripts 2019-01-21 03:19:18 +01:00
postcss.config.js Increase files checked by ESLint (#9705) 2019-01-04 11:28:38 +01:00
priv-config TOR federation (#7875) 2018-06-26 20:34:12 +02:00
scalingo.json Add ffmpeg buildpack for scalingo (#8500) 2018-08-29 01:21:23 +02:00
stack-fix.c dockerfile: Give more stack space to /sbin/tini. 2018-01-11 04:09:16 -06:00
yarn.lock remove gzip on assets, add build.sh 2019-01-21 03:19:13 +01:00

README.md

Glitch-fe: glitch-soc frontend for pleroma

Here is a fork of mastodon. We could really just remove all of the code except for the frontend, but to easily pull the upstream repo we'll just keep everything. This is my fork for the moment with the idea of making the mastofe just as polished as the pleromafe. If you want to get access, open an issue or hit me up at howl@social.zxq.co.

Deployement

This is what you want to do to update the mastofe bundled with pleroma.

  • Run build.sh at the root of this repo, you can set the TARGET environment variable if pleroma isnt at ../pleroma (default value of TARGET)
  • Go to pleroma repo:
    • git add priv/static/sw.js priv/static/packs
    • git commit -m "update mastofe"

Development

I use a combination of the pleroma backend + yarn + nginx to do local development. I refuse to install Ruby. Here's how to get it running on your own machine:

Install yarn

Yarn will be needed to set up the mastodon frontend for development. Check out https://yarnpkg.com/lang/en/docs/install/ . For Debian, it's like this:

# import yarn pub key and repo
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update
sudo apt-get install yarn

Mastodon Frontend Setup

# Install dependencies
yarn install -D
npm run dev
# check that http://localhost:3035/packs/common.css works in your browser once
# webpack is done compiling. if css shows up, then it should have worked!

nginx setup

I'll assume that you have already fired up pleroma using the installation guide. To work on the frontend while still having the backend up, use this nginx config.

server {
    listen 80;
    server_name pleroma.testing;

    location /packs {
        add_header 'Access-Control-Allow-Origin' '*';
        proxy_http_version 1.1;
        proxy_set_header Host $http_host;

        proxy_pass http://localhost:3035;
    }

    location / {
        add_header 'Access-Control-Allow-Origin' '*';
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;

        proxy_pass http://localhost:4000;
    }
}

Change the server_name if you like. I personally like to create a new entry in /etc/hosts and add 127.0.0.1 pleroma.testing, but you do what suits you.

If you have enough luck, navigating to your <server_name>/web should show you the mastodon frontend, and should also work with all the nice things of webpack such as hot reloading. Have fun!