home to your local SPACEGIRL 💫 https://arimelody.space
Find a file
2025-07-19 00:01:01 +01:00
admin refactor: move music admin to /admin/music; keep /admin generic 2025-07-15 16:41:34 +01:00
api fix indentation (tabs to 4 spaces) (oops) 2025-04-29 23:25:32 +01:00
colour MORE REFACTORING!! + some improvements 2024-08-31 01:52:35 +01:00
controller admin home: display latest release, not first (oops) 2025-07-19 00:01:01 +01:00
cursor fix indentation (tabs to 4 spaces) (oops) 2025-04-29 23:25:32 +01:00
discord fix indentation (tabs to 4 spaces) (oops) 2025-04-29 23:25:32 +01:00
log fix indentation (tabs to 4 spaces) (oops) 2025-04-29 23:25:32 +01:00
model blog visitor frontend (pretty much) done! 2025-06-24 01:32:30 +01:00
public Merge branch 'dev' into feature/blog 2025-07-18 23:47:41 +01:00
res full release edit capabilities oh my goodness gracious 2024-08-31 01:52:40 +01:00
schema-migration blog visitor frontend (pretty much) done! 2025-06-24 01:32:30 +01:00
templates blog visitor frontend (pretty much) done! 2025-06-24 01:32:30 +01:00
view blog: reading mode fixes, add highight.js for codeblocks 2025-07-05 15:11:51 +01:00
.air.toml migrate from envars to toml config 2024-11-10 05:34:04 +00:00
.dockerignore merged main, dev, and i guess got accounts working?? 2025-01-20 15:08:01 +00:00
.editorconfig and she never dealt with indentation issues ever again 2025-04-29 23:42:08 +01:00
.gitattributes updated schema to support album tracks 2024-08-31 01:52:27 +01:00
.gitignore random scripts are silly. MAKEFILES are where it's at 2025-03-14 20:47:58 +00:00
docker-compose.example.yml update docker compose example 2024-11-10 05:58:05 +00:00
Dockerfile this is immensely broken but i swear i'll fix it later 2025-01-20 10:34:49 +00:00
go.mod basic blog page! 2025-04-02 23:04:09 +01:00
go.sum basic blog page! 2025-04-02 23:04:09 +01:00
LICENSE.md add license (MIT) 2025-01-27 18:30:50 +00:00
main.go Merge branch 'dev' into feature/blog 2025-07-18 23:47:41 +01:00
Makefile and the goddess spoke: don't make this silly mistake again 2025-03-14 20:55:09 +00:00
README.md update cli utility docs 2025-04-29 23:22:48 +01:00

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.
  • lockAccount <username>: Locks the account under username.
  • unlockAccount <username>: Unlocks the account under username.
  • logs: Shows system logs.