Inspiration
In the past couple of years, and especially recently, I've noticed an influx of reported cyberbullying and dangerous acts being performed on Discord. Not only do I use this app, but my cousin also meets many people online through games and primarily uses Discord for contact. I feel that an extension like this might make it safer for everyone using the app.
What it does
Users can report messages to be reviewed to give others trustworthiness scores.
How I built it
It takes input from the user, which is verified through connecting the Discord account using OAuth. Users are limited to a single report from one specific person to another, and reports are limited to sent DM's, preventing abuse of reports. The extension requests a category, context, and the contents of the message, and hands it over to Node, which is hosted on Railway. Node verifies identity, prevents manipulation of data, and calls Gemini to calculate values based on the user input. The data can and is meant to be stored in Supabase, but for testing purposes, was stored in Node. Node will hand all the information back to the front end, where users will see a detailed report and have the option to appeal, which can all be viewed and managed on another website hosted by Railway.
Challenges I ran into
I had most of my trouble with the creation of the Chrome extension. A key is required to identify the extension, but it is a semi-secret code that can't be published; therefore, if I don't include the key, it will remain protected, but will not function properly. Additionally, I tried publishing to fix this problem, but quickly realized that it required a couple of days for review, time I didn't have.
Accomplishments that I'm proud of
Every other part of the project went very well. The thing I found the most exciting and felt most proud about was getting the Gemini API to successfully judge all of my tests.
What I learned
This was my first time creating a Chrome extension, and I learned a lot about how Chrome deals with data. Additionally, I learned about how Discord processes its IDs.
What's next for TrustDesk
I plan to get the extension reviewed, properly store my data on Supabase, expand to other platforms, specifically, Instagram, and eventually, a plugin for the desktop version of Discord.
Built With
- css
- gemini
- html
- javascript
- node.js
- railway
- sql
- supabase
- typescript
Log in or sign up for Devpost to join the conversation.