A multi-faceted role management bot for the Dojo Discord.
Community-driven reputation through :dojo: reactions. Progression: Kōhai → Senpai → Sensei based on peer recognition.
Wallet-linked roles based on Starknet state (NFT ownership, token holdings, etc.).
Automated Discord-to-Twitter content generation. Weekly scans identify developer stories and generate Twitter thread drafts with AI-generated images, sent to Typefully for review.
The bot uses GitHub Actions for CI and Railway for deployment.
Pushes to main automatically deploy after CI passes.
-
Create Railway Project
- Go to railway.app and sign in with GitHub
- Click "New Project" → "Deploy from GitHub repo"
- Select the
daimyorepository
-
Add PostgreSQL Database
- In Railway, click "New" → "Database" → "Add PostgreSQL"
- Railway will automatically set
DATABASE_URLfor your service
-
Set Environment Variables
- In Railway, go to your service → Variables
- Add environment variables (see
backend/.env.examplefor reference):
-
GitHub Branch Protection
- Go to GitHub repo → Settings → Branches
- Add rule for
mainbranch - Enable "Require status checks to pass before merging"
- Select the
cicheck
To run commands in the Railway environment, use
railway run --filter backend <command>
See here for more information about installing the Railway shell locally.