arimelody.me/README.md

2 KiB

arimelody.me

home to your local SPACEGIRL! 💫


built up from the initial static branch, this powerful, server-side rendered version comes complete with live updates, powered by a new database and handy admin panel!

the admin panel currently facilitates live updating of my music discography, though i plan to expand it towards art portfolio and blog posts in the future. if all goes well, i'd like to later separate these components into their own library for others to use in their own sites. exciting stuff!

build

  • git clone this repo, and cd into it.
  • go build -o arimelody-web .

running

the server should be run once to generate a default config.toml file. configure as needed. a valid DB connection is required to run this website. if no admin users exist, an invite code will be provided. invite codes are the only way to create admin accounts at this time.

the configuration may be overridden using environment variables in the format ARIMELODY_<SECTION_NAME>_<KEY_NAME>. for example, db.host in the config may be overridden with ARIMELODY_DB_HOST.

the location of the configuration file can also be overridden with ARIMELODY_CONFIG.

command arguments

by default, arimelody-web will spin up a web server as usual. instead, arguments may be supplied to run administrative actions. the web server doesn't need to be up for this, making this ideal for some offline maintenance.

  • createTOTP <username> <name>: Creates a timed one-time passcode method.
  • listTOTP <username>: Lists an account's TOTP methods.
  • deleteTOTP <username> <name>: Deletes an account's TOTP method.
  • testTOTP <username> <name>: Generates the code for an account's TOTP method.
  • cleanTOTP: Cleans up unconfirmed (dangling) TOTP methods.
  • createInvite: Creates an invite code to register new accounts.
  • purgeInvites: Deletes all available invite codes.
  • listAccounts: Lists all active accounts.
  • deleteAccount <username>: Deletes an account with a given username.