Code Monkey home page Code Monkey logo

awesome-react's Introduction

Awesome React Awesome

A collection of awesome things regarding the React ecosystem.

React

React General Resources

React Tutorials

React Frameworks

  • next - The React Framework
  • blitz - The Missing Fullstack Toolkit for Next.js
  • remix - Full stack web Framework that lets you focus on the user interface
  • gatsby - Build modern websites with React
  • react-admin - A frontend Framework for building B2B applications
  • refine - Build your React-based CRUD applications, without constraints

React Component Libraries

  • material-ui - Ready-to-use foundational React components
  • ant-design - An enterprise-class UI design language and React UI library
  • shadcn-ui - Beautifully designed components built using Radix UI and Tailwind CSS
  • react-bootstrap - Bootstrap components built with React
  • fluentui - Microsoft's Fluent UI
  • framework7 - Full featured HTML framework for building iOS & Android apps
  • ariakit - Toolkit for building accessible web apps with React

React State Management and Data Fetching

  • redux - Predictable State Container for JavaScript Apps
  • mobx - Simple, scalable state management
  • zustand - Bear necessities for state management in React
  • tanstack-query - Powerful asynchronous state management
  • swr - React Hooks for Data Fetching
  • apollo-client - A fully-featured, production ready caching GraphQL client
  • relay - A framework for building data-driven React applications
  • recoil - Experimental state management library for React apps
  • jotai - Primitive and flexible state management for React
  • xstate - State machines and statecharts for the modern web
  • effector - Business logic with ease
  • immer - Create the next immutable state by mutating the current one
  • immutable-js - Immutable persistent data collections for Javascript
  • rxdb - A fast, offline-first, reactive database for JavaScript Applications

React Styling

  • styled-components - Visual primitives for the component age
  • emotion - CSS-in-JS library designed for high performance style composition
  • linaria - Zero-Runtime CSS in JS library
  • vanilla-extract - Zero-runtime Stylesheets-in-TypeScript

React Routing

  • react-router - Declarative routing for React
  • wouter - A minimalist-friendly routing
  • tanstack-router - Type-safe router with built-in caching & URL state management

React Development Tools

  • create-react-app - Set up a modern Web app by running one command
  • vite - Next Generation Frontend Tooling
  • parcel - The zero configuration build tool for the web
  • million - An extremely fast and lightweight optimizing compiler
  • reactotron - A desktop app for inspecting your React and React Native projects
  • eslint-plugin-react - React specific linting rules for ESLint
  • why-did-you-render - Monkey patches React to notify you about avoidable re-renders

React Libraries

  • preact - Fast React alternative with the same modern API
  • floating-ui - Toolkit to create floating elements
  • loadable-components - The recommended Code Splitting library for React
  • react-uploady - Modern file-upload components & hooks for React
  • downshift - React autocomplete, combobox or select dropdown components
  • react-error-boundary - A React error boundary component that lets you catch errors

React Testing

  • jest - Delightful JavaScript Testing
  • react-testing-library - Simple and complete React DOM testing utilities
  • cypress - Fast, easy and reliable testing for anything that runs in a browser

React Awesome Components

React Components Sandboxes

  • storybook - Storybook is a frontend workshop for building UI components and pages in isolation
  • react-styleguidist - Isolated React component development environment with a living style guide
  • react-cosmos - Dev tool for creating reusable React components
  • bit - A build system for development of composable software

React Forms

  • react-hook-form - React Hooks for form state management and validation
  • formik - Build forms in React, without the tears
  • react-jsonschema-form - A React component for building Web forms from JSON Schema
  • formily - Alibaba Group Unified Form Solution
  • vest - Declarative validations framework

React Tables and Grids

  • react-grid-layout - A draggable and resizable grid layout with responsive breakpoints
  • tanstack-table - Headless UI for building powerful tables & datagrids
  • react-data-grid - Feature-rich and customizable data grid React component

React Maps

React Charts

  • recharts - Redefined chart library built with React and D3
  • visx - Visualization components
  • victory - A collection of composable React components for building interactive data visualizations
  • react-vis - Data Visualization Components
  • nivo - Provides a rich set of data visualization components built on top of the D3 and React libraries

React Renderers

React Internationalization

  • formatjs - Internationalize your web apps
  • react-i18next - Internationalization for React done right
  • typesafe-i18n - A fully type-safe and lightweight internationalization library

React Graphics and Animations

  • react-spring - A spring physics based React animation library
  • framer-motion - Open source, production-ready animation and gesture library for React
  • auto-animate - A zero-config, drop-in animation utility that adds smooth transitions
  • react-tsparticles - Easily create highly customizable particles effects
  • react-parallax-tilt - Easily apply tilt hover effect on React components

React Integration

  • rescript-compiler - A robustly typed language that compiles to efficient and human-readable JavaScript
  • react-rails - Integrate React with Rails
  • fulcro - A library for development of web applications in clj/cljs
  • tailwind-react - Article that shows you how to integrate React application with Tailwind

React Real Apps

  • mattermost-server - An open source platform for secure collaboration
  • kibana - Your window into the Elastic Stack
  • webamp - Winamp 2 reimplemented for the browser
  • overreacted - Personal blog by Dan Abramov
  • wave - An open-source, cross-platform terminal for seamless workflows

React Native

React Native General Resources

React Native Navigation

  • react-navigation - Routing and navigation for your React Native apps
  • expo-router - The File-based router for universal React Native apps

React Native Awesome Components

React Native Libraries

Contribution

This list began as a personal compilation of interesting things related to React. When it was initiated, React was still in beta, a special script was required to convert JSX to JS, and Flux had not yet been released. Today, React has become mainstream, with numerous developments taking place. Kindly refrain from using this list as an advertisement board or a space to promote your experiments. We focus on sharing entirely free resources here. Please feel free to propose updates for outdated projects and articles, as well as new contributions. Your input and suggestions are wholeheartedly♡ appreciated. (✿◠‿◠)

CC0

awesome-react's People

Contributors

0x1026 avatar abhijitparida avatar appleboy avatar awesome-bot avatar browniefed avatar caprica-six avatar da-vaibhav avatar designorant avatar eanplatter avatar enaqx avatar erickeno avatar gaearon avatar gilbarbara avatar haroenv avatar karesztrk avatar killavus avatar koistya avatar mbasso avatar michelebertoli avatar ngokevin avatar paulmelnikow avatar readmecritic avatar rickwong avatar rwieruch avatar sachin-inguva avatar semigradsky avatar stanleycyang avatar thelordoftheboards avatar tonyspiro avatar xgrommx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-react's Issues

Add another maintainer?

Should we add another maintainer to this project? There's quite a lot of (aging) pull requests and some of them have great info.

I volunteer to be a maintainer.

One of the things I'd like to do is:

  • have guidelines as to what is appropriate for inclusion so that folks know what to submit
  • give feedback to every open pull request by either a) merging or b) describing why the request wasn't accepted
  • potentially give some sort of ranking / popularity measure to e.g. components to help filter some of the noise

Validate pull requests with Travis

Hello, I wrote a tool that can validate README links (valid URLs, not duplicate). It can be run when someone submits a pull request.

It is currently being used by

Examples

If you are interested, connect this repo to https://travis-ci.org/ and add a .travis.yml file to the project.

See https://github.com/dkhamsing/awesome_bot for options, more information
Feel free to leave a comment 😄

Can we add container?

Reapop is a React & Redux notifications system.

I opened this issue because i'm not sure if we can add container.

Remove deprecated real app

mozilla/payments-ui is using a much older version of React and is deprecated. It might not be the best example anymore.

Remove - Learn React by building the Hacker News front page

I've just tried using the tutorial. Unfortunately, the repo has not been maintained (no recent commits + stale PRs) and is no longer a good intro for beginners. A bunch of issues are experienced from the outset due to the syntax not being up-to-date with the most recent release of React.

I would suggest this tutorial is no longer 'awesome'. @enaqx are you ok with me submitting a PR to remove it?

Keep commercial resources but mark them as such.

I saw the recent commit that removed some interesting, yet commercial resources. It would be wonderful if this list included non-free resources but simply marked as such. Or, maybe included in a separate section.

I'm not associated with any commercial projects or books. But I would happily trade dollars for the time savings of a well developed resource.

Thanks for maintaining this list. It's a wonderful resource!

Consider separating toolkits from boilerplates

