Giter Club home page Giter Club logo

reactify's Introduction

RedLotus-Logo-Dark RedLotus-Logo-Light

Get started with React and tailwind. Get a super boost to your development ๐Ÿš€

๐Ÿ“– Documentation

This boilerplate has all the tooling configured (eslint, prettier, husky, lint-staged, typescript and testing)

Tailwind 3 is used for styling. Its using RedLotusUI as the component library, which is built with React and Tailwind 3. It's all configured out of the box.

Routing, folder structure and main page is setup

Vite and PWA is working out of the box


Quickstart

Update names in vite.config.ts, package.json and index.html to your project name.

Update icons in public folder.

Development

Ensure you have the latest LTS version of Node.js installed

Install dependencies

yarn

Start server with hot reload

yarn start or yarn dev


๐Ÿ“ฆ Converting project to reactify standards

  • Copy everything from tsconfig.json to your project's tsconfig.json
    • Remove tsconfig.node.json
  • Add .eslintrc.yaml file
extends:
  - eslint-config-redlotus-react/dist/main
  • Remove old eslintrc and prettierrc files

  • Copy .prettierignore and .eslintignore

  • Add npx lint-staged to husky pre-commit

  • Add this to your package.json

  "lint-staged": {
    "*.{js,jsx,ts,tsx,md,graphql}": "yarn lint:fix"
  }
  • Add these scripts to package.json

    • "lint:fix": "eslint --fix --ext .js,.ts,.tsx ./src --ignore-path .gitignore",
    • "clean": "rm -rf node_modules/ && rm -rf yarn.lock && yarn",
  • Copy next line from tailwind.config.js

    content: ["./index.html", "./src/**/*.{js,jsx,ts,tsx}"],

  • Also there may be other things that you need to copy from tailwind.config.js

  • Remove prepare and prettier script

  • Remove following packages

    • These come from eslint-config-redlotus-react
      • @typescript-eslint/eslint-plugin
      • @typescript-eslint/parser
      • eslint
      • eslint-config-prettier
      • eslint-import-resolver-typescript
      • eslint-plugin-import
      • eslint-plugin-jest-dom
      • eslint-plugin-jsx-a11y
      • eslint-plugin-react
      • eslint-plugin-react-hooks
      • eslint-plugin-tailwindcss
      • eslint-plugin-testing-library
      • prettier

yarn remove @emotion/react @emotion/styled @headlessui/react @react-hook/window-size clsx

yarn remove date-fns

yarn remove formik framer-motion react-icons

yarn remove @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint eslint-config-prettier eslint-import-resolver-typescript eslint-plugin-import eslint-plugin-jest-dom eslint-plugin-jsx-a11y eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-tailwindcss eslint-plugin-testing-library prettier

yarn add -D @redlotus/typescript-config eslint-config-redlotus-react lint-staged

run yarn clean to make sure there are no missing packages

Just incase copy vite.config.ts from this project to your project and check if there are major changes

Make sure the project runs

Fix eslint errors by running yarn lint:fix

!!Update packages

Add from src/types/pwa.d.ts to your project

If everything works, then proceed with next steps

Move routing to routes.tsx Find example here

Remove moment and replace it with date-fns

Remove from src folder:

  • useIsMobile hook
  • SidebarContext
  • Most of the components

To add threejs

yarn add three @react-three/fiber @react-three/drei yarn add -D r3f-perf @react-three/editor @types/three

In vite.config.ts // import { r3f } from "@react-three/editor/vite"; add // r3f(), above react(),, if you want to use @react-three/editor


License

MIT

Copyright (c) 2022, tomimarkus991

reactify's People

Contributors

renovate[bot] avatar tomimarkus991 avatar

Stargazers

 avatar

Watchers

 avatar

reactify's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Warning

These dependencies are deprecated:

Datasource Name Replacement PR?
npm @types/testing-library__jest-dom Unavailable

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • Update dependency @headlessui/react to v1.7.19
  • Update dependency autoprefixer to v10.4.19
  • Update dependency formik to v2.4.6
  • Update dependency lint-staged to v15.2.7
  • Update dependency postcss to v8.4.40
  • Update dependency tailwindcss to v3.4.7
  • Update capacitor monorepo to v5.7.7 (@capacitor/android, @capacitor/cli, @capacitor/core, @capacitor/ios)
  • Update dependency @supabase/supabase-js to v2.44.4
  • Update dependency @vitejs/plugin-react to v4.3.1
  • Update dependency androidx.appcompat:appcompat to v1.7.0
  • Update dependency androidx.test.espresso:espresso-core to v3.6.1
  • Update dependency androidx.test.ext:junit to v1.2.1
  • Update dependency clsx to v2.1.1
  • Update dependency framer-motion to v10.18.0
  • Update dependency jsdom to v23.2.0
  • Update dependency tailwind-merge to v2.4.0
  • Update dependency tailwind-scrollbar to v3.1.0
  • Update dependency typescript to v5.5.4
  • Update dependency vite-plugin-checker to ^0.7.0
  • Update dependency vite-plugin-pwa to ^0.20.0
  • Update dependency vite-tsconfig-paths to v4.3.2
  • Update dependency vitest to v1.6.0
  • Update dependency yup to v1.4.0
  • Update testing-library monorepo (@testing-library/jest-dom, @testing-library/react, @testing-library/user-event)
  • Update capacitor monorepo to v6 (major) (@capacitor/android, @capacitor/cli, @capacitor/core, @capacitor/ios)
  • Update dependency @headlessui/react to v2
  • Update dependency @testing-library/react to v16
  • Update dependency @types/testing-library__jest-dom to v6
  • Update dependency c8 to v10
  • Update dependency framer-motion to v11
  • Update dependency husky to v9
  • Update dependency jsdom to v24
  • Update dependency react-icons to v5
  • Update dependency vitest to v2
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

cocoapods
ios/App/Podfile
gradle
android/gradle.properties
android/capacitor.settings.gradle
android/settings.gradle
android/variables.gradle
  • androidx.appcompat:appcompat 1.6.1
  • androidx.coordinatorlayout:coordinatorlayout 1.2.0
  • androidx.core:core-splashscreen 1.0.0
  • junit:junit 4.13.2
  • androidx.test.ext:junit 1.1.5
  • androidx.test.espresso:espresso-core 3.5.1
android/build.gradle
  • com.android.tools.build:gradle 8.0.0
  • com.google.gms:google-services 4.3.15
android/app/capacitor.build.gradle
android/app/build.gradle
gradle-wrapper
android/gradle/wrapper/gradle-wrapper.properties
  • gradle 8.0.2
npm
package.json
  • @capacitor/android ^5.6.0
  • @capacitor/core ^5.6.0
  • @capacitor/ios ^5.6.0
  • @emotion/react ^11.11.1
  • @emotion/styled ^11.11.0
  • @headlessui/react ^1.7.17
  • @react-hook/window-size ^3.1.1
  • @supabase/supabase-js ^2.39.1
  • @tanstack/react-query ^5.14.6
  • class-variance-authority ^0.7.0
  • clsx ^2.0.0
  • date-fns ^3.0.4
  • formik ^2.4.5
  • framer-motion ^10.16.16
  • react ^18.2.0
  • react-dom ^18.2.0
  • react-hot-toast ^2.4.1
  • react-icons 4.12.0
  • react-router-dom ^6.21.0
  • tailwind-merge ^2.2.0
  • tailwindcss-animate ^1.0.7
  • tailwindcss-border-gradient-radius ^3.0.1
  • yup ^1.3.3
  • @capacitor/cli ^5.6.0
  • @redlotus/tsconfig ^1.0.4
  • @testing-library/jest-dom ^6.1.5
  • @testing-library/react ^14.1.2
  • @testing-library/react-hooks ^8.0.1
  • @testing-library/user-event ^14.5.1
  • @types/react ^18.2.45
  • @types/react-dom ^18.2.18
  • @types/react-router-dom ^5.3.3
  • @types/testing-library__jest-dom ^5.14.9
  • @vitejs/plugin-react ^4.2.1
  • autoprefixer ^10.4.16
  • c8 ^8.0.1
  • eslint-config-redlotus-react 0.2.1
  • husky ^8.0.3
  • jsdom ^23.0.1
  • lint-staged ^15.2.0
  • postcss ^8.4.32
  • tailwind-scrollbar ^3.0.5
  • tailwind-scrollbar-hide ^1.1.7
  • tailwindcss ^3.4.0
  • typescript ^5.3.3
  • vite ^5.0.10
  • vite-plugin-checker ^0.6.2
  • vite-plugin-pwa ^0.17.4
  • vite-tsconfig-paths ^4.2.2
  • vitest ^1.1.0

  • Check this box to trigger a request for Renovate to run again on this repository

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.