VeloraCSS is a fully original utility-first CSS framework. Every class, variable, and token is branded vel- / --vel-. There are zero references to Tailwind, Bootstrap, or Bulma in any output — they are research only.
- Utility classes:
vel-{property}-{value}— e.g.vel-flex,vel-p-4,vel-text-lg - Component classes:
vel-{component}— e.g.vel-btn,vel-card - CSS custom properties:
--vel-{category}-{name}— e.g.--vel-color-primary,--vel-space-4
The built output lives in dist/velora.css. The source lives in src/. Never ship class names or variable names from other frameworks.
src/
tokens.css CSS custom properties (--vel-*)
reset.css Modern CSS reset
utilities/ One file per utility category
components/ One file per component
velora.css @import entry point
dist/ Built output (git-ignored, regenerated by npm run build)
playground/ Live demo app (Vite + React + Monaco Editor)
nextjs-demo/ Docs site (Next.js static export)
docs/ Committed static output for GitHub Pages
build.mjs PostCSS build script
git clone https://github.com/VeloraX/veloracss.git
cd veloracss
npm install
npm run buildnpm run build runs the PostCSS pipeline and writes dist/velora.css and dist/velora.min.css.
npm run playgroundOpens the Vite + React + Monaco Editor playground at http://localhost:5173. It builds the framework first, then starts Vite. The preview iframe injects dist/velora.css as inline styles.
npm run demoBuilds the framework, then starts the Next.js dev server for the docs site at http://localhost:3000.
- All utility classes must use the
vel-prefix. No exceptions. - All CSS custom properties must use the
--vel-prefix. - No class names, variable names, or comments may reference Tailwind, Bootstrap, or Bulma.
- Tokens live in
src/tokens.css. Do not hard-code values in utility or component files — reference--vel-*properties. - Every change to
src/requires a rebuild (npm run build) before testing.
- Identify the category file under
src/utilities/(e.g.spacing.css,typography.css). - Add your classes following the
vel-{property}-{value}pattern. - Reference existing
--vel-*tokens rather than hard-coded values where possible. - Run
npm run build. - Verify the output in
dist/velora.css.
- Create
src/components/{component-name}.css. - Import it in
src/velora.cssusing@import. - Name the base class
vel-{component}and modifiersvel-{component}-{modifier}. - Run
npm run build. - Add a docs page at
nextjs-demo/app/docs/{component-name}/page.tsx. - Register the page in
nextjs-demo/app/docs/_data/nav.ts.
- Keep changes scoped to a single feature, fix, or utility category.
- Run
npm run buildand confirm it passes before opening a PR. - No Tailwind, Bootstrap, or Bulma class names may appear anywhere in
dist/velora.css. - All new classes must use
vel-prefix. All new CSS vars must use--vel-prefix. - If you add a docs page, update
nav.ts. If you skip this, the page will be unreachable. - Describe what your PR changes and why in the PR description.
Open an issue at https://github.com/VeloraX/veloracss/issues
Please include browser, OS, VeloraCSS version, and a minimal reproduction when reporting bugs.
Join the Discord: https://discord.gg/RKmSyudqAv