v1.0

Vela — Static HTML/CSS Export

Thank you for purchasing Vela! This is the plain HTML/CSS/vanilla-JS build of the template — no React, no Node.js, no build step. This guide covers what's in the package, what's interactive, and how to customize it.

Introduction

This package is a static export of the Vela React Admin Dashboard Template, generated page-for-page from the original React source. It contains:

  • 197 real .html pages — every dashboard, list, detail, form, chart, and utility page from the React version, as a standalone static file.
  • One shared, purged Tailwind CSS bundle driving every page — same design tokens, same spacing, same responsive breakpoints as the React build.
  • Dark & light themes, switchable at runtime and persisted to localStorage, matching the React version's toggle exactly.
  • Working sidebar navigation, mobile drawer, and command palette (⌘K) on every page.
  • Zero framework, zero build tooling required — open a file or point any static host at the folder and it works.
If you need the buildable React/TypeScript source instead — to add real data-fetching, wire up a backend, or extend the component library — that's a separate package. See Credits & licenses.

Quick start

Unzip the package. Everything under vela-html/ is ready to open as-is — there is nothing to install.

Option 1 — just open it

open vela-html/index.html

Option 2 — serve the folder (recommended)

Serving avoids browser file:// quirks (some links and fetches behave more predictably over HTTP):

python3 -m http.server 8000 --directory vela-html
# then open http://localhost:8000
That's it — no npm install, no build step, no environment configuration. Upload the vela-html folder to any static host (Netlify, Vercel, S3, cPanel, GitHub Pages) exactly as it is.

Package structure

vela-html/
├─ index.html              # Analytics dashboard — also the homepage
├─ components.html         # UI Kit / components showcase
├─ dashboards/              # Ecommerce, CRM, Finance, Sales, Marketing…
├─ auth/                    # Login, register, password reset, 2FA…
├─ users/  products/  orders/  projects/  …   # List + one representative detail page each
├─ forms/  charts/  tables/  settings/  reports/  …
├─ assets/                  # Purged Tailwind CSS bundle, fonts, icons, images
└─ behavior/
   ├─ vela-static.js        # Theme toggle, sidebar, mobile drawer, command palette, dropdowns
   └─ vela-chrome.css        # Small runtime-only styles the static JS depends on

Every internal link (sidebar, breadcrumbs, "view all" buttons, row links) points at a real file in this tree — there is no client-side router and no 404 unless a link is followed outside the exported set.

What's interactive vs. static

This is a generated static export, not a hand-authored one. Two categories of the original React app's interactivity are intentionally not reproduced, because they are inherently stateful, backend-driven widgets:

  • DataTable sort/filter/pagination and Kanban drag-and-drop render their default state and stay visual/static. This is standard for a marketplace HTML template — you wire these against your own data layer.
  • Dropdown / Popover / Tooltip / Modal / self-contained Tabs / non-default Accordion panels used as page content (mainly the demo widgets on the Components showcase pages) are trigger-only. Their open/expanded markup is only mounted while open in React, so a static capture of the always-starts-closed page has nothing to reveal. This does not apply to the global chrome below — that's rebuilt in full, not captured mid-interaction.

Everything else is genuinely interactive, rebuilt in plain JavaScript (behavior/vela-static.js) component-for-component against the same DOM the React version produces:

  • Theme toggle (dark/light, persisted to localStorage, no flash on load)
  • Sidebar collapse, sidebar accordion groups, mobile drawer
  • Command palette (⌘K / Ctrl+K) with live search across pages
  • Topbar notification & profile dropdowns

Every other UI element — cards, badges, avatars, static forms, charts, breadcrumbs, timelines, progress bars, ratings, and so on — is plain HTML/CSS exactly as rendered by React, since none of it needs JavaScript at all.

List pages (Users, Projects, Products, Orders, Customers, Invoices, Leads, Employees, Shipments, Contacts, Tickets, tasks) link every row to one representative detail page rather than a unique page per mock record. Capturing a dedicated static page per row would be out of scope for a template deliverable.

Themes & navigation

Dark is the default on every page. Click the theme toggle (top bar, sun/moon icon) to switch — the choice is written to localStorage["vela-theme"] and read back on every subsequent page load, so it stays consistent as you navigate between static files, exactly like the React version.

The sidebar, its accordion groups, the mobile drawer (hamburger icon below the lg breakpoint), and the ⌘K command palette all work identically across all 197 pages — they're driven by the same shared behavior/vela-static.js file included on every page.

Customizing a page

There is no build step, so customization means editing HTML/CSS directly:

  • Content — edit the markup in any .html file directly. Every page is a complete, self-contained document.
  • Colors / accent — the design tokens (--acc, --bg-*, --t0/--t1, etc.) are CSS custom properties defined once in the shared stylesheet under assets/. Change them there and every page updates.
  • Adding a page — copy the closest existing page as a starting point (same <head>, same sidebar markup, same behavior/ script tags), then edit the <main> content.
  • Removing pages — delete the .html file and remove its link from the sidebar markup (search-and-replace across files, since navigation is duplicated per page rather than templated at runtime).
Because every page repeats the shared chrome (sidebar, topbar, scripts) in its own file, a sitewide change to navigation means editing every page. If you need a single source of truth for the sidebar and a build pipeline, use the React source template instead.

Deployment

The vela-html/ folder is the finished, deployable site — upload it as-is to any static host:

HostHow
Netlify / VercelDrag-and-drop the vela-html folder, or point a static-site deploy at it
GitHub PagesPush the folder's contents to a gh-pages branch or /docs
S3 / any object storageUpload as static website hosting, index.html as the index document
Apache / cPanelUpload via FTP to public_html

No server-side rendering, no rewrites, and no environment variables are required — every URL is a real file on disk.

Credits & licenses

This static build has no third-party runtime libraries at all — there is no React, no framework, and no JavaScript dependency shipped to the browser. Everything interactive is hand-written vanilla JS.

ItemPurposeLicense
Tailwind CSS (compiled, purged)The single shared stylesheet under assets/ — compiled ahead of time, no Tailwind tooling ships or runs in the browserMIT
behavior/vela-static.jsTheme toggle, sidebar, mobile drawer, command palette, dropdowns — hand-written for this exportIncluded with your Vela license

Fonts

FontSourceLicense
Plus Jakarta SansGoogle FontsSIL Open Font License 1.1
JetBrains MonoGoogle FontsSIL Open Font License 1.1

Images & icons

  • All icons and illustrations are hand-drawn inline SVG — no icon font or icon library is bundled.
  • Demo product photos are hot-linked from Unsplash (free for commercial use, no attribution required). They are demo placeholders — replace them with your own imagery.
No tracking: this export contains zero analytics, telemetry, or tracking scripts of any kind.
Reminder: a regular ThemeForest license covers one end product. Redistribution or resale of this template (source or static export) requires an extended license — see the ThemeForest license terms.

Support

If you have questions not covered here, please reach out through the item's Comments tab or the support contact listed on our ThemeForest profile. Please include your purchase code and a description of the issue.

© Vela. All rights reserved.