{"id":15764452,"url":"https://github.com/awibox/react-redux-app-template","last_synced_at":"2025-07-31T23:32:49.353Z","repository":{"id":38302736,"uuid":"208453250","full_name":"awibox/react-redux-app-template","owner":"awibox","description":"The template that will help you quickly start developing your project using React","archived":false,"fork":false,"pushed_at":"2025-04-11T15:02:05.000Z","size":4088,"stargazers_count":26,"open_issues_count":10,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-11T15:56:35.243Z","etag":null,"topics":["async-await","css-modules","immutablejs","jest","prop-types","react","react-router-v4","redux-thunk","reselect","scss","webpack4"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/awibox.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-09-14T14:38:52.000Z","updated_at":"2025-04-11T14:59:23.000Z","dependencies_parsed_at":"2024-10-25T11:36:20.358Z","dependency_job_id":"df82639e-71fd-4529-9f10-bd8a84811f1b","html_url":"https://github.com/awibox/react-redux-app-template","commit_stats":{"total_commits":377,"total_committers":5,"mean_commits":75.4,"dds":0.5941644562334217,"last_synced_commit":"5492d1c80989cb6f8082edbe4ff29b5112f45947"},"previous_names":[],"tags_count":3,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awibox%2Freact-redux-app-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awibox%2Freact-redux-app-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awibox%2Freact-redux-app-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awibox%2Freact-redux-app-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/awibox","download_url":"https://codeload.github.com/awibox/react-redux-app-template/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248438510,"owners_count":21103409,"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":["async-await","css-modules","immutablejs","jest","prop-types","react","react-router-v4","redux-thunk","reselect","scss","webpack4"],"created_at":"2024-10-04T12:03:41.752Z","updated_at":"2025-04-15T03:55:01.100Z","avatar_url":"https://github.com/awibox.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![react-redux-app-template](https://repository-images.githubusercontent.com/208453250/35dbd380-52a2-11ea-870e-335ecbd918d2)\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://travis-ci.org/awibox/react-redux-app-template\"\u003e\n        \u003cimg src='https://travis-ci.org/awibox/react-redux-app-template.svg?branch=master' alt='Build' /\u003e\n    \u003c/a\u003e\n    \u003ca href='https://coveralls.io/github/awibox/react-redux-app-template?branch=master'\u003e\n        \u003cimg src='https://coveralls.io/repos/github/awibox/react-redux-app-template/badge.svg?branch=master' alt='Coverage Status' /\u003e\n    \u003c/a\u003e\n    \u003cimg src=\"https://img.shields.io/github/last-commit/awibox/react-redux-app-template\" alt=\"Last commit\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/awibox/react-redux-app-template\" alt=\"license\"\u003e\n\u003c/p\u003e\n\n## Table of contents\n* [How to install](#howtoinstall)\n* [Getting started](#gettingstarted)\n* [Run linter](#runlinter)\n* [Run tests](#runtests)\n* [Setup pre-commit](#precommit)\n* [Project structure](#structure)\n\n\u003ca name=\"howtoinstall\"\u003e\u003c/a\u003e\n## How to install\nYou can use this project like template. \nTo do this, you need press button \"**Use this template**\".\n\nOr clone repository and go to the project folder.\n```bash\ngit clone https://github.com/awibox/react-redux-app-template.git ProjectName\ncd ProjectName\n```\nThen you should install required dependencies.\n```bash\nyarn install\n```\n\n\u003ca name=\"gettingstarted\"\u003e\u003c/a\u003e\n## Getting started\nTo launch project you need to execute following command:\n```bash\nyarn start\n```\nOpen in browser: [http://localhost:8888](http://localhost:8888) \u003cbr/\u003e\nYou can change the port in the [webpack.config.js](webpack.config.js#L141)\n\n\u003ca name=\"runlinter\"\u003e\u003c/a\u003e\n## ESlint\nFor code checking we use ESLint with airbnb configuration.\nTo run linter you need to execute command:\n\n```bash\nyarn lint\n```\n\nIf you need to launch automatic mistakes fixing you need to execute following command:\n\n```bash\nyarn fix\n```\n\n\u003ca name=\"runtests\"\u003e\u003c/a\u003e\n## Jest tests\nJest with Enzyme is used for testing.\n\n```bash\nyarn test\n```\n\u003ca name=\"precommit\"\u003e\u003c/a\u003e\n## Setup pre-commit\nYou can set up git hook (pre-commit). In this case linter will be launched for necessary files before commit.\n\n```bash\nyarn setup\n```\n\u003ca name=\"structure\"\u003e\u003c/a\u003e\n## Project structure\n```\nreact-redux-app-template/\n|\n├──public/                              // Directory for the build\n|  ├──icons                             // Icons for the manifest.json and favicon\n|  ├──favicon.ico\n|  └──manifest.json                     // The web app manifest is a simple JSON file\n|                                       // that tells the browser about your web application \n|                                       // and how it should behave when 'installed' \n|                                       // on the user's mobile device or desktop.\n|\n├──spec/                                // Directory with setup files for jest\n|   └──...                       \n|                      \n├──src/                                   \n|   ├──actions                          // Redux actions\n│   │   ├──[name]Actions.js   \n│   │   ├──...                   \n│   │   └──types.js                     // Redux action type constants     \n│   │\n|   ├──components                       // Components that are reused                \n│   │   ├──[Name] \n│   │   │   ├──[Name].js\n│   │   │   ├──[Name].test.js           // Jest test\n│   │   │   ├──[Name].test.js.snap      // Jest snapshot            \n│   │   │   └──[Name].scss              // Components style         \n│   │   └──...   \n│   │  \n|   ├──pages                            // Components that use redux connect (Containers)\n│   │   ├──[Name] \n│   │   │   ├──[Name].js\n│   │   │   ├──[Name].test.js           // Jest test\n│   │   │   ├──[Name].test.js.snap      // Jest snapshot           \n│   │   │   └──*[Name].scss             // Container styles (optional)        \n│   │   └──...                                         \n│   │\n|   ├──reducers                         // Reducers\n│   │   ├──[name]Reducer.js  \n│   │   ├──[name]Reducer.test.js        // Jest test\n│   │   ├──...  \n│   │   └──index.js                     // combineReducers        \n│   │\n|   ├──selectors                        // reselect    \n│   │   ├──[name]Selectors.js   \n│   │   └──...\n│   │\n|   ├──styles                           \n│   │   ├──_variables.scss              // SCSS variables (should be imported for use)\n│   │   ├──build.scss                   // Basic styles\n│   │   └──container.scss               // Style for router.js\n│   │\n|   ├──templates\n│   │   └──index.html                   // The template by which index.html is created in public\n│   │   \n|   ├──config.js                        // Constant config \n|   ├──index.js                         // App entry\n|   ├──router.js                        // Router\n|   └──store.js                         // createStore \n|                                     \n└──webpack.config.js                    // webpack config for development and production\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fawibox%2Freact-redux-app-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fawibox%2Freact-redux-app-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fawibox%2Freact-redux-app-template/lists"}