{"id":13726747,"url":"https://github.com/tenderlove/enterprise","last_synced_at":"2025-04-08T04:17:56.873Z","repository":{"id":595081,"uuid":"230098","full_name":"tenderlove/enterprise","owner":"tenderlove","description":"Make ruby ruby application enter the enterprise with the enterprise gem","archived":false,"fork":false,"pushed_at":"2011-08-27T23:46:11.000Z","size":101,"stargazers_count":155,"open_issues_count":0,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-26T21:09:14.756Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tenderlove.png","metadata":{"files":{"readme":"README.rdoc","changelog":"CHANGELOG.rdoc","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":"2009-06-18T00:34:52.000Z","updated_at":"2024-02-24T11:41:52.000Z","dependencies_parsed_at":"2022-07-07T18:02:20.074Z","dependency_job_id":null,"html_url":"https://github.com/tenderlove/enterprise","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenderlove%2Fenterprise","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenderlove%2Fenterprise/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenderlove%2Fenterprise/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenderlove%2Fenterprise/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tenderlove","download_url":"https://codeload.github.com/tenderlove/enterprise/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247773722,"owners_count":20993639,"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-08-03T01:03:18.938Z","updated_at":"2025-04-08T04:17:56.812Z","avatar_url":"https://github.com/tenderlove.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"= enterprise\n\n* http://github.com/tenderlove/enterprise/\n\n== DESCRIPTION:\n\nWish you could write your Ruby in XML?  Has the fact that Ruby is not\n\"enterprise\" got you down?  Do you feel like your Ruby code could be made to\nbe more \"scalable\"?  Well look no further my friend.  You've found the\nenterprise gem.  Once you install this gem, you too can make Rails scale, Ruby\nfaster, your code more attractive, *and* have more XML in your life.\n\nI'm sure you're asking yourself, \"how can the enterprise gem promise so\nmuch?\".  Well the answer is easy, through the magic of XML!  The enterprise\ngem allows you to write your Ruby code in XML, therefore making your Ruby and\nRails code scale.  Benefits of writing your code in XML include:\n\n* It's easy to read!\n* It scales!\n* Cross platform\n* TRANSFORM! your code using XSLT!\n* Search your AST with XPath *or* CSS!\n\nThe enterprise gem even comes with a handy \"enterprise\" binary to help you\nstart converting your existing *legacy* Ruby code in to scaleable, easy to\nread XML files.  Let's start getting rid of that nasty Ruby code and replacing\nit with XML today!\n\n== FEATURES/PROBLEMS:\n\n* require files completely written in XML\n* convert existing legacy ruby code to XML\n\n== SYNOPSIS:\n\nLet's say you have some legacy Ruby code that looks like this:\n\n  class Foo\n    def hello_world\n      \"bar\"\n    end\n  end\n  \n  puts Foo.new.hello_world\n\nLet's convert that crappy ruby code to XML:\n\n  \u003c?xml version=\"1.0\"?\u003e\n  \u003cs\u003e\n    \u003cblock type=\"Symbol\" value=\"block\"/\u003e\n    \u003cs\u003e\n      \u003cclass type=\"Symbol\" value=\"class\"/\u003e\n      \u003cFoo type=\"Symbol\" value=\"Foo\"/\u003e\n      \u003cspecial type=\"NilClass\" value=\"\"/\u003e\n      \u003cs\u003e\n        \u003cscope type=\"Symbol\" value=\"scope\"/\u003e\n        \u003cs\u003e\n          \u003cdefn type=\"Symbol\" value=\"defn\"/\u003e\n          \u003cspecial type=\"Symbol\" value=\"hello_world\"/\u003e\n          \u003cs\u003e\n            \u003cargs type=\"Symbol\" value=\"args\"/\u003e\n          \u003c/s\u003e\n          \u003cs\u003e\n            \u003cscope type=\"Symbol\" value=\"scope\"/\u003e\n            \u003cs\u003e\n              \u003cblock type=\"Symbol\" value=\"block\"/\u003e\n              \u003cs\u003e\n                \u003cstr type=\"Symbol\" value=\"str\"/\u003e\n                \u003cbar type=\"String\" value=\"bar\"/\u003e\n              \u003c/s\u003e\n            \u003c/s\u003e\n          \u003c/s\u003e\n        \u003c/s\u003e\n      \u003c/s\u003e\n    \u003c/s\u003e\n    \u003cs\u003e\n      \u003ccall type=\"Symbol\" value=\"call\"/\u003e\n      \u003cspecial type=\"NilClass\" value=\"\"/\u003e\n      \u003cputs type=\"Symbol\" value=\"puts\"/\u003e\n      \u003cs\u003e\n        \u003carglist type=\"Symbol\" value=\"arglist\"/\u003e\n        \u003cs\u003e\n          \u003ccall type=\"Symbol\" value=\"call\"/\u003e\n          \u003cs\u003e\n            \u003ccall type=\"Symbol\" value=\"call\"/\u003e\n            \u003cs\u003e\n              \u003cconst type=\"Symbol\" value=\"const\"/\u003e\n              \u003cFoo type=\"Symbol\" value=\"Foo\"/\u003e\n            \u003c/s\u003e\n            \u003cnew type=\"Symbol\" value=\"new\"/\u003e\n            \u003cs\u003e\n              \u003carglist type=\"Symbol\" value=\"arglist\"/\u003e\n            \u003c/s\u003e\n          \u003c/s\u003e\n          \u003cspecial type=\"Symbol\" value=\"hello_world\"/\u003e\n          \u003cs\u003e\n            \u003carglist type=\"Symbol\" value=\"arglist\"/\u003e\n          \u003c/s\u003e\n        \u003c/s\u003e\n      \u003c/s\u003e\n    \u003c/s\u003e\n  \u003c/s\u003e\n\nNow, simply save that XML file out to \"test.xml\".  With the enterprise gem,\nto execute this xml file, we just do:\n\n  $ enterprise_ruby test.xml\n\nenterprise lets you do a require on pure xml files too.  We can load the\ntest.xml file like so:\n\n  require 'rubygems'\n  require 'enterprise'\n  require 'test'\n\nThe final feature is an enterprise migration assistant.  To migrate an entire\nproject to be enterprise, just do this:\n\n  $ enterprise some_directory\n\nTo make a single file enterprise, just give it the filename:\n\n  $ enterprise some_file.rb\n\nI'm sure you're asking yourself, \"how much does this enterprise solution cost\nme?\".  Well, like any good enterprise system, it is insanely expensive.  This\ngem will cost you eleventy billion dollars payable to me, now.\n\n== REQUIREMENTS:\n\nLike all good enterprise solutions, we do our best to get you stuck in a web\nof dependencies.  We are working hard to increase the number of dependencies,\nbut here is the current list\n\n* ruby2ruby\n* ruby_parser\n* nokogiri\n* polyglot\n\n== INSTALL:\n\n* sudo gem install enterprise\n\n== LICENSE:\n\n(The MIT License)\n\nCopyright (c) 2009 Aaron Patterson\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftenderlove%2Fenterprise","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftenderlove%2Fenterprise","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftenderlove%2Fenterprise/lists"}