The source code of the main nonshy.com website.
https://www.nonshy.com
Noah
dd1e6c2918
* Initial codebase (lot of work!) * Uses vanilla Go net/http and implements by hand: session cookies backed by Redis; log in/out; CSRF protection; email verification flow; initial database models (User table) |
||
---|---|---|
cmd/gosocial | ||
pkg | ||
web | ||
.gitignore | ||
go.mod | ||
go.sum | ||
Makefile | ||
README.md |
gosocial
Building
Use the Makefile:
make setup
: install Go dependenciesmake build
: builds the program to ./gosocialmake run
: run the app from Go sources in debug mode
Configuring
On first run it will generate a settings.json
file in the current
working directory (which is intended to be the root of the git clone,
with the ./web folder). Edit it to configure mail settings or choose
a database.
For simple local development, just set "UseSQLite": true
and the
app will run with a SQLite database.
Usage
The gosocial
binary has sub-commands to either run the web server
or perform maintenance tasks such as creating admin user accounts.
Run gosocial --help
for its documentation.
Run gosocial web
to start the web server.
Create Admin User Accounts
Use the gosocial user add
command like so:
$ gosocial user add --admin \
--email name@domain.com \
--password secret \
--username admin
Shorthand options -e
, -p
and -u
can work in place of the longer
options --email
, --password
and --username
respectively.
License
GPLv2.