TEAM MAKER > Jonathan Kung
Saved
Click canvas to place · click box to edit

Import Members

OR
CSV files only (.csv)
Total Loaded: 0

Random Picker

Ready
Members Remaining: 0

Member Roster

Empty
👥

No teams yet

Tap "Generate" to get started

100%

Seating Plan

Tools

Right-click any seat for more options

Constraints 0
    Staging Area 0
    No members yet
    100%
    Preview:

    Export Layout

    Clean, light-mode layout for sharing and printing.

    100%
    Generating preview...

    Team Maker

    Quickly make random teams, manage rosters, and design seating arrangements — great for teachers, coaches, and event planners. Teams work on desktop and mobile. Seating is desktop only.

    1. Build Your Roster

    Go to the Roster tab. Paste a list of names (one per line) or upload a .csv file, then click Load List. Click a name chip to edit it, click × to remove someone, or use Clear All to start fresh.

    Advanced options

    The tool automatically strips quotes, converts "Last, First" to "First Last", and skips duplicates.

    Random Picker: Randomly calls on someone from your roster. Tick Remove member from pool after selection so nobody is picked twice. Use Reset Pool to refill without re-importing names.

    To reload a saved backup directly here, click Load Backup (.json) in the top-right of the Import Members panel.

    2. Generate & Edit Teams

    Go to the Teams tab. Choose Members per Team or Number of Teams, set the size, then click Generate Teams. On desktop, drag member chips between team cards to reassign them. On mobile, tap a name to move them to a different team.

    Use Constraints to lock two people together on the same team, or force them apart. These same constraints also apply when auto-assigning seats.

    Press the Projector Mode button to display teams fullscreen on a projector or TV. Teams are automatically centred and zoomed to fill the screen. In this mode the view is read-only — cards and name chips cannot be edited. Pan by dragging or using the ←↑↓→ arrow keys. The zoom controls remain available in the bottom-right corner; the fit button re-centres everything if you've panned away. Press Esc or the Exit button in the zoom controls to return.

    Advanced options

    The constraint algorithm tries up to 500 random arrangements to satisfy every rule. Adding a "Together" constraint for a pair already set as "Apart" (or vice versa) will be blocked automatically.

    The Staging Area (bottom of the sidebar on desktop) holds members who haven't been placed on a team. Drag chips from Staging onto any team card to add them.

    Use the Text Box button (beside Projector Mode) to add free-floating labels or notes on the canvas. Click a text box to select it, then use the floating toolbar to change font, size, bold, italic, or underline. Press Delete or Backspace while selected to remove it.

    Zoom: Use the / + widget (bottom-right), Ctrl+scroll, or pinch. Click the percentage label to reset to 100%.

    On mobile: Tap the Settings icon to choose team method and size. Tap Rules to set constraints.

    3. Create a Seating Plan (desktop only)

    Go to the Seating tab to draw a room layout and place people in seats.

    Draw seats: Select Square or Circle from the toolbar and click to place a single seat, or click and drag to paint a whole row at once. Use Label □/○ to place a named shape like "Teacher's Desk" that won't be assigned to anyone.

    Assign seats: Press Load Roster to bring your members into the sidebar, then press Assign Seats to auto-assign everyone. Drag name chips between seats to adjust manually. Click × on a chip to return that person to the sidebar.

    Save layouts: Click the save icon next to "Seating Plan" to save and load named layouts — handy if you have multiple classes or event rooms.

    Projector mode: Press the projector button to display the seating plan fullscreen. The layout is automatically centred and zoomed to fill the screen, and the view is read-only — seats and name chips cannot be edited or moved. Pan by dragging or using the ←↑↓→ arrow keys. Use the rotate button to spin the view so your audience can read the map from their side of the room — the view re-centres automatically after each rotation. The fit button in the bottom-right controls re-centres everything if you've panned away. Rotation is temporary and resets when you exit — it never affects your saved layout. Press Esc or the Exit button to return.

    Keyboard shortcuts & advanced options
    V Select / Move / Resize / Rotate
    S Square seat
    C Circle seat
    U Label square (e.g. "Teacher's Desk")
    O Label circle
    T Text Box (free-floating label)
    D Delete tool (click seats to erase)
    Del / ⌫ Delete selected seat or text box
    Ctrl+Z Undo
    Ctrl+Y Redo
    ←↑↓→ Move selected object(s) — snaps to grid when Snap is on, 1 px at a time when off. Hold to move continuously.
    Alt / ⌥ Hold to temporarily disable snapping while moving, resizing, or rotating
    Shift Hold to temporarily enable snapping while moving, resizing, or rotating — also constrains rotation to 90° steps

    Resize & rotate individual seats: Use the Select tool (V) to click a seat and reveal corner resize handles and a top rotation handle. Rotating a seat this way is permanent and saved with your layout.

    You can also rotate the entire plan using the rotate button in the bottom-right corner next to the zoom controls. This rotates everything on the canvas and is saved with your layout.

    Rotating the whole plan in projector mode is different — it only rotates the view on screen and automatically re-centres and re-fits the layout so everything fills the screen perfectly after each turn. It resets when you exit projector mode and never affects your saved layout.

    Split into sections: Right-click any seat for a context menu including Split into seats, which divides one large table into multiple named sections. Rectangular tables spread names side by side; circular tables arrange them around the perimeter. After splitting, drag name chips freely within the table.

    Snap, zoom & fit: Toggle Snap On to keep seats aligned to the grid. Use the / + widget (bottom-right) or Ctrl+scroll to zoom. Click the fit button beside the zoom controls to instantly re-centre and zoom to show all objects — works in both normal editing and projector mode after panning away. You can override the snap toggle on the fly: hold Alt / ⌥ to temporarily disable snapping, or hold Shift to temporarily enable it. When snapping is active, rotating any object is also constrained to 90° increments.

    4. Export

    Go to the Export tab for a clean, light-mode preview ready for printing or sharing. On desktop you can toggle between Teams and Seating views.

    • Save JPG — exports a high-resolution image.
    • Save PDF — great for printing.
    • Save Backup — downloads your data as a .json file you can restore later.

    5. Files & Auto-Save

    Everything saves automatically as you work — no save button needed. Click Files in the header to manage multiple files — useful if you have multiple classes, teams, or events. Each file has its own roster, teams, and seating layout.

    ⚠️ Important: Data is stored in your browser only — it is not backed up to the cloud and will be lost if you clear your browser or switch devices. Use Save Backup on the Export tab regularly, and keep the .json file somewhere safe.

    ☕ Support My Work

    I am a full-time high school teacher and I build tools like this in my free time. If Team Maker saves you even a few minutes, I'd really appreciate a coffee — it keeps me motivated to keep improving it!

    ☕ Buy me a coffee on Ko-fi

    Files

    Each file holds a roster and its team arrangements

    Clear Seating

    What would you like to clear?

    Constraints

    0

    Add Constraint

    Together — placed on the same team / adjacent seats Apart — different teams / opposite sides

    Seating Arrangements

    Save Current Arrangement

    Import Arrangement

    Saved Arrangements