Skip to content
senuka-b/portfolio
work/discodechecked out

7d7dbdc·6 commits·merged·2025

Discode

A no-code, node-based editor for building Discord bots — drag nodes, wire the logic, ship the bot.

Role
Author
Stack
TypeScriptReactReactflowElectronPythonFlask
Links
RepositoryLive
~60% fasterWorkflow creation

The idea

Building a Discord bot means writing the same event-handling boilerplate every time, then re-deriving the control flow in your head whenever you come back to it. I wanted the flow to be the artifact - something you can see and rearrange, not reconstruct.

So Discode is a visual, node-based editor: you drag nodes onto a canvas, wire them into an interaction flow, and it becomes a working bot. No writing the plumbing by hand.

flowchart LR
  Event[Discord event] --> Canvas[Visual node canvas]
  Canvas --> Parser[Graph parser]
  Parser --> Code[Generated Python bot]
  Code --> Runtime[Discord runtime]

What I built

A cross-platform desktop app - a React and Reactflow frontend packaged with Electron - talking to a Python backend over local Flask APIs.

The core is a node-to-code parser: it walks the graph you built and emits runnable Python against the Discord API wrapper. The graph is the source of truth; the code is generated from it.

What it changed

For the flows I build most, it took bot creation from "write and debug the boilerplate" to "wire a few nodes" - roughly sixty percent faster to something that runs.