GoDiscourse is a 100% open source, discourse-like forum written in Go. For demo, please visit https://live.godiscourse.com/. For feedback, you can submit issues or join our slack(https://bit.ly/2IV6LCW), Let's learn Go together!
- Go version go1.11.4 darwin/amd64
- postgres (PostgreSQL) 11.1
- react ^16.7.0
- REST API back-end written in Golang
- React-based frontend
- PostgreSQL, one of the best open source, flexible database
- Social login (OAuth 2.0) only support Github now
- JSON Web Tokens (JWT) are used for user authentication in the API
- Markdown supported topic and comment
- Model tested
./api
is back-end service, which is Rails like structure../web
is front-end service, contains React, Parcel and etc../deploy
contains example of deploy, nginx and systemd.
cd ./api
, copyconfig/test.cfg
toconfig/config.go
. Replace config with yours.- Prepare and start database, the database schema under
./api/models/schema.sql
, how to install postgresql. cd ./web
and runnpm install
to prepare front-end.cd path/to/api && go build && ./api
to start Golang servercd path/to/web && npm run dev
to run front-end, and openhttp://localhost:1234