Code Monkey home page Code Monkey logo

power-tools's Introduction

PowerTools

At Power Home Remodeling, we have created foundational bits of code that we use to configure our applications, several of which are cobra-based. We have packaged these individually inside a mono-repo to help engineers more easily maintain and consume them among our suite of applications, products and features.

Packages ๐Ÿ“ฆ

power-tools currently contains the following packages (marked for release to rubygems ๐Ÿ’Ž or npm โ˜•๏ธ):

nitro_config ๐Ÿ’Ž

When included in a Rails application, NitroConfig loads the configuration file at config/config.yml within the application directory and makes its values available at NitroConfig.config. Config values are loaded based on the Rails environment, permitting the specification of multiple environments' configurations in a single file.

audit_tracker ๐Ÿ’Ž

AuditTracker helps you centralize data tracking configuration to be used across different models.

lumberaxe ๐Ÿ’Ž

Lumberaxe handles logging output formatting.

consent ๐Ÿ’Ž

Consent provides permission-based authorization.

Installation ๐Ÿ› 

These packages are all meant to install inside of an application and aren't intended to stand alone; currently, they are all published to RubyGems and you can use standard Bundler methods to install them.

# Gemfile

gem "nitro_config"

Local Development ๐Ÿ‘ฉ๐Ÿฝโ€๐Ÿ’ป

If a change needs to be made to a package, the easiest way to develop and test locally would be to temporarily change your Gemfile to point to your local version of the package:

# Gemfile

gem "nitro_config", path: "~/path/to/gems/nitro_config"

โš ๏ธ Please note that such a change should never be committed, as other users would not have access to the same path your computer. โš ๏ธ

Testing ๐Ÿ”

The expectation for these packages is that additions/modifications should be covered in the specs.

UI testing will be done by opening a PR/branch, and then opening a PR for a client application that points to the version on the corresponding branch.

# Gemfile

gem "nitro_config", git: "https://github.com/powerhome/power-tools", glob: "packages/nitro_config/nitro_config.gemspec", branch: "example-branch"

Release ๐Ÿš€

Releases will be published according to Semantic Versioning and it is the responsibility of the consumers to keep their application dependencies up to date. We recommend leveraging renovatebot ๐Ÿค–

Maintenance ๐Ÿšง

These packages are maintained by Power's Heroes for Hire team.

Contributing ๐Ÿ’™

Contributions are welcome! Feel free to open a ticket or a PR.

power-tools's People

Contributors

dependabot[bot] avatar renovate[bot] avatar that-jill avatar wadewinningham avatar xjunior 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.