Frappe UI React

A React component library implementing Frappe's Espresso UI design system.
Description
Issues / PRs
Team Members

Frappe UI React & React Native

Demo

Overview

frappe-ui-react is a comprehensive React & React Native component library that implements Frappe's Espresso UI design system. While Frappe officially uses Vue.js internally, this library bridges the gap for React developers in the Frappe ecosystem who want to maintain consistent design language across their applications.

Why This Library?

Community Need

The Frappe ecosystem provides excellent tools including a React SDK - https://github.com/The-Commit-Company/frappe-react-sdk for backend interactions, but lacks official React components. This forces React developers to either:

  • Build UI components from scratch

  • Use inconsistent UI libraries that don't match Frappe's design language

  • Switch to Vue.js (which might not be feasible for existing React projects)

Design Consistency

This library ensures React applications can maintain the same look and feel as official Frappe products which used frappe-ui - https://github.com/frappe/frappe-ui like:

  • Gameplan

  • Frappe Cloud

  • LMS

Features

  • Complete set of base components (Buttons, Inputs, etc.)

  • Fully typed with TypeScript

  • Responsive and accessible components

  • Comprehensive documentation and examples

  • Follows Frappe's Espresso UI - https://www.figma.com/community/file/1407648399328528443 specifications

  • All the component are available in a url, drop-in our components using Shadcn to any repo

Tech Stack

  • Next.js

  • React 18+

  • React Native

  • TypeScript

  • Tailwind CSS

  • Radix UI (for accessible primitives)

Issues, PRs and Discussions
Pull Request
feat(button-group): ✨ add button group component
Pull Request
feat(button-group): ✨ add button group component with documentation
Pull Request
feat(button): ✨ create badge component for web
Pull Request
chore(ci): 🤖 remove contributors workflow file
Pull Request
feat(homepage): ✨ create homepage with blocks
Pull Request
feat(dropdown-menu): ✨ add dropdown menu component
Pull Request
docs(button): :memo: improve the docs
Pull Request
feat(docs): ✨ add docs for icon component
Pull Request
style(tailwind.config): 💄 update color variables with defaults
Pull Request
feat(button): ✨ create button variants
Pull Request
ci(workflows): 🤖 enhance CI configuration with multiple linters
Pull Request
feat(docs): ✨ enhance docs layout with pathname redirection
Pull Request
feat(mode-toggle): ✨ add mode toggle with dynamic icons
Pull Request
feat(dropdown): ✨ add dropdown component with documentation
Pull Request
feat(icon): ✨ add icon component documentation
Pull Request
feat(native): ✨ create avatar & avatar group component for react native
Pull Request
feat(button): ✨ add icon button component for web
Pull Request
chore(ISSUE_TEMPLATE): 🧹 update issue templates for clarity
Pull Request
feat(block): ✨ create gameplan layout
Pull Request
feat(registry): ✨ handle react native docs via registry config
Pull Request
feat(docs): ✨ add avatar and avatar group components
Pull Request
chore(registry): 🛠️ change registry.json docs mapping
Pull Request
feat(docs): ✨ add dynamic loading and 404 handling for docs
Pull Request
feat(registry): ✨ create a button component for web
Pull Request
feat(docs): ✨ add examples section to documentation layout
Pull Request
feat(docs): ✨ enhance documentation layout and add new components
Pull Request
fix(home): 🐛 update responsiveness for homepage
Pull Request
feat(registry): ✨ create icon component for web
Pull Request
feat(avatar-group): ✨ create avatar group component for web
Pull Request
chore(pr-template): 🧹 update PR template for clarity
Pull Request
feat(badge): ✨ add badge component and documentation
Pull Request
feat(native): ✨ create tag component for react native #50
Pull Request
refactor(docs): ♻️ remove outdated documentation and components
Pull Request
feat(avatar): ✨ add avatar components with various sizes
Pull Request
feat(docs): ✨ add docs skeleton
Pull Request
feat(registry): ✨ create shadcn registry as monorepo app
Pull Request
feat(init): 🚀 create monorepo template
Pull Request
feat(registry): ✨ add design token to registry
Pull Request
feat(native): ✨ create basic react native app showcase
Pull Request
feat(native): :sparkles: create button and icon component for react native
Naveen MC
Naveen MC
naveen_mc
Navin A
Navin A
navin_a
Padmanathan Muthukorakkan
Padmanathan Muthukorakkan
padmanathan_muthukorakkan
Karthik Balasubramanian
Karthik Balasubramanian
karthik_balasubramanian