Sign inSign up

neetshin/halcyon

By neetshin

Updated over 8 years ago

Another web interface of Mastodon

Image
0

592

neetshin/halcyon repository overview

Halcyon

BuildStatus Mastodon

Halcyon is another web interface of Mastodon.

Features

  • 3 column based familiar interface.
  • Able to use in every instance.
  • Deployable with Docker.
  • No tracking, No ads.

Supporting

PlatformVersion
Mastodonlatest

Deployment

At first, you need to create .env file. This file defines environment variables that enable the application container.

cp .env.example .env

Then, Set your host URL in the .env. It's necessary for registration of Mastodon API.

APP_URL=https://example.com

If you want, uncomment following variables to change several information of client.

- # MASTODON_CLIENT_NAME="My Halcyon Fork"
- # MASTODON_WEBSITE=https://example.com/about/
+ MASTODON_CLIENT_NAME="My Halcyon Fork"
+ MASTODON_WEBSITE=https://example.com/about/

Then, modify docker-compose.yml to uncomment following lines. It makes database persistence.

db:
  restart: always
  image: postgres:10.1-alpine
-  # volumes:
-  #   - ./postgres:/var/lib/postgresql/data
+  volumes:
+    - ./postgres:/var/lib/postgresql/data

redis:
  restart: always
  image: redis:4.0.2-alpine
-  # volumes:
-  #   - ./redis:/data
+  volumes:
+    - ./redis:/data

Then initialize the database, install dependencies and compile assets.

docker-compose run --rm web ash -c "composer install --no-progress \
 && php artisan key:generate \
 && php artisan migrate \
 && yarn install --pure-lockfile \
 && npm run prod"

Finally, run containers. By default, container exposes its web server in localhost:2800 so you need to proxy a port in your host to the container.

docker-compose up
Stop application
docker-compose down

Development

Move onto the web container

docker-compose exec web ash

Change NODE_ENV to development and then install dependence packages for development.

cd /halcyon
export NODE_ENV="development"
yarn --pure-lockfile

After modifying codes, you can build them with:

npm run dev

# Build automatically if updated files
npm run watch

Donations

Thanks for supporting Halcyon in Patreon!

How to support development?
  • Become a patron via Patreon.
  • Donate to Bitcoin address: 3AucsLDnY37qipYngLM5KH9heWkJ1AEArv.
  • Create Pull Requests/Issues in this repository.

Tag summary

Content type

Image

Digest

Size

137.7 MB

Last updated

over 8 years ago

docker pull neetshin/halcyon