pfp

What's your main focus?

Rust and Docker

Where can we find your videos?

YouTube channel

Any recent Rust tutorials?

Rust VS Go differences

What's your favorite Rust feature?

Ownership system

How do you deploy Next.js with Docker?

Comprehensive guide

What's your subscriber goal?

Reaching 100k

What's your GitHub profile?

FrancescoXX

What's your recent Rust CRUD Rest API tutorial about?

Creating a CRUD Rest API in Rust using Postgres and Docker

Where can we find your articles?

DEV Community

What's your full-stack app tech stack?

Rust, Next.js, Postgres, Docker, and Docker Compose

How do you balance content creation and coding?

Working hard to reach 100k subscribers

What's your opinion on deploying Next.js with Docker?

Providing valuable insights and explanations

I'm trying to do a weekly version of SHIPPED, basically me shipping something, small or big, every week. In this version of SHIPPED, I made a discord bot that kinda helps me get more organised and the startup I work in, more productive.

The problem

Working in startups and small teams on discord, I often found myself in the situation where I had to take notes during a meeting. So, why not use an AI note taker? This is possible on google meet and other services using otter.ai, fireflies.ai and other services. But there's nothing for discord.

Plus, all these services are paid and costly. This is a free and open source alternative.

Notes

  • When talking in the voice channel, some people are together in real life and talk through one user only. Bot should be able to detect that.
  • Bot should be able to summarise the meeting and send it to the channel as a properly formatted transcript
  • Bot should give punctuated, grammatically correct sentences
  • Bot should be able to assign tasks to multiple users by knowing their discord user ID

The solution

I made a simple discord bot using DeepgramPycord and Anyscale. The bot listens to the voice channel and transcribes the audio in real time. It then sends the transcript to the channel and also saves it in a database. The transcript is then summarised using anyscale's mistral endpoints, using functions calling (anyscale has support for that) and then sent to the channel.

The code

The code is open source and available on GitHub. Feel free to contribute to it.