Skip to content

Gurkunwar/AsyncFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

95 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– AsyncFlow

AsyncFlow is a modern asynchronous standup and team polling platform built for Discord communities and remote teams.

It combines a Discord bot with a web dashboard, allowing teams to share updates, track engagement, and run polls without needing time-consuming synchronous meetings.

AsyncFlow helps teams stay aligned while keeping communication organized, automated, and frictionless.


✨ Features

πŸ“ Smart Async Standups

  • Custom Standup Workflows -- Define questions like "What did you do yesterday?", "Any blockers?".
  • Timezone-aware Prompts -- The bot sends standup reminders based on each user's timezone.
  • Threaded Daily Reports -- Responses are automatically grouped into clean, date-stamped Discord threads.
  • OOO / Skip Support -- Members can mark themselves as out-of-office or skip a day with one click.

πŸ—³οΈ Interactive Team Polling

  • Create server-wide polls directly from the dashboard.
  • Track participation rates and view real-time vote distribution.
  • End or delete polls early with one click.

πŸ“Š Developer Dashboard

  • Discord OAuth Authentication
  • Team Engagement Analytics
  • CSV Export for Standup & Poll Data
  • Interactive Charts (Recharts)
  • Fully Responsive UI

πŸ—οΈ Architecture

Frontend (React + Vite)
        β”‚
        β–Ό
Backend API (Go + GORM)
        β”‚
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚ PostgreSQL DB β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
        β”‚
        β–Ό
Redis (Caching / Standup State)
        β”‚
        β–Ό
Discord Bot (DiscordGo)

πŸ› οΈ Tech Stack

Frontend

  • React 18
  • Vite
  • TailwindCSS
  • React Router v6
  • Redux Toolkit / RTK Query
  • Recharts
  • @hello-pangea/dnd

Backend

  • Go (Golang)
  • DiscordGo
  • GORM
  • Redis
  • PostgreSQL / MySQL

πŸ“‚ Project Structure

asyncflow
β”‚
β”œβ”€β”€ backend
β”‚   β”œβ”€β”€ cmd/server
β”‚   β”œβ”€β”€ internal
β”‚   β”‚   β”œβ”€β”€ api
β”‚   β”‚   β”œβ”€β”€ bot
β”‚   β”‚   β”œβ”€β”€ database
β”‚   β”‚   β”œβ”€β”€ models
β”‚   β”‚   β”œβ”€β”€ services
β”‚   β”‚   └── store
β”‚   └── config
β”‚
β”œβ”€β”€ frontend
β”‚   β”œβ”€β”€ src
β”‚   β”‚   β”œβ”€β”€ pages
β”‚   β”‚   β”œβ”€β”€ components
β”‚   β”‚   β”œβ”€β”€ features
β”‚   β”‚   └── store
β”‚
└── docs

πŸš€ Getting Started

Prerequisites

Install:

  • Go 1.20+
  • Node 18+
  • Redis
  • PostgreSQL / MySQL
  • Discord Bot Application

Create a bot here: https://discord.com/developers/applications


1️⃣ Clone the Repository

git clone https://github.com/yourusername/asyncflow.git
cd asyncflow

2️⃣ Backend Setup

cd backend
go mod download

Create .env

DISCORD_BOT_TOKEN=
DISCORD_CLIENT_ID=
DISCORD_CLIENT_SECRET=

DB_DSN=
REDIS_ADDR=

JWT_SECRET=
FRONTEND_URL=http://localhost:5173

Run server:

go run cmd/server/main.go

Server will start at:

http://localhost:8080

3️⃣ Frontend Setup

cd frontend
npm install

Create .env

VITE_API_BASE_URL=http://localhost:8080/api
VITE_DISCORD_CLIENT_ID=

Start dev server:

npm run dev

Frontend runs at:

http://localhost:5173

🌐 Deployment

Frontend

Deploy on: - Vercel - Netlify

Backend

Recommended: - Render - Fly.io - Railway

Database

  • Neon
  • Supabase
  • PlanetScale

πŸ“Έ Screenshots

dashboard.png poll-results history


πŸ” Environment Variables

Backend:

Variable Description


DISCORD_BOT_TOKEN Bot token from Discord portal DISCORD_CLIENT_ID OAuth client ID DISCORD_CLIENT_SECRET OAuth secret DB_DSN Database connection string REDIS_ADDR Redis connection JWT_SECRET Secret for JWT authentication

Frontend:

Variable Description


VITE_API_BASE_URL Backend API URL VITE_DISCORD_CLIENT_ID OAuth client ID


🀝 Contributing

Fork the repository
Create a branch
git checkout -b feature/my-feature
Commit changes
git commit -m "Add feature"
Push branch
git push origin feature/my-feature
Open Pull Request

β˜• Support

If AsyncFlow helped you, consider supporting the project.


πŸ“„ License

MIT License


⭐ Star the Repository

If you like this project, please give it a star ⭐

About

Async daily standups and native polls for Discord.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages