1Getting started
You need a presenter account to build and run sessions. Your audience needs nothing — no app, no sign-up.
- Register a presenter account. Open your ClassPulse site and choose Get started. On a brand-new deployment the first person to register becomes the administrator automatically, already verified — so you can sign in immediately.
- Verify your email (everyone after the first). Later sign-ups receive a short code by email and enter it once to activate the account. Lost the email? Use resend verification code on the verification page.
- Sign in. That's it — you land on your dashboard, where sessions live on the left and the one you're editing opens on the right.
2Sessions
A session is a container for your questions and the join code your audience uses. Build it once; reuse it whenever you like.
- Create a session. Click + New session. It starts as “Untitled session” — click the title to rename it. Each session gets a unique 6-character code (letters and numbers) and a matching QR code and join link.
- Add questions. Click + Add question, pick a type, write the prompt, and fill in its options. Reorder questions by dragging; duplicate or delete from each question's menu.
- Activate it. A session is closed to the audience until you Activate it. Activating opens joining and unlocks Present. Deactivate any time to stop new responses.
How the audience joins
Share any of these — all three lead to the same place:
- The QR code (shown in present mode and on the session) — scan and go.
- The join link for the session.
- The 6-character code, typed into the Join a session page.
Participants are anonymous and need no account. Each person gets one response per question; submitting again replaces their previous answer rather than adding a vote.
3Question types
Nine types, mixable within one session. Options are entered one per line unless noted.
Multiple Choice
One answer from a list. The classic poll or comprehension check.
Select All
Like multiple choice, but participants can pick several options at once.
Poll w/ Other
Multiple choice plus a free-text “Other” box for the option you didn't list.
Ranking
The audience drags a set of items into their preferred order. Results show the group's average ranking.
Rating Scale
A star rating for confidence, satisfaction, or agreement. Results show the distribution.
Numeric
Collect a number. Results include the running average.
Short Answer
Free-text responses, shown as a live list.
Word Cloud
Free-text responses that build a word cloud in real time — great for warm-ups and sentiment.
Image Choice
Vote between images — design critiques, “which looks right?”, spot the difference. Results display the images with live tallies.
Label|https://image-url per line. At least two.Emoji Poll
Answer with a single emoji — instant mood checks and reactions. Results grow each glyph with its share of the vote.
Grid / Matrix
Tap one cell of a labelled grid. A 2×2 “Likelihood × Impact” grid is a classic risk matrix; bigger grids work as heatmaps.
Scatter Plot
Drop a point anywhere on a labelled plane — predictions, estimates, “where do you stand?” Results plot every respondent's dot live.
4Presenting live
Present mode is the big-screen view for the room — questions and results, updating as answers land.
From an active session, click Present. You get:
- A full-screen join page (QR code and session code) to open with — press space to flip between it and the results.
- A slim join panel beside the results, so latecomers can still scan while you present.
- One question at a time, with its live chart, word cloud, or image tallies.
- An overview grid of every question — click any card to enlarge it.
- Move between questions with the on-screen ← Prev / Next → buttons or the ← → arrow keys.
Because everything streams over a live connection, you never refresh — bars grow, words appear, and counts tick up while you talk.
5Results & export
Review responses live during the session or afterward, and take the raw data with you.
Reading results
- Choice, select-all, ranking, numeric, poll-with-other render as bar charts (numeric also shows the average; ranking notes that a lower bar means ranked-better).
- Rating shows the spread across the star scale.
- Word cloud and short answer show the text — as a cloud or a list.
- Image choice shows each image with its live vote tally.
- Emoji sizes each glyph by its share of the vote, with counts and percentages.
- Grid / matrix shades the cells as a heatmap — hot cells are where the room clustered.
- Scatter plots every respondent's dot; colour and size carry the extra dimensions if enabled.
Exporting to CSV
Export a whole session or a single question. The file has one row per response with these columns:
response_id, question_id, session_id, response_value, respondent_id, timestamp
Open it in any spreadsheet for grading, analysis, or your records.
6Cohort mode: let the audience ask
Turn on cohort mode and your audience can propose questions and upvote each other's — you stay in control of what actually goes live.
- Enable it on the session. Open the Audience proposals panel and switch it on.
- The audience proposes and votes. Participants see a + Propose a question button and can anonymously suggest questions and upvote the ones they'd most like asked.
- Moderation runs automatically. Every proposal passes a keyword filter first; if an AI provider is configured, an extra check runs too. Anything flagged is hidden from the public list and waits for you.
- You decide. Review proposals from your dashboard — approve, reject, unflag, or merge. Approving a proposal turns it into a live question in your session.
instance/moderation_keywords.txt on the server.
7Accounts & admin
Administrators manage who can present. Most presenters never need this section.
- The first registrant is the admin; there is no built-in default account.
- From Manage Users, an admin can Verify a user directly (handy if a verification email went astray), Block someone (they can't sign in or re-register until unblocked), or Delete an account permanently.
- Sign-ups can be restricted to specific email domains (for example, only your institution's addresses).
- Every page footer shows the exact build running, linked to its commit — handy when reporting an issue.
Deleting your own account
Any presenter can delete their own account from the Account page (confirm with your password). Deletion is permanent and immediate — it removes your account and every session, question, and result you created, with no recovery. ClassPulse treats survey data as disposable, so there is no trash to restore from afterward.
8Self-hosting
ClassPulse is open source and runs anywhere Docker does. The repository is the source of truth for setup and operations.
- README — features, local setup, and configuration overview.
- DEPLOYMENT.md — Docker / reverse proxy / persistence, and email & AI provider settings.
- SECURITY.md — the security model and required settings.
- .env.example — every environment variable, documented.
EMAIL_PROVIDER (Resend, SMTP, or Gmail) in your .env to send mail. The app warns about this at startup.