{"id":18348747,"url":"https://github.com/paraboly/react-boilerplate","last_synced_at":"2025-04-06T09:31:47.374Z","repository":{"id":40265274,"uuid":"497632781","full_name":"Paraboly/react-boilerplate","owner":"Paraboly","description":"React 18 webpack boilerplate","archived":false,"fork":false,"pushed_at":"2022-11-20T18:35:02.000Z","size":1330,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-21T21:12:01.342Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Paraboly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-05-29T15:38:01.000Z","updated_at":"2022-11-24T23:00:29.000Z","dependencies_parsed_at":"2023-01-22T11:16:09.739Z","dependency_job_id":null,"html_url":"https://github.com/Paraboly/react-boilerplate","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Paraboly","download_url":"https://codeload.github.com/Paraboly/react-boilerplate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247463744,"owners_count":20942935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-05T21:19:03.320Z","updated_at":"2025-04-06T09:31:46.884Z","avatar_url":"https://github.com/Paraboly.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Paraboly React Boilerplate\n\n\u003e Paraboly react boilerplate web application repository.\n\n## TODO:\n\n- [x] Initial working version\n- [x] Refactoring webpack\n- [x] i18n support\n- [x] Refactoring routing\n- [x] Refactoring app navigation\n- [x] Add lazy-loading support\n- [x] Prettier config\n- [x] Eslint config\n- [x] Haskey integration\n- [ ] Github actions\n- [ ] Fix multi-times hmr triggers\n\n## Installation\n\n1. Clone/download repo\n2. `npm install`\n\n---\n\n## Commands\n\n| Command              | Description                                                                               |\n| -------------------- | ----------------------------------------------------------------------------------------- |\n| `npm run start`      | (alias of `npm run start-dev`)                                                            |\n| `npm run start-dev`  | Build app continuously (HMR enabled) and serve @ `http://localhost:${env.PORT \\|\\| 2999}` |\n| `npm run start-prod` | Build app once (HMR disabled) to `/dist/` and serve @ `http://localhost:9001`             |\n| `npm run build`      | Build app to `/dist/`                                                                     |\n| `npm run test`       | Run tests                                                                                 |\n| `npm run lint`       | Run linter                                                                                |\n| `npm run lint -- --fix` | Run linter and fix issues                                                                 |\n---\n## Project Structure:\n    - config: contains webpack configs\n    - nginx: contains nginx configs\n    - src:\n        - app: contains platform core features\n            - components: shared components across the app\n            - constants: shared constants across the app\n            - services: shared services across the app\n            - views: app root views eg: Login, Home, Settings etc.\n        - assets: contains i18n and other media assets\n        - config: contains app root configs\n        - modules: lazy-loaded modules\n\n---\n## File Naming Guide\n    - Component: UserDetails.tsx\n    - Service: User.service.ts\n    - Module: User.module.ts\n    - Constant: user.constant.ts\n    - Config: user.config.ts\n\n---\n## Features\n- Typescript, styled-components and scss support\n- Hot reload without page refresh\n- Home page, Login page and protected routes\n- Lazy loaded routes\n- Optimized production build by code splitting\n- i18n support\n- React 18, MUI 5 and Webpack 5\n## Technology Stack\n\n#### UI Dependency\n\n- **[React](https://facebook.github.io/react/)** (18.x)\n- **[ReactRouter](https://reactrouter.com/)** (5.x)\n- **[MUI](https://mui.com/)** (5.x)\n- **[ReactIcons](https://react-icons.github.io/react-icons/)** (4.3.1)\n- **[Axios](https://github.com/axios/axios)** (0.27.2)\n\n#### DEV Dependency\n\n- **[Webpack](https://webpack.js.org/)** (5.x)\n- **[Typescript](https://www.typescriptlang.org/)** (4.x)\n- **[Hot Module Replacement (HMR)](https://webpack.js.org/concepts/hot-module-replacement/)** ([React Fast Refresh](https://github.com/pmmmwh/react-refresh-webpack-plugin))\n- [SASS](http://sass-lang.com/) support\n- Code linting ([ESLint](https://github.com/eslint/eslint)) and formatting ([Prettier](https://github.com/prettier/prettier))\n- Test framework ([Jest](https://facebook.github.io/jest/))\n\n#### Logging\n\n- **[Sentry](https://docs.sentry.io/platforms/javascript/)** (6.x)\n- **[Logrocket](https://docs.logrocket.com/reference/javascript-sdk-api)** (3.x)\n- **[WebVitals](https://github.com/GoogleChrome/web-vitals)**\n\n_Boilerplate: [React Webpack Babel Starter](https://github.com/vikpe/react-webpack-babel-starter)_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparaboly%2Freact-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparaboly%2Freact-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparaboly%2Freact-boilerplate/lists"}