Beginner-friendly React UI components. Open to everyone. No gatekeeping.
NoGateUI is an open-source React UI ecosystem built to make contributing to open source approachable, practical, and welcoming, especially for people who are new to open source or unsure where to start.
This repository is a monorepo that contains multiple independently published UI packages under the @nogateui npm scope.
Each component lives in its own package, with its own README, versioning, and npm release.
-
Skeleton Loader
Modern, animated skeleton loaders inspired by real production apps.- npm:
@nogateui/skeleton - Full Installation Docs:
packages/skeleton/README.md
- npm:
-
Button
Clean, accessible button component with practical variants.- npm:
@nogateui/button - Full Installation Docs:
packages/button/README.md
- npm:
More components will be added over time. Anyone can propose and build new ones.
Install only what you need. Each package is published independently.
npm install @nogateui/skeleton
npm install @nogateui/buttonnogateui/
packages/
skeleton/
button/
- Each folder inside
packages/is a standalone npm package - The root repo orchestrates builds and tooling
- Packages share a common setup but publish independently
Contributing to open source shouldn’t feel intimidating. This project is designed to make contribution easy, safe, and collaborative.
We operate with a ~95% pull request acceptance rate. That means we default to merging and improving together, not rejecting people for small mistakes.
If something isn’t perfect, we guide, iterate, and refactor openly.
You do not need to be an expert. You do not need permission. If you can follow steps, you can contribute.
NoGateUI follows the same contribution model used by projects like Chakra UI and MUI.
mainis protected (no one pushes directly to it)- Contributors do not get write access to this repo
- All changes come through Pull Requests
- Contributors work on their own branches in their own forks
This keeps the project safe, stable, and easy to maintain.
You do not need a shared dev branch.
Large UI libraries like Chakra UI and MUI do not allow contributors to push to a shared development branch. Instead, they use feature branches + PRs.
This section covers everything, even if you’ve never contributed before.
Go to: 👉 https://github.com/NoGateUI/nogateui
Click Fork (top-right). This creates your own copy of the repo.
git clone https://github.com/YOUR_USERNAME/nogateui.git
cd nogateuinpm installThis sets up all packages using the shared workspace setup.
git checkout -b improve-skeleton-animationAlways work on a branch. Never work directly on main.
Example:
- Improve animation
- Fix styles
- Add a prop
- Improve docs
Files live inside:
packages/skeleton/
packages/button/
From the repo root:
npm run buildIf this passes, your changes are safe.
git add .
git commit -m "fix: improve skeleton animation"git push origin improve-skeleton-animationOn GitHub, you’ll see a “Compare & pull request” button.
Open the PR against:
NoGateUI/nogateui → main
Explain what you changed and why.
That’s it. We’ll review and iterate with you.
Yes, you are allowed to do this.
You don’t need permission. You don’t need to ask first.
Same as Scenario 1.
Inside packages/, create a new folder:
packages/card/
packages/card/
src/
Card.tsx
index.ts
package.json
tsconfig.json
README.md
LICENSE
You can copy structure from an existing package like skeleton.
Start simple. Small, focused components are encouraged.
npm run buildIf it builds, you’re good.
Same as Scenario 1.
In your PR description, explain:
- What the component does
- Why it’s useful
- Any design decisions
We’ll review it with you.
- We review the code
- We may suggest small changes
- We help you fix issues if needed
- Once ready, we merge it
We care more about learning and intent than perfection.
- Each package is versioned independently
- Publishing is handled by maintainers
- The root package is marked as
privateand is never published
You do not need to worry about npm publishing as a contributor.
NoGateUI is licensed under the MIT License.
Each published package includes its own license file for clarity and compliance.
If you’ve ever wanted to contribute to open source but didn’t know where to start, this project is for you.
Let’s build something meaningful together.