base on Keep React is an open-source component library built on Tailwind CSS and React.js. It provides a versatile set of pre-designed UI components to build modern web applications. # KEEP REACT Keep React is an open-source component library built on Tailwind CSS and React.js. It provides a versatile set of pre-designed UI components that enable developers to streamline the creation of modern, responsive, and visually appealing web applications. ![Keep React](https://images.prismic.io/staticmania/468819ab-dcc8-4393-85b2-b93913eee369_For+Github.png?auto=compress,format) ## Table of Contents - [KEEP REACT](#keep-react) - [Table of Contents](#table-of-contents) - [Installation](#installation) - [Vite React Application](#vite-react-application) - [Next JS Application](#next-js-application) - [usage](#usage) - [Components](#components) - [Contributing](#contributing) - [Figma](#figma) - [License](#license) ## Installation ## Vite React Application Setting Up Keep React in Vite React Application `Step 1:` Create a Vite React Application ```console npm create vite@latest my-project -- --template react cd my-project ``` `Step 2:` Install Tailwind CSS ```console npm i autoprefixer postcss tailwindcss npx tailwindcss init -p ``` `Step 3:` Install Keep React: ```console npm i keep-react phosphor-react ``` Or with Yarn ```console yarn add keep-react phosphor-react ``` Or with Pnpm ```console pnpm add keep-react phosphor-react ``` `Step 4:` Go to the `tailwind.config.js` file and paste the following code: ```jsx import { keepTheme } from 'keep-react/keepTheme' const config = { content: ['./index.html', './src/**/*.{js,ts,jsx,tsx}'], theme: {}, } export default keepTheme(config) ``` `Step 5:` Add Tailwind CSS to index.css File: ```css @import 'keep-react/css'; @tailwind base; @tailwind components; @tailwind utilities; ``` ## Next JS Application You can easily integrate `keep-react` into your Next.js application. `Step 1:` Install Next Js Application ```console npx create-next-app@latest ``` Ensure that you select `tailwindcss` as a dependency for your application during the setup. `Would you like to use Tailwind CSS? -- Yes` `Step 2:` Install Keep React ```console npm i keep-react phosphor-react ``` Or with Yarn ```console yarn add keep-react phosphor-react ``` Or with Pnpm ```console pnpm add keep-react phosphor-react ``` `Step 3:` Go to the `tailwind.config.js` file and paste the following code ```js import { keepTheme } from 'keep-react/keepTheme' const config = { content: ['./components/**/*.{js,ts,jsx,tsx,mdx}', './app/**/*.{js,ts,jsx,tsx,mdx}'], theme: {}, } export default keepTheme(config) ``` `Step 4:` Add Tailwind CSS to `globals.css` File: ```css @import 'keep-react/css'; @tailwind base; @tailwind components; @tailwind utilities; ``` Congratulations! You have successfully installed the Keep React. Now you can import any component from keep-react and use it in your project. ## usage ```jsx import { Button } from 'keep-react' const App = () => { return <Button>Button</Button> } export default App ``` ## Components The Keep React offers a wide range of components to build your user interfaces. For detailed usage and examples of each component, refer to our [component documentation](https://react.keepdesign.io/docs/getting-started/installation). ## Contributing If you want to contribute to the Keep React, you can follow the [contributing guide](https://github.com/StaticMania/keep-react/blob/main/Contribute.md). ## Contributors This project exists thanks to all the people who contribute: <a href="https://github.com/StaticMania/keep-react/graphs/contributors"> <img src="https://contrib.rocks/image?repo=StaticMania/keep-react"/> </a> ## Figma If you need access to Figma design files for the components, you can check out our website for more information: [Get access to the Figma design files](https://keepdesign.io) ## License The Keep-React name and logos are trademarks of StaticMania. [Read about the licensing terms](https://github.com/StaticMania/keep-react/blob/main/License) ", Assign "at most 3 tags" to the expected json: {"id":"4794","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"