{"id":13483605,"url":"https://github.com/kaize/configus","last_synced_at":"2025-03-27T14:31:23.750Z","repository":{"id":1791033,"uuid":"2714950","full_name":"kaize/configus","owner":"kaize","description":"Configus helps you easily manage environment specific settings","archived":false,"fork":false,"pushed_at":"2018-11-08T23:01:48.000Z","size":29,"stargazers_count":61,"open_issues_count":0,"forks_count":12,"subscribers_count":29,"default_branch":"master","last_synced_at":"2025-03-12T19:16:10.165Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"otalk/RTCPeerConnection","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kaize.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":"2011-11-05T11:52:51.000Z","updated_at":"2022-09-28T08:03:33.000Z","dependencies_parsed_at":"2022-08-05T20:16:21.240Z","dependency_job_id":null,"html_url":"https://github.com/kaize/configus","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaize%2Fconfigus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaize%2Fconfigus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaize%2Fconfigus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaize%2Fconfigus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kaize","download_url":"https://codeload.github.com/kaize/configus/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245863091,"owners_count":20684787,"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":[],"created_at":"2024-07-31T17:01:13.242Z","updated_at":"2025-03-27T14:31:23.432Z","avatar_url":"https://github.com/kaize.png","language":"Ruby","readme":"# Configus\n\n[![Gem Version](https://badge.fury.io/rb/configus.svg)](https://rubygems.org/gems/configus)\n[![Build Status](https://travis-ci.org/kaize/configus.svg)](https://travis-ci.org/kaize/configus)\n[![Dependency Status](https://gemnasium.com/kaize/configus.svg)](https://gemnasium.com/kaize/configus)\n[![Code Climate](https://codeclimate.com/github/kaize/configus.svg)](https://codeclimate.com/github/kaize/configus)\n[![Coverage Status](https://coveralls.io/repos/kaize/configus/badge.svg?branch=master)](https://coveralls.io/r/kaize/configus)\n\n## Summary\n\nConfigus helps you easily manage environment specific settings\n\n## Installing\n\nAdd this to your `Gemfile`:\n\n    gem \"configus\"\n\n## Examples\n\n### Definition\n\n``` ruby\nConfigus.build :development do # set current environment\n  env :production do\n    site_name 'Example'\n    web do\n      domain   'example.com'\n      protocol 'https'\n      port     80\n      uri      -\u003e { \"#{protocol}://#{domain}:#{port}\" }\n    end\n    site_uri   -\u003e { web.uri }\n    email do\n      pop do\n        address 'pop.example.com'\n        port    110\n      end\n      smtp do\n        address 'smtp.example.com'\n        port    25\n      end\n    end\n  end\n\n  env :development, :parent =\u003e :production do\n    web do\n      domain   'localhost'\n      protocol 'http'\n      port      9292\n    end\n    email do\n      smtp do\n        address 'smpt.text.example.com'\n      end\n    end\n  end\nend\n```\n\n### Usage\n\n    configus.site_name      # =\u003e 'Example'\n    configus.web.uri        # =\u003e 'https://example.com:80'\n    configus.site_uri       # =\u003e 'https://example.com:80'\n    configus.email.pop.port # =\u003e 110\n\n### Rails\n\ndefine your config in `lib/configus.rb`\n\n    Configus.build Rails.env do\n      # settings\n    end\n\nreload\n\n    # config/environments/development.rb\n    ActionDispatch::Reloader.to_prepare do\n      load Rails.root.join('lib/configus.rb')\n    end\n\n## Similar\n\n* https://github.com/markbates/configatron\n* https://github.com/railsjedi/rails_config\n","funding_links":[],"categories":["Configuration"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaize%2Fconfigus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkaize%2Fconfigus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaize%2Fconfigus/lists"}