Maralto Studios

← All work

CASE 01

Central dos Players

Valorant community bot: onboarding with a rendered card, social feed, VIP spaces and a design panel. Staff stepped out of the middle.

Year
2026
Role
End-to-end development
Type
Client
Stack
Python · PostgreSQL

1000×560 · rendered card — Client project. Private source; publication authorised by contract.

Context

A Valorant community taking hundreds of new members every week. Each one had to go through staff to get a role, an introduction and a welcome.

Content lived scattered across channels: posts without likes, threads without an owner, announcements lost in chat.

Staff needed tools, not more commands to memorise.

My role

  • Built the full onboarding flow: form, introduction card rendered at 1000×560, automatic publication to the feed.

  • Implemented the social feed with likes, threads and ordering.

  • Created VIP spaces with role, private voice channel and expiry cycle.

  • Built the design panel and the per-command permission system — 16 routable commands.

  • Modelled the database in PostgreSQL and the rendering in Pillow, with a Components V2 interface.

Technical decisions

  • A rendered image card, not an embed

    Embeds cap layout and render differently per client. Rendering at 1000×560 gave the server a visual identity and became the card members carry elsewhere.

  • Permission per command, not a global role

    Staff roles are heterogeneous. Tying permission to a single role would force artificial roles to exist; per command, each person gets only what they use.

  • PostgreSQL with a connection pool from day one

    Onboarding spikes concentrate hundreds of writes in minutes. Pool and indexes avoid the queue a local file would create.

  • Design in the panel, not in code

    Colours, copy and images live in their own panel. Changing the server's look stopped requiring a ticket and started fitting inside staff time.

Outcome

  • Manual onboarding no longer exists: a member joins, fills the form, shows up in the feed.

  • 30 content agents and 16 routable commands in operation.

  • Client project: private source, published with contractual authorisation and sanitised screenshots.

Stack

  • Python
  • PostgreSQL
  • Pillow
  • Components V2

Gallery

Next case

02 · CombatForge →