First of all, you have to install the dependencies using npm or yarn.
How to use
MedUX is based on the Create-React-App template. In the project directory, you can run:
craco start
Runs the app in development mode. Open http://localhost:3000 to view it in your browser.
The page will reload when you make changes.\ You may also see any lint errors in the console.
craco build
Builds the app for production to the build
folder.\ It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.\ Your app is ready to be deployed!
See the section about deployment for more information.
react-scripts eject
Note: this is a one-way operation. Once you eject
, you can’t go back!
If you aren’t satisfied with the build tool and configuration choices, you can eject
at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject
will still work, but they will point to the copied scripts so you can tweak them.
How to customize icon font
You can import selection.json back to the IcoMoon app using the Import Icons button (or via Main Menu → Manage Projects) to retrieve icon selection.
File structure
. ├── public # static files │ ├── favicon # favicon files │ ├── index.html # main HTML file ├── src # source files │ ├── assets # media │ ├── components # reusable components shared across the app │ ├── constants │ ├── contexts # context providers │ ├── db # dummy data │ ├── fonts # local fonts (including icomoon) │ ├── hooks │ ├── layout # app layout components (sidebar, grid, etc.) │ ├── pages │ ├── store # redux store (main store file, features) │ ├── styles # global app styles, keyframes, variables │ ├── UI # UI components (buttons, inputs, etc.) │ ├── utils # helper functions (dates formatting, etc.) │ ├── widgets │ ├── App.jsx # main app component │ ├── AppLayout.jsx │ ├── index.js # main entry point │ ├── layouts.js # app layouts │ └── ... ├── babel-plugin-macros.config.js # babel macros config (for styled-components) ├── craco.config.js # Create React App config overrides (aliases, etc.) ├── jsconfig.json # IDE config └── ...
Libraries
- Redux – state management
- react-router – routing
- Create React App Configuration Override
- styled-components – CSS-in-JS
- polished – CSS helper functions
- Material UI – UI components
- Framer Motion – animation library
- Recharts – charts library
- react-grid-layout – draggable grid layout
- dnd-kit – drag and drop library
- lodash – utility library
- wavesurfer.js – audio player
- use-mobile-detect-hook – device detection hook
- swipeable-views
- swiper – carousel
- rtl-detect
- @fontsource – fonts library
- nanoid – unique ID generator
- prop-types – type checking
- moment – date formatting
- react-countup – animated number counter
- react-select – select component
- notistack – notifications
- react-calendar
- react-big-calendar – scheduler
- react-bootstrap – bootstrap components
- react-helmet – document head manager
- lottie-react – Lottie animations
- react-rating
- @south-paw/react-vector-maps
- country-state-city – country, state, city data
- react-portal
- react-dropzone – drag and drop file upload
- react-transition-group – animation transitions
- react-datepicker – date picker
- react-d3-speedometer – speedometer chart
- react-sizeme – responsiveness helper
- react-cardiogram – heart rate chart
- react-indiana-drag-scroll – draggable scroll
- react-lines-ellipsis – text ellipsis
- react-number-format – number formatting
- react-select-country-list