Built with VivekUI
This entire website is built with VivekUI, a free React component library with zero runtime dependencies.
No Tailwind, no shadcn, no MUI, no PostCSS plugin and no config file. One install, one CSS import, and the 38 components listed below. Everything else on this page is plain CSS in a single stylesheet.
npm i @the_viveksingh/vivek-uiClone it and ship your own event site
This whole site is a public, MIT-licensed template. There is nothing to buy, no licence key, and no environment variables to set — it runs the moment you install.
Clone the repository
git clone https:/ / github.com/ intellectwithvivek/ devsummit.gitInstall and run it
cd devsummit && npm install && npm run devNeeds Node.js 20.9+ (22 LTS recommended). Opens on http://localhost:3000.
Change the data, not the components
Everything editable is plain TypeScript in data/ — event details, speakers, schedule, tickets, sponsors, FAQ. The entire visual identity is one file, app/globals.css. Point SITE_URL at your own domain and the canonicals, sitemap and structured data follow.
Repository: intellectwithvivek/devsummit — MIT licensed, commercial use included. The credit in the footer is removable; a star is appreciated.
Every section, and the component behind it
Each component name links straight to its documentation page, with a live example, the code in TypeScript and JavaScript, and a props table generated from the package's own type declarations.
| Where it is used | Component |
|---|---|
| Every page shell and its heading block | Section |
| Sticky header, and the sheet it becomes on a phone | Navbar |
| Light / dark / system switch in the header | ThemeToggle |
| Theme state, persistence and the no-flash attribute | ThemeProvider |
| Hero countdown to the keynote, and the early-bird deadline | Countdown |
| Page titles and section titles | Heading |
| Body copy, captions and muted meta lines | Text |
| Hero split, speaker grid, chart pairs | Grid |
| Wrapping button and badge rows | Flex |
| Headline figures above the fold | Stats |
| Attendees, speakers, tracks and workshops counting up | AnimatedCounter |
| Audience mix — who is in the room | PieChart chart |
| Sessions per track across the programme | BarChart chart |
| Speaker portraits, and the initials fallback behind them | Avatar |
| Speaker bio and talk title, on select | Popover |
| Day 1 / Day 2 switch on the schedule preview | Tabs |
| Each day of the programme, session by session | Timeline |
| The three ticket tiers | Pricing |
| Tier comparison on /tickets | Table |
| Getting-there instructions — metro, cab, parking | Accordion |
| Venue map, loaded from OpenStreetMap | MapEmbed |
| Sponsor rows, one per tier | LogoCloud |
| Photos from past editions | Carousel |
| Frequently asked questions, on native details | FAQ |
| Speaker-announcement signup | Newsletter |
| Feedback after a Buy press | Toast |
| Track filters on /speakers and /schedule | Select |
| Label and hint wiring around those filters | Field |
| When a track filter matches nothing | EmptyState |
| Timezone and workshop notices, group-discount note | Alert |
| Trails at the top of each inner page | Breadcrumb |
| Closing asks at the foot of /speakers and /schedule | CTA |
| Track flags, keynote stars, "Ends soon" | Badge |
| Every link and action that looks like a button | Button |
| Planning note beside the track chart | Card |
| The install command, here and in the footer | Code |
| Copying that command to the clipboard | CopyButton |
| Site footer on every page | Footer |
Why it is worth a look
Zero runtime dependencies. Verify it yourself with npm ls --omit=dev @the_viveksingh/vivek-ui. React and React DOM are peer dependencies and never bundled, so there is no second copy of React to trip over.
49 of 91 components are Server Components. The timeline, the pricing table, the FAQ, both charts and every layout primitive on this site render on the server with no client boundary at all.
Your CSS always wins. Every library selector is wrapped in :where(), so it has zero specificity. The whole violet identity on this site is one stylesheet of flat classes and re-pointed custom properties — no !important anywhere.
Accessibility is the default, not a later phase. IconButton will not compile without an aria-label, both charts render a real table of their numbers underneath, and the countdown refuses to read the clock during render so it cannot cause a hydration mismatch.
Questions developers ask
Is this conference template really free to use?
Yes. It is MIT licensed, which means you can use it for anything including commercial work, change whatever you like, and ship it without asking. There is no paid tier, no licence key and no attribution requirement. The "Built with VivekUI" credit in the footer is a normal component you can delete in one line — a star on the repository is appreciated, not required.
How do I clone and run this template?
Run: git clone https://github.com/intellectwithvivek/devsummit.git, then cd devsummit, npm install and npm run dev. It needs Node.js 20.9 or newer, 22 LTS recommended. There are no environment variables to set and no accounts to create — it runs immediately with the mock data in place.
How do I change the event details, speakers and schedule?
Everything editable lives in the data folder as plain TypeScript. data/event.ts holds the name, dates, venue, tracks and your site URL; data/speakers.ts, data/schedule.ts, data/tickets.ts, data/stats.ts, data/faq.ts, data/sponsors.ts and data/venue.ts hold the rest. No component needs touching to run a different event. The whole visual identity — including the violet accent — is one file, app/globals.css.
What stack does this template use?
Next.js 16 with the App Router and Turbopack, React 19, TypeScript 5, and Node.js 20.9 or newer. All of the interface is VivekUI, a free React component library with zero runtime dependencies. There is no Tailwind, no shadcn, no MUI, no PostCSS plugin and no config file — styling is one plain CSS file of custom properties and flat classes.
Where can I deploy it?
Anywhere that runs Next.js. There is a one-click Deploy to Vercel button in the README and in the footer, and no environment variables are required. After the first deploy, set SITE_URL in data/event.ts to your own domain so the canonical URLs, the sitemap and the structured data all point at it.
Is SEO and accessibility already set up?
Yes, both. Every route has its own metadata, canonical URL and social card; there is a generated sitemap.xml and robots.txt, an llms.txt for answer engines, and JSON-LD for Event with a sub-event per session, WebSite, SoftwareSourceCode, BreadcrumbList, ItemList and FAQPage. On accessibility it passes axe-core with zero violations on every page in both light and dark themes, has one h1 per page with no heading-level skips, a skip link, visible focus, and no horizontal scroll from 360px up.
Can I use it for a meetup, workshop or festival instead?
Yes — nothing in the components assumes a two-day developer conference. Drop tracks you do not need from data/event.ts, shorten data/schedule.ts to one day, and remove the sections you have no content for. The pieces most people keep are the countdown, the schedule timeline, the ticket tiers and the speaker grid.