This repo hosts standalone microsites designed to supplement the official DEF CON schedule at info.defcon.org.
These microsites are built with Vite, Preact, and TypeScript, and are optimized for fast display on conference screens or mobile devices. Each microsite is statically hosted and backed by live Firestore data.
A fullscreen auto-scrolling view of upcoming DEF CON events. Intended for public displays or kiosks.
You can control which events are shown by passing query parameters:
Param | Type | Example | Description |
---|---|---|---|
l |
string |
track 1 |
Filter events by location name (case-insensitive substring match). |
tag |
number |
47607 |
Show only events with the specified tag ID. |
h |
number |
6 |
Time window in hours (default is 6). Only events starting within this window will be shown. |
debug |
true |
debug=true |
Show past and future events. Useful for testing outside the event time range. |
https://junctor.github.io/defcon-microsites/tv/?l=track%201&tag=47607
https://junctor.github.io/defcon-microsites/tv/?h=12&debug=true
Displays DEF CON merchandise and inventory status, powered by live Firestore updates. Intended for on-site TVs to let attendees know what’s in stock.
npm install
npm run build
npm run preview
These are single-page apps statically built with Vite. Each lives at its own path:
This project is deployed using GitHub Actions.
To deploy the latest version of the microsites:
- Go to the Actions tab › Pages workflow
- Click “Run workflow” in the top right
- Choose the branch (usually
main
) and click Run workflow
This will:
- Install dependencies
- Build the microsites with Vite
- Upload the
dist/
folder - Deploy it to GitHub Pages
ℹ️ Note: Automatic deploys on
push
tomain
can be enabled by uncommenting theon.push
block in.github/workflows/pages.yml
.