| π Stars | π΄ Forks | π Issues | π Open PRs | π οΈ Languages | π₯ Contributors |
UI-Verse is a beginner-friendly open-source project that provides a growing collection of reusable UI components built using HTML, CSS, and JavaScript.
The goal of UI-Verse is to help developersβespecially beginnersβmake their first open-source contribution while learning how to build clean, responsive, and reusable UI components.
- π¨ Collection of reusable UI components
- π§© Beginner-friendly contribution system
- π Well-structured folders for easy navigation
- π Live preview of components
- π View & Copy code functionality
- π Multi-page UI (Sidebar-based navigation)
- π Upcoming Dark Mode support
- π± Fully responsive UI improvements
For a complete list of available CSS root variables and color mappings, please refer to the CSS Variables Glossary in DARK_MODE_IMPLEMENTATION.md.
Live demo: https://tushar-sonawane06.github.io/UI-Verse/
This repository is configured to auto-deploy to GitHub Pages via GitHub Actions. After pushing this change the Pages workflow will run β deployment may take a few minutes. If the site is not live yet, trigger the "Deploy to Pages" workflow from the Actions tab or check again in a few minutes.
UI-Verse/
β
βββ index.html
βββ Navbar.html
βββ alerts.html
βββ badges.html
βββ button.html
βββ cards.html
βββ color.html
βββ footer.html
βββ form.html
βββ loaders.html
βββ pricing.html
βββ testimonials.html
βββ toggles.html
βββ privacypolicy.html
β
βββ style.css
βββ script.js
βββ .gitignore
βββ favicon.ico
β
βββ components/
β βββ buttons/
β βββ cards/
β βββ navbars/
β βββ forms/
β βββ loaders/
β
βββ Contributing.md
βββ README.md
π Exciting News...
π This project is now an official part of Nexus Spring of Code - NSoC'26! πππ» We're thrilled to welcome contributors from all over India and beyond to collaborate, build, and grow UI-Verse! Letβs make learning and career development smarter β together! ππ¨βπ»π©βπ»
π©βπ» NSoC is one of Indiaβs largest 60-day open source program that encourages developers of all levels to contribute to real-world projects π while learning, collaborating, and growing together. π±
π With mentorship, community support, and collaborative coding, it's the perfect platform for developers to:
- β¨ Improve their skills
- π€ Contribute to impactful projects
- π Get recognized for their work
- π Receive certificates and swag!
π I canβt wait to welcome new contributors from NSoC'26 to this UI-Verse project family! Let's build, learn, and grow together β one commit at a time. π₯π¨βπ»π©βπ»
- A modern web browser (Chrome, Firefox, Safari, Edge)
- A code editor (VS Code recommended)
- Git installed on your system
Click on the Fork button (top-right of GitHub)
git clone https://github.com/your-username/UI-Verse.git
cd UI-VerseTo configure local development tooling and TypeScript modules:
npm install
npm run buildOption A β Launch Storybook (Recommended): To view components interactively inside the Storybook showcase environment:
npm run storybookOption B β Live Server (VS Code Extension):
If you have VS Code, install the Live Server extension, right-click index.html, and select "Open with Live Server". This provides auto-reload on file changes.
Option C β Python HTTP Server:
# Python 3
python -m http.server 8000
# Then open http://localhost:8000 in your browserBrowse the component pages via the sidebar navigation. Each page contains reusable UI components with viewable and copyable code snippets.
UI-Verse tracks each core component with semantic versions in data/meta/*.json and publishes a combined changelog in CHANGELOG_COMPONENTS.md.
Use these commands:
npm run components:version:generate
npm run components:version:check
npm run components:version:bump -- --bump=button:patch --note="Describe what changed"generate: ensures metadata exists for all components and refreshes the changelog.check: verifies semver format, changelog consistency, and component path validity.bump: increments one component version (patch|minor|major) and prepends a changelog entry.
Import the packaged components from ui-verse:
import { DesignTokens, UVButton } from 'ui-verse';
import 'ui-verse/design-tokens.css';
import 'ui-verse/theme-switcher';You can also import single components with subpaths like ui-verse/button or ui-verse/modal.
Pull requests run a series of strict quality checks, linting rules, and tests through GitHub Actions. You should run these checks locally before opening a pull request to ensure your changes pass the quality gates:
Run the following commands in your workspace:
- Verify all files:
npm run quality(Runs HTML, CSS, JavaScript linting, accessibility scans, and visual regression tests). - HTML Linting:
npm run lint:html - CSS Style Linting:
npm run lint:css - JavaScript Linting:
npm run lint:js - Accessibility Verification:
npm run audit:a11y - Visual E2E Regression Tests:
npm run test:visual(Requires Playwright browsers to be installed vianpx playwright install).
For Netlify previews on pull requests, configure the following secrets in your repository settings:
NETLIFY_AUTH_TOKENNETLIFY_SITE_ID
Use this quick workflow when you add any UIverse component to a project:
- Add global base styles.
- Add the component stylesheet.
- Paste the component HTML.
- Add optional behavior with JavaScript (if needed).
<link rel="stylesheet" href="home.css">
<link rel="stylesheet" href="button.css">
<button class="primary-btn">Get Started</button><link rel="stylesheet" href="home.css">
<link rel="stylesheet" href="cards.css">
<article class="profile-card">
<div class="profile-avatar">UI</div>
<h3>UIverse Card</h3>
<p>Reusable card layout for content blocks.</p>
</article><link rel="stylesheet" href="alerts.css">
<div class="alert success">
<i class="fa-solid fa-circle-check"></i>
Profile updated successfully.
</div><link rel="stylesheet" href="forms.css">
<form class="form-card">
<label>Email</label>
<input type="email" placeholder="you@example.com" required>
<button type="submit" class="primary-btn">Submit</button>
</form><link rel="stylesheet" href="navbar.css">
<nav class="mini-nav">
<span class="mini-brand">UIverse</span>
<div class="mini-links">
<span>Docs</span>
<span>Components</span>
</div>
</nav><link rel="stylesheet" href="input.css">
<div class="preview-input-wrap">
<i class="fa-solid fa-magnifying-glass preview-icon"></i>
<input class="preview-input" type="text" placeholder="Search components">
</div><link rel="stylesheet" href="badges.css">
<div class="badge-container">
<div class="badge">
<h3>First PR</h3>
<p>Opened your first pull request.</p>
</div>
</div>For more examples, open each component page (for example alerts.html, cards.html, forms.html) and copy snippets from the "View Code" blocks.
We welcome contributions from beginners π
- Go to the Issues section
- Choose an issue to work on
- Comment to get assigned
- Fork the repository
- Create a new branch
git checkout -b feature/your-feature-name
- Make your changes
- Commit changes
git commit -m "Added: your feature name"
- Push to GitHub
git push origin feature/your-feature-name
- Create a Pull Request π
- β Keep code clean and readable
- β Follow proper folder structure
- β Make components responsive
- β Use meaningful commit messages
- β Avoid breaking existing UI
- β Add comments where necessary
- Buttons
- Cards
- Navbars
- Forms
- Loaders
- Alerts
- Badges
- Toggles
- Pricing Sections
- Testimonials
- Improve responsiveness
- Add animations
- Enhance UX/UI
- Improve mobile experience
- Add new component pages
- Improve code preview system
- Add dark mode π
- Improve sidebar navigation
- Add search functionality
good first issueβ Beginner-friendlyenhancementβ Feature requestbugβ Bug fixesdocumentationβ Docs improvements
- Add a gradient button
- Create a responsive navbar
- Add hover effects to cards
- Improve mobile layout
- Add new UI components
- Help beginners start open-source contributions
- Build a large UI component library
- Create a developer-friendly UI showcase platform
Core interactive UI components are migrated to TypeScript, modularized under src/components/*, and built into ESM and UMD formats.
- Build: Compiles TypeScript and bundles the modules.
npm run build
- Verify / Test: Runs the Playwright test suite for Web Components.
npm run wc:test
- Package Check: Validates the built package structure.
npm run package:check
You can consume the components in your HTML using the built ESM or UMD bundles under the dist/ directory.
<script type="module">
import '/dist/index.esm.js';
</script>
<uv-button>Click Me</uv-button>
<uv-modal>
<div>Modal Content</div>
</uv-modal><script type="module" src="/dist/components/uv-button.js"></script>
<script type="module" src="/dist/components/uv-modal.js"></script><script src="/dist/index.umd.js"></script>UIverse features an automated Storybook Component Explorer that showcases all 50+ components.
- Automated Generation: A Node.js script (
scripts/generate-storybook-stories.js) parses definitions fromdata/components.json, extracts Visual Showcase HTML, resolves stylesheet/script assets, and dynamically generates 50+ Storybook stories understories/generated/. - Interactive Playground: Preview components in an isolated Shadow DOM environment to verify styling fidelity.
- Automated Documentation: Each story features an interactive documentation tab containing:
- Usage details (HTML snippets and stylesheet/script dependencies).
- Accessibility (a11y) Checklist (ARIA compliance, keyboard access, color contrast).
- Test Cases (responsive layouts, hover transitions, and state checks).
-
Run Storybook Dev Server:
npm run storybook
Starts the local Storybook dev server on port
6006. -
Build Storybook Static Site:
npm run build-storybook
Generates a production build of the static Storybook site under
storybook-static/. -
Verify and Generate Stories:
npm run storybook:check
Runs the generation script to ensure all component stories are generated and up to date.
-
Run Storybook Integration / Snapshot Tests:
npm run test:storybook
Runs visual snapshot tests using Playwright against the local Storybook dev server.
| Event Name | Event Description |
|---|---|
| Nexus Spring of Code 2026 | A 60-day open source program where project maintainers bring real-world projects, and contributors work on solving actual issues, building features, and shipping production-ready code. |
-
GitHub Issues: Report bugs or request features
-
Email: Contact the maintainers for collaboration opportunities
Feel free to reach out with any questions or feedback!
Please refer to the Code of Conduct for details on contributing guidelines and community standards.
We love our contributors! If you'd like to help, please check out our CONTRIBUTING.md file for guidelines.
Thank you once again to all our contributors who has contributed to UI-Verse! Your efforts are truly appreciated. ππ
See the full list of contributors and their contributions on the GitHub Contributors Graph.
Feel free to open issues or discussions if you have any feedback, feature suggestions, or want to collaborate!
If you find UI-Verse project helpful, give it a star! β to support more such educational initiatives:
- β Starring the repository
- π¦ Sharing on social media
- π¬ Telling your friends and colleagues
- π€ Contributing to the project
Standard Python 3.x is required to run these scripts.
-
add_sidebar.py: This script is used for documentation generation or formatting.python add_sidebar.py
-
Command-Line To-Do List.py: This is a terminal-based task management utility.python "Command-Line To-Do List.py"
This project is licensed under the MIT License - see the License file for details.
|
Tushar Sonawane
|
Open an Issue | π Star on GitHub | π Live Demo
Ready to show off your coding achievements? Get started with UI-Verse today! π

