{"id":29586663,"url":"https://github.com/basecamp/orc","last_synced_at":"2025-07-20T03:31:18.106Z","repository":{"id":36828190,"uuid":"41135085","full_name":"basecamp/orc","owner":"basecamp","description":"Orc(hestrator) - A really bad pow.cx clone for linux","archived":false,"fork":false,"pushed_at":"2018-04-30T17:35:19.000Z","size":313,"stargazers_count":11,"open_issues_count":0,"forks_count":3,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-07-18T05:34:50.984Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/basecamp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-21T04:36:27.000Z","updated_at":"2025-06-01T03:35:42.000Z","dependencies_parsed_at":"2022-09-01T03:13:03.521Z","dependency_job_id":null,"html_url":"https://github.com/basecamp/orc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/basecamp/orc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basecamp%2Forc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basecamp%2Forc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basecamp%2Forc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basecamp%2Forc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/basecamp","download_url":"https://codeload.github.com/basecamp/orc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basecamp%2Forc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266063100,"owners_count":23870717,"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":"2025-07-20T03:31:00.361Z","updated_at":"2025-07-20T03:31:18.093Z","avatar_url":"https://github.com/basecamp.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Orc(hestrator)\n\nThis is a script to emulate some of pow's functionality.\n\nFor it all to work, it requires:\n\n1. A functional nginx installation (provided)\n2. A functional dnsmasq installation (provided)\n3. An app that listens on `$app_dir/tmp/app.sock` or a static site that places\nit's content under $app_dir/public\n4. Some familiarity with the command line\n\n## Installation\n\n1. Check out orc into `~/.orc`.\n\n    ~~~ sh\n    $ git clone https://github.com/basecamp/orc.git ~/.orc\n    ~~~\n\n2. Add `orc init` to your shell to enable shims and autocompletion.\n\n    ~~~ sh\n    $ echo 'eval \"$(~/.orc/bin/orc init -)\"' \u003e\u003e ~/.bash_profile\n    ~~~\n\n    _Use `~/.bashrc` on Ubuntu, or `~/.zshrc` for Zsh._\n\n3. Restart your shell so that PATH changes take effect. (Opening a new\n   terminal tab will usually do it.) Now check if orc was set up:\n\n    ~~~ sh\n    $ type orc\n    #=\u003e \"orc is a aliased to _orc_wrapper\"\n    ~~~\n4. Start the web and dns processes:\n\n    ~~~ sh\n    $ orc install\n    ~~~\nThis will configure our DNS resolver to use our new dns server for the *.devel domain.\n   Here's how we're doing it on OS X:\n\n    ~~~ sh\n    $ echo nameserver 127.0.0.1 | \\\n      sudo tee /etc/resolver/devel /etc/resolver/staging\n    ~~~\nFor Linux, please install dnsmasq and add the following to your config:\n    ~~~ sh\n    address=/.devel/127.0.0.1\n    ~~~\n\n## Uninstalling\n\n~~~ sh\n$ orc uninstall\n~~~\n\nAnd remove the `eval \"$(~/.orc/bin/orc init -)\"` line from your `.bashrc`/`.bash_profile`/`.zshrc`.\n\n## Adding apps to orc\n\n~~~ sh\n$ orc add /path/to/my-cool-app\n~~~\n\nYou can now go to http://my-cool-app.dev/ and see your app running!\n\n## Removing apps from orc\n\n~~~ sh\n$ orc remove my-cool-app\n~~~\nThis will remove the link to the app and orc cannot manage it anymore.\n\n## Starting and Stopping Apps\nThis is in flux. More details as this architecture emerges.\n\n## Help\nRunning `orc help` is your friend.\n\n## Nginx and dnsmasq\n\nTo handle nginx and dns, we use docker!  [Go install it](https://www.docker.com/products/overview#/install_the_platform).  To get them setup and running, it's pretty easy:\n~~~ sh\n$ orc web start\n~~~\nThis will create AND TRUST a local CA for local https development and start the\ndocker containers.  If you want to watch the nginx logs, run:\n\n~~~ sh\n$ orc web logs\n# or\n$ orc web logs -f\n~~~\n\n## General Architecture\n\nOur general request path will look like this:\n![Docker Dev Request Flow](https://cdn.rawgit.com/anoldguy/orc/master/share/orc/nginx/images/local-docker-dev-request-flow.svg)\n\n\n## Thanks\nMany thanks to @noahhl, @sstephenson, @qrush for their excellent support\nand encouragement!  Thanks to @ernie for the_setup which also influenced the\ndesign; more directly in some ways than others!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbasecamp%2Forc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbasecamp%2Forc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbasecamp%2Forc/lists"}