This bot was built using a few really cool tools:
- 🥟 Bun.js
- 🟦 Typescript
- 🤖 Discord.js
- 🔼 Prisma ORM
- 🐘 PostgreSQL DB
This bot is currently in a beta-ish state. Once a correctly structured command is detected, the bot triggers specific actions to handle each task by using Prisma to interact with a PostgreSQL database.
🚩 Command Flags
$ - Amount of money (goal and transfer amounts)
> - In (creating an item in parent)
>> - To (item receiving transfer)
~ - New (renaming)
-- - Note (description for record)
🟢 Create Bucket
!bucket create bucketName
🔴 Delete Bucket
!bucket delete bucketName
🔭 Show Bucket Details
!bucket get bucketName
🔠 Rename Bucket
!bucket rename bucketName ~newBucketName
✅ Create Split
!split create splitName $goal >bucketName
🚮 Delete Split
!split delete splitName
🔭 Show Split Details
!split get splitName
🔠 Rename Split
!split rename splitName ~newSplitName
🎯 Change Split Goal
!split goal splitName $newGoalAmount
🟢 Create Income
!record add $amount >splitName --note
🔴 Create Expense
!record remove $amount >splitName --note
🔀 Transfer Between Splits
!record transfer $amount >splitName >>newSplitName --note
Although most base functions of the bot are completed. I'll be working on more quality-of-life features like:
- Reminders/alerts through scheduled and stat-based pings in the server
- More involved tracking and statistics
- Better text-based feedback and visual feedback like graph and chart images
- Webapp to synchronize with the bot
- Anything else that comes up
A react-based webapp is currently being worked on to connect with the bot and your database. Which will provide charts, tracking, and other responsible grown-up things. This will allow synchronicity and flexibility across the desktop and mobile browsers and chatting with the bot on discord.