{"id":13394790,"url":"https://github.com/bradleyboy/yarsk","last_synced_at":"2025-10-01T05:30:51.459Z","repository":{"id":28581519,"uuid":"32099506","full_name":"bradleyboy/yarsk","owner":"bradleyboy","description":"Don't use this, use Create React App","archived":true,"fork":false,"pushed_at":"2016-06-16T04:02:04.000Z","size":1140,"stargazers_count":192,"open_issues_count":9,"forks_count":38,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-04-24T11:32:37.321Z","etag":null,"topics":["babel","es6","eslint","javascript","less","mocha","react","sass"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/bradleyboy.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":"2015-03-12T20:05:48.000Z","updated_at":"2023-09-10T11:16:56.000Z","dependencies_parsed_at":"2022-09-03T16:12:43.609Z","dependency_job_id":null,"html_url":"https://github.com/bradleyboy/yarsk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bradleyboy%2Fyarsk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bradleyboy%2Fyarsk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bradleyboy%2Fyarsk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bradleyboy%2Fyarsk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bradleyboy","download_url":"https://codeload.github.com/bradleyboy/yarsk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234827057,"owners_count":18892884,"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":["babel","es6","eslint","javascript","less","mocha","react","sass"],"created_at":"2024-07-30T17:01:31.650Z","updated_at":"2025-10-01T05:30:46.144Z","avatar_url":"https://github.com/bradleyboy.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# YARSK\n\n**Y**et **A**nother **R**eact **S**tarter **K**it.\n\nEveryone has one, here's mine.\n\n## Features\n\n* [React](http://facebook.github.io/react/), of course.\n* [Webpack](http://webpack.github.io/) for asset bundling.\n* Hot reloading enabled out of the box. Changes to React components will show in the browser immediately without a full reload thanks to [react-transform-hmr](https://github.com/gaearon/react-transform-hmr).\n* [Babel](https://babeljs.io/) for ES6+ transpilation.\n* [SASS](http://sass-lang.com/) (SCSS or Sass style), [Less](http://lesscss.org/), and [Autoprefixer](https://github.com/postcss/autoprefixer) enabled by default through Webpack.\n* Image loaders setup and ready to go so you can reference your images as `require()` statements in JS, or just use `url()` as usual in CSS and Webpack will take care of the rest. See the [Header](https://github.com/bradleyboy/yarsk/blob/master/app/components/Header/index.jsx#L9-L18) component and the [Application component stylesheet](https://github.com/bradleyboy/yarsk/blob/master/app/components/Application/style.sass#L2) for examples of each.\n* [Karma](http://karma-runner.github.io/0.12/index.html) + [Mocha](http://mochajs.org/) + [Enyzme](https://github.com/airbnb/enzyme) for testing. [Istanbul](https://gotwarlost.github.io/istanbul/) and [isparta](https://github.com/douglasduteil/isparta) are also activated with `karma-coverage` for code coverage analysis, even on your ES6 classes. See [Testing](https://github.com/bradleyboy/yarsk#tests) below for more info.\n* Production configuration with best practices applied for optimizing React file size. The bundled JS file produced from this example is right at 40KB minified and gzipped. See [Building](https://github.com/bradleyboy/yarsk#building) below for more info.\n* Built-in command for publishing your app to GitHub pages. See [Building](https://github.com/bradleyboy/yarsk#building) below for more info.\n* [Optional support for ESLint via babel-eslint](https://github.com/bradleyboy/yarsk#linting).\n\nThis kit is intentionally missing a specific Flux implementation, or any other non-essential library, as I use this as a base for experimenting with various parts of the React ecosystem.\n\n## In the wild\n\n* [React TODO app with Flummox](https://github.com/bradleyboy/react-todo-flummox)\n\n## Usage\n\nFork this repo, then run:\n\n```\nnpm install\nnpm start\n```\n\nThat will fire up a webpack dev server in **hot** mode. Most changes will be reflected in the browser automatically without a browser reload. You can view the app in the browser at `http://localhost:8080`.\n\n## Building\n\nTo generate a production build, run:\n\n```\nnpm run build\n```\n\nThe above command will generate a `dist` folder with the appropriate index.html file along with the minified CSS and JS files.\n\nYou can also automatically publish to GitHub pages. Just run this instead of the regular build command:\n\n```\nnpm run build:gh\n```\n\nYou can then view your app at `http://[yourgithubusername].github.io/[reponame]`. For example, you can load this demo at http://bradleyboy.github.io/yarsk.\n\n## Modifying the HTML\n\nThe HTML file is generated using the `conf/tmpl.html` file. This file is used for both the development and production build.\n\n## Tests\n\nThe tests use Karma, Mocha and Chai through PhantomJS. See the example test in `app/components/Application/__tests__/index.js`. The test suite can be run like so:\n\n```\nnpm test\n```\n\nTo run the tests in watch mode (tests will re-run each time a file changes), use this instead:\n\n```\nnpm run test:watch\n```\n\nYou can generate code coverage reports with:\n\n```\nnpm run test:coverage\n```\n\nSee the `coverage` directory once that command is completed.\n\nFinally, the repo is [Travis](https://travis-ci.org) ready. The `.travis.yml` file should work out of the box, just add your repo in Travis.\n\n## Linting\n\nIf you'd like your JavaScript to be linted, copy the `.eslintrc.example` to `.eslintrc`. I've included my own defaults, feel free to modify them to your own taste. For more information on configuring ESLint, [consult its documentation](http://eslint.org/docs/rules/). Linting is run before each webpack build when a `.eslintrc` file is present.\n\n## .editorconfig\n\nAn example `.editorconfig` file is provided with sensible defaults for JavaScript. Feel free to modify `.editorconfig.example` to match your own preferences, then renamed the file to `.editorconfig` and use an IDE or editor that supports [EditorConfig](http://editorconfig.org/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbradleyboy%2Fyarsk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbradleyboy%2Fyarsk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbradleyboy%2Fyarsk/lists"}