Skip to content

YudoTLE/VelonY

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VelonY

Next.js Fastify Supabase ShadCN UI MIT License

Build, share, and chat with custom AI agents

VelonY is an extensible chatbot platform supporting both private and group conversations with multiple agents. Users can create custom agents/models, explore and subscribe to others' creations, and interact in real-time across desktop and mobile devices. Built with a modern stack—Next.js, Fastify, Supabase, and ShadCN—VelonY offers flexibility and a seamless user experience.

Live Demo

Try it here: https://velony.vercel.app

Features

  • Multi-agent private chats
    Chat with multiple bots in a private convo.

    Private Conversation Screenshot

  • Group conversations with friends + bots
    Invite friends and have bots join the same room.

    Group Conversation Screenshot

  • Build custom agents & models
    Fully customizable agent and model creation.

    Agent Builder Screenshot Model Builder Screenshot

  • Discover community creations
    Browse public agents/models on the explore page.

    Explore Page Screenshot

  • Fully responsive design
    Works seamlessly on desktop, tablet, and mobile devices.

    Mobile Screenshot

Concepts

  • Agent: A persona or identity with its own name, and behavior. Agents are the front-facing interface users interact with.
  • Model: A backend LLM configuration powering an agent's responses. Think of it as an LLM endpoint (like OpenAI, DeepSeek, etc.) with specific settings (e.g., temperature, top_p).

Tech Stack

  • Frontend: Next.js (TypeScript), ShadCN UI
  • Backend: Fastify (JavaScript)
  • Authentication: Google OAuth2 via GCP
  • Database: Supabase
  • Realtime: Pusher or Socket.io
  • Cache (session/auth): Redis
  • Agent avatars: S3-compatible object storage

Agent Avatar Storage

Agent avatar URLs are derived from each agent id, so no avatar URL column is needed. Configure the backend to write avatars to S3, and configure the frontend to read from the matching public base URL:

# backend
S3_BUCKET=your-bucket
S3_REGION=ap-southeast-1
S3_ACCESS_KEY_ID=your-access-key
S3_SECRET_ACCESS_KEY=your-secret-key
S3_AGENT_AVATAR_PREFIX=agents
S3_AGENT_AVATAR_CACHE_CONTROL=public, max-age=300

# frontend
NEXT_PUBLIC_AGENT_AVATAR_BASE_URL=https://your-cdn-or-bucket.example.com/agents

For S3-compatible providers, set S3_ENDPOINT. Set S3_FORCE_PATH_STYLE=true if your provider requires path-style bucket URLs.

Auth Session Lifetime

The backend JWT expiry and frontend cookie lifetime are configurable. Keep them matched unless you intentionally want a different browser storage lifetime.

# backend
JWT_EXPIRES_IN=1d

# frontend
NEXT_PUBLIC_AUTH_COOKIE_MAX_AGE_DAYS=1

Author

Made with sweat and blood by Yudo

License

Licensed under the MIT License

About

Extensible chatbot platform supporting multi-agent and multi-user interactions

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors