Giter Site home page Giter Site logo

arneson / solidarity Goto Github PK

View Code? Open in Web Editor NEW

This project forked from infinitered/solidarity

0.0 2.0 0.0 2.42 MB

Solidarity is an environment checker for project dependencies across multiple machines.

Home Page: https://infinitered.github.io/solidarity/

License: MIT License

TypeScript 97.57% JavaScript 0.31% HTML 2.12%

solidarity's Introduction

Solidarity is an environment checker for project dependencies across multiple machines.


Build Status Build Status Codecov npm version

When the same exact code works on one machine but not another, Solidarity is the answer

Docs Website

https://infinitered.github.io/solidarity/


We now return you to your regularly scheduled ReadMe


Install

Install the command globally OR use via node_modules. It's suggested you install your snapshot plugins in the same place.

Note: Node.js version must be >= 7.6.0.

# example of installing global with npm and react-native snapshot
$ npm i -g solidarity solidarity-react-native

# example of installing local with yarn and elixir snapshot (dev dependencies)
$ yarn add solidarity solidarity-elixir --dev

How do I use it?

Using solidarity is easy! Run the following command to check the current project environment.

$ solidarity

This command looks for the .solidarity file in the working directory, and then runs a check of the containing rules against your environment. The command exit code is tied to the success of the solidarity check for testing frameworks.

Write your Solidarity file by hand, or use a snapshot.

How do I update it to my machine specs?

Environment updates can be stored to solidarity quickly.

$ solidarity snapshot

The snapshot parameter will update the rules in the .solidarity file to the current system specs. By default a snapshot will be strict with the versions of everything detected. But, semantic versioning is supported.

How do I create my first snapshot?

If no .solidarity file is present, then solidarity snapshot prompts you to identify the technology your project depends on.

$ solidarity snapshot
No `.solidarity` file found for this project.  Would you like to create one? (Y/n)

Custom rule-sets can be created by modifying the .solidarity file by hand, or by creating a solidarity plugin for a given technology. See documentation for how you can create your own.

How do I update my snapshots?

Given there is already a .solidarity file present, then you can run solidarity snapshot [rule]

$ solidarity snapshot cli node

Solidarity will follow up with aditional questions to help drill down your new snapshot rule.

Cross Platform

Solidarity works with Mac/Linux/Windows environments. CI tests all rules with each platform on every update.

Using Solidarity for GitHub Reports

Solidarity Reports You've already identified everything that's important to your project. So when anyone files bugs on your repo, they can just report using Solidarity!

Just run solidarity report

The resulting output is copy/paste markdown. If you're confused, here's the full blog post.

Project Support

Open Source

Solidarity, as open source, is free to use and always will be ❤️. It's MIT Licensed and we'll always do our best to help and quickly answer issues. If you'd like to get a hold of us, join our community slack and look for the #solidarity room.

Premium

Infinite Red offers premium Solidarity support and general mobile app design/development services. Email us at [email protected] to get in touch with us for more details.

Additional Info

You can help!

License

The MIT License (MIT). Please see License File for more information.

NPM Details

NPM

solidarity's People

Contributors

adrienthiery avatar bnaya avatar campionfellin avatar charpeni avatar ddncn avatar deiga avatar gantman avatar grigori-gru avatar jamonholmgren avatar jokosu10 avatar kevinvangelder avatar mknsri avatar morgandonze avatar patrickkempff avatar rmnegatives avatar siakaramalegos avatar skellock avatar tabrindle avatar taylanken avatar thedeany avatar travisbuddy avatar willrax avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.