Skip to content

shady-town

Living-room social-deduction party game where Jev reads game state each round to drive per-player suspicion meters and bluff signals.

Projectprototype

Overview

Shady Town is an original social-deduction party game in the Mafia/Werewolf style, played by 6-10 people with phones and a TV. Everyone plays and no human moderates: the TV runs setup, night actions (troublemakers, doctor and detective tap on their phones), announcements, discussion and voting. During the day players post claims, votes and reactions, and the TV shows a live suspicion meter next to each player from Clear to Busted, plus room-mood signals such as 'someone's probably bluffing' and 'you're going in circles', and an end-of-game recap.

The moderation is one fast structured Jev judgment per round: game state in, per-player suspicion levels (Clear, Shady, Busted) and bluff and stall signals out, through the ruby_llm-typesafe gem with jev-latest. Decisions and thresholds stay in code. It is a family-friendly showcase of a decision model as an impartial referee.

What the decision model decides

TypeQuestionAnswers
ScoreHow suspicious is this player: Clear, Shady or Busted?Clear · Shady · Busted
Yes / noIs someone probably bluffing (contradicting stories)?—
Yes / noIs the group going in circles with no new information?—

How it works

  1. Collect claims, votes and reactions from phones
  2. Send round state to Jev in one request
  3. Update suspicion meters and room signals on the TV
  4. Code applies thresholds and nudges the group to vote

Strengths

  • No player has to sit out as moderator
  • One fast judgment per round
  • Thresholds kept in code

Caveats

  • Party game demo
  • Needs a TypeSafe key

Getting started

Set TYPESAFE_API_KEY and run the Ruby app per the README.

At a glance

Type
Project
Status
prototype
Language
Ruby
Runtime
Web app (TV + phones)
Has code
yes

Use cases and integrations

How curated lists describe it

  • Shady Town: social-deduction party game for the living room TV, moderated by TypeSafe Jev.

    hellogumbo/awesome-jev

Frequently asked questions

What does Jev decide in Shady Town?

Each player's suspicion level and whether the room shows bluffing or circular arguing.

Is there a human moderator?

No; the TV and Jev handle moderation.

Which library does it use?

ruby_llm-typesafe with jev-latest.

Related projects

  • Source for browser chess and Chess960 where code computes each legal move's facts and Jev picks one per turn as a typed Choice.

    ProjectproductionTypeScript
  • Browser 1v1 sniper arena where Jev reads match state about 9 times a second and chooses movement, aim, ADS, firing and jumping.

    ServicebetaTypeScript
  • Instrumented 2048 web lab where every move is a Jev Choice over four directions, with probabilities, latency and cost shown live.

    ProjectbetaTypeScript
  • Fifteen live arcade games where Jev and LLMs play each other, led by WikiRace in which Jev picks only real links.

    ProjectbetaTypeScript
  • Real-time bot battles where you write a fighter's strategy in plain English and a System One model pilots it several times a second.

    ProjectbetaTypeScript
  • Browser extension that lets Jev, local Laya or an OpenAI-compatible model take over a running ra2web (WannaFire) RTS match.

    ProjectbetaTypeScript