{"id":15859336,"url":"https://github.com/mitocgroup/recink","last_synced_at":"2025-03-29T20:30:32.934Z","repository":{"id":21024182,"uuid":"90742770","full_name":"MitocGroup/recink","owner":"MitocGroup","description":"REciNK - Rethink Continuous Integration for JavaScript Applications","archived":false,"fork":false,"pushed_at":"2024-12-04T01:48:20.000Z","size":59860,"stargazers_count":14,"open_issues_count":32,"forks_count":5,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-03-11T10:50:17.407Z","etag":null,"topics":["continuous-integration","coverage","e2e-testing","javascript","mocha","npm","testcafe","testing","travis","unit-testing"],"latest_commit_sha":null,"homepage":"https://www.npmjs.org/package/recink","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MitocGroup.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"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}},"created_at":"2017-05-09T12:24:14.000Z","updated_at":"2019-07-15T23:16:00.000Z","dependencies_parsed_at":"2024-04-18T14:54:16.436Z","dependency_job_id":"30955ef2-6748-4971-8062-77c737650180","html_url":"https://github.com/MitocGroup/recink","commit_stats":{"total_commits":884,"total_committers":10,"mean_commits":88.4,"dds":0.4061085972850679,"last_synced_commit":"a0e6fec6cf450f1da374c2d70462ea5eaa3c259c"},"previous_names":["mitocgroup/run-jst"],"tags_count":102,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MitocGroup%2Frecink","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MitocGroup%2Frecink/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MitocGroup%2Frecink/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MitocGroup%2Frecink/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MitocGroup","download_url":"https://codeload.github.com/MitocGroup/recink/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246242630,"owners_count":20746296,"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":["continuous-integration","coverage","e2e-testing","javascript","mocha","npm","testcafe","testing","travis","unit-testing"],"created_at":"2024-10-05T21:05:31.983Z","updated_at":"2025-03-29T20:30:27.910Z","avatar_url":"https://github.com/MitocGroup.png","language":"JavaScript","readme":"REciNK - Rethink Continuous Integration for JavaScript Applications\n===================================================================\n\n[![NPM Version](https://badge.fury.io/js/recink.svg?maxAge=0)](https://npmjs.org/package/recink)\n[![Build Status](https://travis-ci.org/MitocGroup/recink.svg?branch=master\u0026maxAge=0)](https://travis-ci.org/MitocGroup/recink)\n[![Code Climate](https://codeclimate.com/github/MitocGroup/recink/badges/coverage.svg?maxAge=0)](https://codeclimate.com/github/MitocGroup/recink)\n[![API Docs](https://mitocgroup.github.io/recink/api/badge.svg?maxAge=0)](https://mitocgroup.github.io/recink/api/)\n\n\nREciNK was born from our need to automate the execution of JavaScript tests.\nWe quickly realized that we need to RETHINK (aka `REciNK`) entire Continuous\nIntegration process for JavaScript applications. Similar to `.travis.yml`, we\nempower developers to simply drop the `.recink.yml` config file into GitHub\nrepository and follow below Getting Started guide to use it as part of their\nContinuous Integration pipeline (maybe even extend to Continuous Deployment).\n\n\n# Features\n\n- [Install](https://github.com/MitocGroup/recink#installation).\n[Configure](https://github.com/MitocGroup/recink/blob/master/docs/guide.md#configuring-github-project).\n[Use](https://github.com/MitocGroup/recink#usage).\n- Multi-module support for\n[consolidated coverage](https://github.com/MitocGroup/recink/blob/master/bin/templates/.recink.yml#L50).\n- Built-in support for [Travis](https://travis-ci.org),\n[NPM](https://www.npmjs.com), [Chai](http://chaijs.com),\n[Mocha](http://mochajs.org), [Istanbul](https://istanbul.js.org),\n[TestCafe](https://devexpress.github.io/testcafe).\n- Amazon S3 powered\n[caching](https://github.com/MitocGroup/recink/blob/master/bin/templates/.recink.yml#L10).\n- [Extendable](https://github.com/MitocGroup/recink#components).\n[Debuggable](https://github.com/MitocGroup/recink#debugging).\n[Documented](https://github.com/MitocGroup/recink#documentation).\n\n\n# Prerequisites\n\n- [x] Git \u003e= v1.x\n- [x] Node.js \u003e= v6.x\n- [x] NPM \u003e= v3.x\n\n\u003e Use [nvm](https://github.com/creationix/nvm#installation) to install and\nmanage different versions of Node.js; Ideally, use v8+ for faster performance\n\n\n# Installation\n\n`npm install -g recink`\n\n\n# Getting Started\n\n@See [User Guide](https://github.com/MitocGroup/recink/blob/master/docs/guide.md#configuring-github-project)\n\n\n# Usage\n\n```shell\nrecink run [name] [path]               # Run a generic component\nrecink run unit [path]                 # Run unit tests                              \nrecink run e2e [path]                  # Run end to end tests                        \nrecink configure recink [path]         # Configure REciNK                            \nrecink configure travis [path]         # Configure Travis                            \nrecink travis encrypt [path]           # Encrypt Travis environment variables        \nrecink travis lint [path]              # Lint Travis configuration                   \nrecink component generate [path]       # Generate REciNK boilerplate component       \nrecink component add [name...]         # Add an REciNK component to the registry     \nrecink component remove [name...]      # Remove an REciNK component from the registry\nrecink component list                  # List REciNK components from the registry    \nrecink help \u003ccommand\u003e                  # Display help for a specific command   \n```\n\n\n# Debugging\n\nTo enable debug mode for both `unit` and `e2e` runtimes use `DEBUG=* recink run unit|e2e`.\n\n[TestCafe](https://devexpress.github.io/testcafe) offers amazing debugging capabilities\n[documented here](http://devexpress.github.io/testcafe/documentation/test-api/debugging.html).\n\nWe are using [Puppeteer](https://github.com/GoogleChrome/puppeteer)\nas default browser, which provides native debugging capabilities\n[documented here](https://github.com/GoogleChrome/puppeteer#debugging-tips).\n\n\u003e Use `-v` flag to enable verbose mode on any `recink` command.\n\n\n# Supported CI Platforms\n\n- [x] [Travis](https://travis-ci.org)\n- [x] [Travis Pro](https://travis-ci.com)\n\n\n# Documentation\n\n- [x] [Quick Start Guide](https://github.com/MitocGroup/recink/blob/master/docs/guide.md)\n- [x] [Crafting Components](https://github.com/MitocGroup/recink/blob/master/docs/component-guide.md)\n- [x] [API Docs](https://mitocgroup.github.io/recink/api/identifiers.html)\n- [x] [Module Diagram](https://mitocgroup.github.io/recink/module-diagram.html)\n- [x] [FAQ](https://github.com/MitocGroup/recink/blob/master/docs/faq.md)\n\n\n# Components\n\n- :house: [CodeClimate](https://github.com/MitocGroup/recink/blob/master/components/codeclimate/README.md)\n- :house: [Snyk.io](https://github.com/MitocGroup/recink/blob/master/components/snyk/README.md)\n- :house: [PageSpeed](https://github.com/MitocGroup/recink/blob/master/components/pagespeed/README.md)\n- :house: [Comment](https://github.com/MitocGroup/recink/blob/master/components/comment/README.md)\n- :house: [Terraform](https://github.com/MitocGroup/recink/blob/master/components/terraform/README.md)\n\n\u003e Explore in-house built components [here](https://github.com/MitocGroup/recink/tree/master/components)\n\n\n# Projects Using \"REciNK\"\n\n- [Deep Framework](https://github.com/MitocGroup/deep-framework/blob/master/.recink.yml)\n\n\u003e To add you project to this list please open a PR ;)\n\n\n# Roadmap\n\n- [x] Implement smart cache invalidation\n- [x] Add support for external components\n- [x] Add support for fully automated `Travis` configuration \n- [x] Add support for End-to-End tests\n- [x] Add component development guide\n- [x] Add unit tests for critical functionality\n- [x] Decouple e2e component\n- [ ] Decouple unit component\n- [ ] Decouple coverage component\n- [ ] Add support for different CI platforms\n- [ ] Craft a cool logo for the project :alien:\n- [ ] Add unit tests to cover at least 80% of codebase\n\n\n# Sponsors\n\nThis repository is being sponsored by:\n\n- [Mitoc Group](https://www.mitocgroup.com)\n- [AdTechMedia](https://www.adtechmedia.io)\n\n\n# License\n\nREciNK is released under the [MIT license][1].\n\n[1]: https://github.com/MitocGroup/recink/blob/master/LICENSE.md\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitocgroup%2Frecink","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmitocgroup%2Frecink","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitocgroup%2Frecink/lists"}