Actually Here

The first end-to-end encrypted attendance app

Not “checked in”.
Actually here.

Actually Here is the first end-to-end encrypted attendance app. It is free to start and takes a minute to set up. Only your teaching team can read what a class records; we cannot. Check-ins are carried over Bluetooth and validated cryptographically, which makes taking the roll a breeze in a lecture theatre or any other large group.

TestFlight beta · in review

Built for iOS and Android, and running on device.

10:02●●●
ACTUALLY HERE

IT Project

Student · Alex Ng · 1183302

Checked in

Received 10:02:41
Today · 10:02
12 Aug · 09:04
5 Aug · 09:02
Signed in this phone's secure hardware.
Encrypted before it leaves.

How it works

Three steps each, and the same app for both.

Anyone can create a class or join one. Your role in a class decides what the app shows you.

Instructors

Create it, start it, watch it fill.

10:02●●●
ACTUALLY HERE

Create New Class

IT20015 · Engineering Fundamentals
University of New Ashford
Your phone generates this class's encryption key.
Selby Labs stores only ciphertext it cannot read.
01

Create the class

Two fields and a button. Your phone generates the encryption key for this class and keeps it. Students join with the class code you put on the whiteboard.

10:00●●●
ACTUALLY HERE

IT20015 · Engineering Fundamentals

Instructor · owner
52
students
2
tutors
83%
avg attend.
Tutorial 3 · 10 min · change
CLASS CODE · TQ9·2XF
02

Start check-ins

One tap, with the segment and duration already filled in from last time. Your phone starts broadcasting a fresh secret to the room over Bluetooth.

10:04●●●
ACTUALLY HERE

Check-ins open

Tutorial 3 · broadcasting
47/ 52
6:12 remaining · closes 10:10
1 flag needs review
Priya Raman10:04:02
Wei Zhangmanual 10:04
Jess Liu10:03:51
03

Watch the roll fill

Valid check-ins land by themselves, so you can pocket the phone. Only anomalies are surfaced for you to look at, and marking someone by hand is always there.

Students

Join once, then two taps a week.

10:02●●●
ACTUALLY HERE

Your classes

IT ProjectStudent
Session open nearby
My physics classStudent
No session nearby
Scanning · 1 session found nearby
01

Join with a class code

Type your name and student number once. No account, no password, no email address. Your phone makes a signing key that never leaves it.

10:02●●●
ACTUALLY HERE

IT Project

Student · Alex Ng · 1183302
Session open
12 Aug · 09:04
5 Aug · 09:02
29 Jul · 10:07
Signing happens in this phone's secure hardware.
02

Tap Check in

The button appears when your phone hears a session in the room. It will not appear anywhere else, because the secret never travels over the internet.

10:02●●●
ACTUALLY HERE

IT Project

Student · Alex Ng · 1183302

Checked in

Received 10:02:41
Today · 10:02
12 Aug · 09:04
5 Aug · 09:02
Kept on this phone. The official roll is judged by staff devices.
03

That is the whole thing

Nobody has to approve it. Your own attendance history stays on your phone, and you can leave a class whenever you like and take your copy with you.

End-to-end encryption

The first attendance app where the vendor cannot read the roll.

End-to-end means the data is encrypted by the device that creates it and decrypted only by the devices meant to read it. Everything in between, our server included, is carrying encrypted data.

Every other attendance product on the market stores your roll in a form its vendor can read, because their analytics depend on it. Actually Here has no such product to protect, so the encryption goes all the way down.

When you create a class, your phone generates that class's key. It is shared with your tutors and co-instructors by wrapping it to their public keys, and it goes nowhere else. Our server receives sealed lines, numbers them, and hands them back on request. It has no key, no way to obtain one, and nothing about you to attach them to.

The honest limit: as a relay we see IP addresses and timing in transit. Everything else is mathematics rather than a promise, and the Privacy Policy spells out exactly what is on disk.

LayerHow it is implemented
Class key An X25519 keypair generated on the owner's device when the class is created. Never uploaded, never escrowed.
Event sealing Each event is sealed individually with a libsodium sealed box (X25519 + XSalsa20-Poly1305), so appends stay independent and concurrent.
Device identity A P-256 keypair generated inside the Secure Enclave or Android StrongBox. The private key is not exportable by the app, by us, or by anyone holding the phone.
Signing Every event is signed ECDSA P-256 over its RFC 8785 canonical form, so the whole history is independently auditable.
Key distribution Promotion to tutor or instructor writes a signed event carrying the class key wrapped to that person's public key. That is the only path the key ever takes.
On the server Base64 ciphertext lines and a permissions list of one-way token hashes. No names, no numbers, no accounts, no keys.
Note. Losing every staff device in a class means losing that class, because there is no copy of the key anywhere else. Keeping a second instructor on any class that matters is the whole backup story, and it is a fair trade for a vendor that genuinely cannot read your students.

Coming to the App Store and Google Play

Presence you don't have to take anyone's word for.

Free to start, for students and instructors alike. An in-app upgrade unlocks the full app for the classes you own, and it covers your whole teaching team. Students never pay for anything.

TestFlight beta · in review