Being built · an early prototype

Every chore, one launcher.

Restoring last night's data or editing a secret is a command you look up every time. dxthing is one launcher that fits whichever project you are in.

How it works Built by Rytter

devtools · shop · phoenix · .env loaded
────────────────────────────────────────────────────────────────────────
Data sync ▸ pull_latest_backup Download newest R2 backup → dumps/latest.sql
restore_db Drop local DB, import latest dump, apply migrations
list_backups List backups stored in R2 bucket
Schema ecto_migrate Run pending Ecto migrations
reset_db Wipe and recreate local Docker dev database
Secrets secrets_edit Edit encrypted secrets for this project
Infrastructure check_env Diff .env against .env.example, flag missing vars
────────────────────────────────────────────────────────────────────────
↑↓ choose · tab category · enter run · q quit

Features

Every chore, by name.

  • Fits the project

    It sees what the project is, loads its .env, and lists the tools that apply.

  • Last night's data

    Pull the newest backup and restore it, migrations applied, with the flags kept in the tool.

  • Secrets made human

    Edit a project's secrets without the key file, and see what .env is missing before the app does.

How it works

A command hub, then a janitor.

  1. 1

    Detect

    Run it anywhere and it reads the project, so the same launcher works in every repository.

  2. 2

    Run

    Each chore is one entry with its flags built in, so nothing has to be remembered.

  3. 3

    Init

    Next on the roadmap: every project gets the same layout, so the tools find the same things everywhere.

Who built it

Built by Rytter.

I'm Jakob Rytter. I build software and run it, from the server to the screen, and dxthing is where my project chores live.

rytter.it All the things