Skip to content

Repository files navigation

Grouplo · 群一把

凭群属性,弗一把!Guess the hidden finite group by its properties.

A group-theoretic take on the "Guess Who" / Wordle formula — select a difficulty level, make guesses, and get color-coded feedback on 6-12 group invariants to identify the mystery group.


Features

  • 125 finite groups spanning orders 1-7920: every group of order ≤30, plus selected larger groups including symmetric/alternating, dihedral, dicyclic, Frobenius, quaternion, semidihedral, linear (SL/GL/PGL/PSL), unitary, Heisenberg, hyperoctahedral, and Mathieu groups
  • 3 difficulty levels (6 modes) with increasing attribute sets (6 / 10 / 12 invariants) and time limits (90s / 3min / 5min), plus three L3 variants (L3.2 no-size-hint, L3.5 order hidden, L3.7 masked Sylow)
  • Guess limits — L1: 6, L2: 7, L3+: 8
  • Daily Challenge — one mystery group per day (seeded by date), 10 guesses, no time limit, Wordle-style matrix share
  • Bilingual (中文 / English) — language switcher with instant re-render of history and share texts
  • Weighted random sampling — rarer groups appear more often than cyclic groups
  • Attribute legend on welcome page and in-game, with description dropdowns for each invariant
  • HELP button in-game showing input syntax rules (x/× for direct product, :/ for semidirect, {a,b|...} for presentation)
  • Share — markdown text and image export (with color legend) for normal and daily games
  • Dark & light themes
  • Responsive — horizontal scrolling card layout on mobile
  • Auto-suggest search with aliases, reversed-order matching, presentation notation, and product symbols

Properties Used

Level Attributes Guesses Time
L1 简单 Order · Abelian · Nilpotent · Simple · Conjugacy classes · Structure 6 90s
L2 中等 + Center order · Exponent · Rank · Involution count 7 3min
L3 困难 + Sylow type · Min nonlinear degree 8 5min
L3.2 困难·无阶数提示 同 L3(12 项),但阶数反馈仅显示是否匹配,无大小提示(↑/↓) 8 5min
L3.5 困难·隐藏阶数 L3 去掉 Order 属性(11 项,完全看不到阶数) 8 5min
L3.7 困难·隐蔽Sylow 同 L3.5,且 Sylow 型不显示正确个数,未猜到的素因子显示为 ?:? 8 5min

The L3 level offers three harder variants (toggle with /+ on the start screen): L3.2 keeps all 12 invariants but removes the size direction hint on order feedback, L3.5 hides the order attribute entirely, and L3.7 additionally masks the Sylow type counts.

Difficulty pools:

  • L1 (20 groups): cyclic groups C1-C12, D4-D6, V4, Q8, S3, A4, C2³
  • L2 (50 groups): L1 + cyclic groups C13-C20, non-abelian groups ≤20, 16-order p-groups
  • L3 / L3.2 / L3.5 / L3.7 (125 groups): all groups ≤30 + larger simple, linear, Frobenius and p-groups (SL(2,5/7/9), GL(2,3/4/5), PGL(2,7), S6, M10, PSU(3,2), AGL, F56/F110/F240/F42/F57, 32-order D16/Q32/SD32/M32, Heisenberg UT(3,p), hyperoctahedral B4)

Daily Challenge

  • One mystery group per day, picked deterministically from all 125 groups via a date-seeded hash (the same for every player on a given day)
  • 10 guesses, no time limit
  • Progress persists in localStorage and carries across the day; a new puzzle resets the next day
  • Share a Wordle-style color matrix (🟩🟨⬜) when playing, won, or lost

Quick Start

npm install
npm run dev      # http://localhost:5173
npm run build    # production build → dist/
npm run preview  # preview production build

Tech Stack


Game Rules

  1. Pick a difficulty level on the start screen (double-click to begin), or jump into the Daily Challenge.
  2. Type a group name (e.g. A5, C3xC6, C3:C2, {a,b|a^3=b^2=1}) and press Enter.
  3. Each guess returns a color-coded attribute grid:
    • green — exact match
    • yellow — close (numeric hint ↑↓)
    • red — mismatch
  4. Find the group before time or attempts run out.

License

MIT

About

a game simliar to wordle while you guess a group

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages