Inspiration
I got the idea after attending a round-table event in June 2026. Before and after the session, people had to work their way around the table finding one another on LinkedIn. It was easy to miss somebody, and the process could be especially awkward if you were shy about interrupting or introducing yourself again.
Tavolen replaces that ritual with one shared, opt-in page. The introductions started at the table do not have to disappear when the meeting ends.
What it does
One attendee creates a temporary table and shares its link or QR code. Everyone can open the page on their phone and add the public profile they choose to share. The live roster is available to anyone with the hard-to-guess table URL, and attendees can download it as a vCard file before the table expires.
Tavolen requires no installation and creates no permanent user accounts. Tables and their memberships are automatically deleted after 24 hours.
How it works
Tavolen is a mobile-first Node.js and Express web application with SQLite storage. Attendees can add an allowlisted public profile manually or import a GitHub profile through OAuth.
GitHub is requested without email or private-data scopes. Tavolen reads the public name and profile URL, immediately revokes the OAuth grant, and never stores the access token. Independent signed, short-lived OAuth transactions allow concurrent attendees to complete the flow safely.
LinkedIn import also exists, but remains disabled for ordinary users while broader LinkedIn product approval is pending.
From prototype to Build Week
The original prototype was built with Claude and focused narrowly on LinkedIn profile import. The core temporary-table flow existed before OpenAI Build Week began on July 13, 2026. The project then stalled while I waited for broader LinkedIn access.
The release of the latest Codex and the start of Build Week prompted me to return to the problem and broaden it beyond one platform. I used Codex with GPT-5.6 for all research, product, engineering, testing, security, and deployment work performed during the hackathon week.
The Build Week extension added:
- Multi-platform manual profile links protected by a strict host allowlist
- First-class GitHub profile import with immediate grant revocation
- Independent, short-lived OAuth transactions
- Portable vCard roster downloads
- Automated OAuth and vCard tests
- Clearer transient-profile-sharing language and provider feature flags
- Secure production deployment of the GitHub OAuth configuration
The dated commit history clearly distinguishes this work from the earlier prototype.
How I used Codex and GPT-5.6
Codex with GPT-5.6 helped me research provider capabilities and privacy trade-offs, reframe the product after the LinkedIn blocker, implement and test the GitHub flow, review OAuth and data-minimization decisions, improve the product language, and deploy the resulting application.
Codex accelerated the research and implementation, while I made the product decisions: preserving the temporary, opt-in model; refusing to retain provider access; keeping manual entry as a safe fallback; and prioritizing GitHub for developer meetups and technical round tables.
Privacy by design
Tavolen stores only a display name, an optional public profile URL, its source, and a join timestamp. It does not store email addresses, phone numbers, profile photos, provider tokens, or permanent Tavolen accounts. The roster exists only long enough to help people stay connected after the event.
Built With
- caddy
- codex
- docker
- express.js
- github-oauth
- gpt-5.6
- node.js
- sqlite
Log in or sign up for Devpost to join the conversation.