* 🐸restructure frontend stuff, include admin and future user panel in main repo, properly deduplicate bundles for css+js across uses
* rename bundled to dist, caught by gitignore
* re-include status.css for profile template
* default to localhost
* serve frontend panels
* add todo message for abstraction
* refactor oauth registration flow
* oauth restructure
* update footer template
* change panel routes
* remove superfluous css imports
* write bundle to disk from test server, use forked budo-express
* wrap all page content in container
for robustness with addons etc injection other elements in body
* update documentation, goreleaser, Dockerfile
* update template meta tags
* add AGPL-3.0+ license header everywhere
* only attach update listener on EventEmitter
* cleaner config for various frontend bundles
* fix bundler script paths
* Merge commit 'd191931932b9293ce1be44ed08a1e69b9fcc1e25'
* fix up dockerfile, goreleaser
* go mod tidy
* add uglifyify
* move status hide/show js to frontend bundle
* fix stylesheet color( func regressions
* update contributing docs for new build path
* update goreleaser + docker building
* resolve dependency paths properly
* update package name
* use api errorhandler
Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
1.4 KiB
Admin Control Panel
The GoToSocial admin panel is a simple webclient that uses the admin api routes to manage your instance. It uses the same OAUTH mechanism as normal clients (with scope: admin), and as such can be hosted anywhere, separately from your instance, or run locally. A public installation is available here: https://gts.superseriousbusiness.org/admin.
Using the panel
To use the Admin API your account has to be promoted as such:
./gotosocial --config-path ./config.yaml admin account promote --username YOUR_USERNAME
After this, you can enter your instance domain in the login field (auto-filled if you run GoToSocial on the same domain), and login like you would with any other client.
Screenshot of the GoToSocial admin panel, showing the fields to change an instance's settings
You can change the instance's settings like the title and descriptions, and add/remove/change domain blocks including a bulk import/export.
Building the panel
Build requirements: some version of Node.js and yarn.
yarn install --cwd web/source
BUDO_BUILD=1 node web/source
See also: Contributing.md Stylesheet / Web dev