Right now we have things like create-react-app and next.js along with just-another-react-boilerplate. Which aren't the same thing. The former are considered "toolkits" or "frameworks" while the later is just a plain boilerplate.

So things that allows you to create a project and leverage their packages to run, test and build the project without worrying about the underlying packages would fit better in its own category.

A few examples of these:
create-react-app
nwb
next.js
neutrino
razzle
rekit

React/JSX + Typescript is a thing as of Typescript 1.6 btw

Announcement

http://blogs.msdn.com/b/typescript/archive/2015/09/02/announcing-typescript-1-6-beta-react-jsx-better-error-checking-and-more.aspx

One of the key philosophies of TypeScript is to let you write TypeScript anywhere you can develop using JavaScript. While we’ve worked with teams such as Dojo, Aurelia, and Angular to ensure using TypeScript is as easy as using JavaScript, there was still an important library that that presented a difficulty for TypeScript developers: React. This was due to the lack of support for JSX, a popular way of writing DOM and native components in JS. React heavily leverages JSX in everyday code. Unfortunately, the syntax for JSX conflicted with the cast syntax that TypeScript already used.

image

Refactoring JSX members in TypeScript (click to watch animation)

In 1.6, we’ve introduced a new .tsx file extension. This extension does two things: it enables JSX inside of TypeScript files, and it makes the new ‘as’ operator the default way to cast. With this, we’ve added full support for working with React/JSX in TypeScript in a type-safe way.

Details

https://github.com/Microsoft/TypeScript/wiki/JSX

Two travis checks do not pass

Issues :-(
> Links 
  1. [L0522] 404 https://github.com/uNmAnNeR/imaskjs/tree/gh-pages/plugins/react  
  2. [L0988] 404 https://webcache.googleusercontent.com/search?q=cache:xFibiodnfmgJ:https://fistfulofbytes.com/graphql-and-g2sd+&cd=1&hl=en&ct=clnk&gl=fr  
> Dupes 
  None ✓

Sort by stars?

Possible to make all react components sorted by stars or is that hard?
It is so frustrating trying to find a decent library and sorting by stars makes it easier.

Maybe even sort by number of issues or the last commit.

Maintained?

We have PRs dating back to Oct 1 2015 — is this maintained any more?

the old articles

hi,
when i read every article from this list,i found there have many articles use the old version of reactjs, however ,it cannot works well with the new version,it's not good for new player to study reactjs!

Merge `Awesome React Components` into `Awesome React`

We want to merge https://github.com/brillout/awesome-react-components and https://github.com/enaqx/awesome-react. As mentioned in sindresorhus/awesome#698.

I've reviewed all react libraries of the Component section of the Awesome React list.

https://gist.github.com/brillout/5fa9218b21f4a02067beb41c3ca212f8

50 % will be removed
30 % are already added to Awesome React Components
20 % are going to be added

My review is subjective and anyone is free to object.

@browniefed @enaqx
I've built a Frontend (http://devarchy.com/react-components) that allows anyone to review/vote whether or not a new entry should be added to the list.
No clue if people would actually do the effort of reviewing/voting but maybe it's worth a try? What do you think?

729 links! Time for organization

The list is great but it has some structural problems that could be fixed.

New React Users

You can't really link new people to this because there's no clear starting place. This could be solved with a curated 'must read' section with 15-25 links. Thinking in react, react-router, the flux primer, one of Pete Hunt's conference talks, etc. The really important stuff when getting into react.

About X in format Y related to Z

This is where things get complicated and a "no" would be understandable. It needs a site where you can filter, which means a little bit of metadata needs to be added for each link. This also lets us add things like the angular/backbone/youtube/github badges on each item to make it easy to identify the X Y and Z in a potentially long list of items.

Metadata:

  • language (js, cljs, coffeescript, typescript, ...)
  • content type[](tutorial, repo, video, component, blog, official, ...)
    • official+video (conference) vs tutorial+video
  • frameworks[](angular, backbone, ...)
  • other?

I'm willing to put in the time for this part.

Technical notes:

Probably yaml files, and autogenerating the readme and site from that.

Add Built With React

Would it make sense to add builtwithreact.io to this list? Built with React is a list of user interfaces built with React. It’s designed, built, and maintained by the Blimp crew.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.