0.0
The project is in a healthy, maintained state
FeatureMap helps identify and manage features within large Ruby and Rails applications. This gem works best in large, usually monolithic code bases for applications that incorporate a wide range of features with various dependencies.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

~> 1.9
~> 7.2
~> 13.2
~> 3.0
~> 3.24

Runtime

 Project Readme

FeatureMap

This gem helps identify and manage features within large applications.

For usage documentation, please see the README Site.

Installation

FeatureMap may be installed directly into a Ruby environment or Ruby on Rails application from RubyGems.


Global Installation

gem install feature_map

Gemfile

`gem 'feature_map', '~> 1.2'``

Inline
FeatureMap may also be executed without direct installation via inline bundling. For more information see [Inline Execution]({{ '/getting-started/inline-execution' | relative_url }}).

FeatureMap Gem Structure

Check out lib/feature_map.rb to see the public API.

Check out feature_map_spec.rb to see examples of how the feature map utility is used.

Development

Ruby Gem

Contributions are welcome and appreciated. Here's how to get started:

  • clone repo: $ git clone [email protected]:Beyond-Finance/feature_map.git
  • install dependencies: $ bundle install
  • run tests: $ bin/rspec
  • run Rubocop: $ bin/rubocop

That's it! Assuming you can complete all of these steps without any error or issues, you should be good to go.

Documentation Site

The documentation site is a React application which is built on the Vite framework. There are two steps to building the site: first, the skeleton of the site is compiled and committed into this repository; second, the various artifacts are injected from a host repository into a project-specific instance of the site via bin/featuremap docs.

Compilation of the build asset is done via npm run build from within the docs folder. This compiles the React app into a single static file which is placed in ./lib/feature_map/private/docs/index.html.

The documentation site may be run locally to aid in development via bin/docs. It will generate test coverage and metrics data, and make it available to the docs site running in development mode.

More information on the development of the documentation site may be found in the Docs Readme.

README Site

The README site is built with Jekyll and TailwindCSS and is hosted via GitHub Pages at: https://beyond-finance.github.io/feature_map. It can be run locally to aid in development via bin/readme.

Publication

When a new version of the gem is ready to be published, please follow these steps:

  • Update spec.version value in the feature_map.gemspec file.
    • Assign a version to this release in accordance with Semantic Versioning based on the changes contained in this release.
  • Create a new release tag in Github (link) with a value that matches the new Gemspec version.
  • Checkout the release tag in your local environment.
  • Publish the new version of the gem to RubyGems (docs), which largely consists of running the following commands:
    • Build a new version of the gem: gem build feature_map.gemspec
    • Authenticate with rubygems.org: gem signin
    • Publish the new version of the gem: gem push feature_map-[NEW_VERSION].gem

Colophon

The structure and execution of FeatureMap's initial version was based on the gem CodeOwnership.

The structure and styling of the README site was based on a theme from Spinal.