Skip to content
Yet another open source forum written in Golang, React and PostgreSQL.
Go JavaScript CSS TSQL HTML Shell Makefile
Branch: master
Clone or download
Latest commit 410f760 Nov 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
app Delete topic Nov 10, 2019
cmd/satellity Fix config Oct 5, 2019
deploy Fix README Oct 23, 2019
internal Delete old sessions Nov 17, 2019
screenshots Fix screenshot Oct 7, 2019
.gitignore Fix gitignore Oct 22, 2019
LICENSE Init satellity Sep 29, 2019
Makefile Init satellity Sep 29, 2019 Fix typo Oct 31, 2019 Init satellity Sep 29, 2019
go.mod Update go modules Nov 9, 2019
go.sum Update go modules Nov 9, 2019


Satellity is a 100% open source forum, written in Go. Please visit for more details. For feedback, you can submit issues or join our slack(, Let's learn Go together!


Satellity is a still a PRE-ALPHA version. Please don't use it in production!!


  1. REST API back-end written in Golang
  2. React-based frontend
  3. PostgreSQL, one of the best open source, flexible database
  4. Social login (OAuth 2.0) only support Github now
  5. JSON Web Tokens (JWT) are used for user authentication in the API
  6. Markdown supported topic and comment
  7. Model tested

Built With

  1. Go version go1.13.3 darwin/amd64
  2. postgres (PostgreSQL) 11.4
  3. react ^16.10.2


  1. ./ is back-end service, we followed golang-standards project-layout.
  2. ./app is front-end service, contains React, Parcel and etc.
  3. ./deploy contains example of deploy, nginx and systemd.



Getting Started


  1. cd ./internal, copy config/config.example to config/config.yaml. Replace config with yours.
  2. Prepare and start database, the database schema under ./internal/models/schema.sql, how to install postgresql.
  3. cd ./ && make install && make build && ./bin/satellity to start Golang server


  1. Copy env.example to .env, and replace Satellity with your project name.

    SITE_NAME=your site name
  2. run yarn install, then yarn start. It's running now.


When contributing to this repository, please reach out to @jadeydi or other contributors via email, issue or any other means to discuss the changes you wish to make.

You can also just clone the repository, create a new branch of the feature or issue and make adequate changes then push and create a pull-request and request a review from other contributors.


If this project is helpful, you can also consider a small amount of donations.

  1. Paypal
  2. BTC Address: 1JXjQJ4tK7fsKf1biCisD4yKdm5PbWXkoD
  3. ETH (or other erc20 token) Address: 0xAE9EA2D22E49B4c845Bbe57B57aB7172e548cE0B


You can’t perform that action at this time.