{"id":13819209,"url":"https://github.com/LocalOrbit/localorbit","last_synced_at":"2025-05-16T04:33:04.218Z","repository":{"id":11541758,"uuid":"14026786","full_name":"LocalOrbit/localorbit","owner":"LocalOrbit","description":"Local Orbit is an open source web application and service that empowers food hubs to efficiently sell and distribute local food.","archived":false,"fork":false,"pushed_at":"2023-01-03T14:20:43.000Z","size":26628,"stargazers_count":16,"open_issues_count":175,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-09T05:02:10.132Z","etag":null,"topics":["agriculture","food-delivery","food-hubs","local-food","open-source","rails","react","ruby"],"latest_commit_sha":null,"homepage":"https://localorbit.com","language":"Ruby","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/LocalOrbit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-10-31T19:47:48.000Z","updated_at":"2023-03-28T19:09:02.000Z","dependencies_parsed_at":"2023-01-11T20:16:47.831Z","dependency_job_id":null,"html_url":"https://github.com/LocalOrbit/localorbit","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LocalOrbit%2Flocalorbit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LocalOrbit%2Flocalorbit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LocalOrbit%2Flocalorbit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LocalOrbit%2Flocalorbit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LocalOrbit","download_url":"https://codeload.github.com/LocalOrbit/localorbit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254469844,"owners_count":22076563,"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":["agriculture","food-delivery","food-hubs","local-food","open-source","rails","react","ruby"],"created_at":"2024-08-04T08:00:42.261Z","updated_at":"2025-05-16T04:32:59.210Z","avatar_url":"https://github.com/LocalOrbit.png","language":"Ruby","funding_links":[],"categories":["Happy Exploring 🤘"],"sub_categories":[],"readme":"# Local Orbit\n\n[![CircleCI](https://circleci.com/gh/LocalOrbit/localorbit/tree/master.svg?style=svg)](https://circleci.com/gh/LocalOrbit/localorbit/tree/master)\n\n* **[Staging Deploy (Preview)](https://github.com/LocalOrbit/localorbit/compare/staging...master)**\n* **[Production Deploy (Preview)](https://github.com/LocalOrbit/localorbit/compare/production...staging)**\n\nSee the `docs/` directory for more documentation.\n\n## Developer Setup\n\n1. Install `ruby 2.3.8` (use a ruby version manage like [rbenv](https://github.com/rbenv/rbenv) or [rvm](https://rvm.io/))\n1. Clone this repo `git clone git@github.com:LocalOrbit/localorbit.git`, `cd localorbit` into it\n1. Install dependencies (for MacOs) via [Homebrew](https://brew.sh/) with `brew bundle`. Other platforms see requirements in [`Brewfile`](./Brewfile).\n1. `bundle`\n1. `cp config/application.yml{.example,}` and modify if needed, see [Environment variables](#environment_variables) below\n1. `cp config/database.yml{.example,}` and modify if needed (Some modification is probably necessary. Try adding `template: template0`)\n1. `yarn`\n1. `rake db:setup` - runs `db:create`, `db:schema:load` and `db:seed`\n1. `rake db:seed:development` - See [Test Accounts](#test-accounts) section for usernames and passwords\n1. `rails server`\n1.  Add `127.0.0.1 localtest.me` to `/etc/hosts`\n1.  Go to http://localtest.me:3000 in a browser (we use localtest.me to always point to 127.0.0.1 so we can use subdomains, which localhost doesn't allow.)\n1.  Run delayed job in foreground with `./bin/delayed_job run` (caveat: delete jobs from that table first if loading in production data)\n\n#### Other required services to setup\n\n* See [stripe howto](docs/stripe_in_development.md) for configuring stripe for development.\n* Setup a [mailtrap](https://mailtrap.io/) account and put the username and password into your application.yml\n* AWS is used by the app to store images as well as transferring db backups between environments.\n  1. Get an invitation to the AWS account\n  2. Configure an API key and secret\n  3. [Configure the AWS cli tools](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) (which should already be installed via `brew bundle`.)\n\n### Environment variables\n\n`ENV` is generally accessed via [figaro](https://github.com/laserlemon/figaro) in application code. Figaro enforces presence of required `ENV` vars via [`config/initializers/figaro.rb`](./config/figaro.rb). In `development` and local `test` environments we populate/customize `ENV` via figaro with `config/application.yml` (see an [example application.yml](./config/application.yml.example)). For Heroku `staging` and `production` environments the `ENV` vars are populated with [Heroku cli](https://devcenter.heroku.com/articles/config-vars). For [CircleCI](https://circleci.com/gh/LocalOrbit), sensitive `ENV` vars like API keys and other secrets are managed via the [Circle CI web application](https://circleci.com/gh/LocalOrbit/localorbit/edit#env-vars), and non-sensitive `ENV` vars are managed via the [`.circleci/config.yml`](./.circleci/config.yml).\n\n### Production Setup\n\n* At least one Market must be created before creating Organizations\n\n### Test Accounts\nRunning `rake db:seed:development` makes the following test accounts available\n\n*Selling Organization*\nEmail: seller@example.com\nPassword: password1\n\n*Buying Organization*\nEmail: buyer@example.com\nPassword: password1\n\n*Market Manager*\nEmail: mm@example.com\nPassword: password1\n\n*Admin*\nEmail: admin@example.com\nPassword: password1\n\n### Javascript Specs\n\nSpecs live in spec/javascripts/\\*.js.coffee\n\nRun suite on command line:  bundle exec rake konacha:run\nRun suite via browser:  bundle exec rake konacha:serve (then visit http://localhost:3500)\nRun suite automatically on changes to javascript sources or specs:  bundle exec guard\n\n\n### Cloning staging for local development\n\nRun `rake db:dump:staging`\n\n**WARNING: This will replace EVERYTHING in your development db with what is currently on staging**\n\n### Load production data into development or staging\n\nBelow is a quick overview, for more granular tasks see [production-copy.rake](lib/tasks/production-copy.rake).\n\n#### Into development\n\nIf no existing cleansed production dump, all-in-one go:\n\n    rake production_copy:stomp_dev_db DOWNLOAD_NEW=YES REALLY=YES\n\nIf an existing dump:\n\n    rake production_copy:stomp_dev_db REALLY=YES\n\nOr two step\n\n    rake production_copy:bring_down\n    rake production_copy:stomp_dev_db REALLY=YES\n\n#### Into staging\n\nLoad production data into staging via development, will also sync s3 from production to staging:\n\n    rake production_copy:to[staging]\n\nOr if you already have a recent copy of production in development do:\n\n    rake production_copy:push_out[staging]\n\n\n### Heroku Notes\n\nThere are _binstub_ helpers in `$RAILS_ROOT/bin` that allow for shortcuts when dealing with Heroku environments. See [binstubs plugin](https://github.com/tpope/heroku-binstubs) for usage \u0026 more info.\n## Contributing\n\nSee [development process](docs/development_process.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLocalOrbit%2Flocalorbit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLocalOrbit%2Flocalorbit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLocalOrbit%2Flocalorbit/lists"}