{"id":15015928,"url":"https://github.com/rubyforgood/flaredown","last_synced_at":"2025-07-30T07:39:12.072Z","repository":{"id":39994227,"uuid":"51873310","full_name":"rubyforgood/Flaredown","owner":"rubyforgood","description":"Flaredown web app and API","archived":false,"fork":false,"pushed_at":"2024-12-14T10:28:13.000Z","size":18365,"stargazers_count":44,"open_issues_count":106,"forks_count":17,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-07-08T18:11:15.549Z","etag":null,"topics":["chronic-illness","ember","emberjs","hacktober-fest","hacktoberfest","hacktoberfest2021","health","mhealth","mongodb","rails","ruby"],"latest_commit_sha":null,"homepage":"http://www.flaredown.com","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubyforgood.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-02-16T21:55:05.000Z","updated_at":"2025-05-19T09:40:42.000Z","dependencies_parsed_at":"2024-03-16T10:29:55.918Z","dependency_job_id":"5b9980dc-e527-4a0d-a7d1-9f095d89b81b","html_url":"https://github.com/rubyforgood/Flaredown","commit_stats":{"total_commits":1365,"total_committers":35,"mean_commits":39.0,"dds":0.6959706959706959,"last_synced_commit":"70e58e7298a69e55933e6d74f50c72d961264449"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rubyforgood/Flaredown","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyforgood%2FFlaredown","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyforgood%2FFlaredown/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyforgood%2FFlaredown/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyforgood%2FFlaredown/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubyforgood","download_url":"https://codeload.github.com/rubyforgood/Flaredown/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyforgood%2FFlaredown/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267832975,"owners_count":24151560,"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","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["chronic-illness","ember","emberjs","hacktober-fest","hacktoberfest","hacktoberfest2021","health","mhealth","mongodb","rails","ruby"],"created_at":"2024-09-24T19:48:09.791Z","updated_at":"2025-07-30T07:39:12.010Z","avatar_url":"https://github.com/rubyforgood.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flaredown\n[![rspec](https://github.com/rubyforgood/Flaredown/actions/workflows/rspec.yml/badge.svg)](https://github.com/rubyforgood/Flaredown/actions/workflows/rspec.yml)\n[![frontend](https://github.com/rubyforgood/Flaredown/actions/workflows/frontend.yml/badge.svg)](https://github.com/rubyforgood/Flaredown/actions/workflows/frontend.yml)\n[![ERB lint](https://github.com/rubyforgood/Flaredown/actions/workflows/erb_lint.yml/badge.svg)](https://github.com/rubyforgood/Flaredown/actions/workflows/erb_lint.yml)\n[![standardrb lint](https://github.com/rubyforgood/Flaredown/actions/workflows/ruby_lint.yml/badge.svg)](https://github.com/rubyforgood/Flaredown/actions/workflows/ruby_lint.yml)\n\nFlaredown makes it easy for people to track symptoms over time, and learn how to control them. Our goal is to analyze the aggregate data from users of this tool to understand the probable effects of treatments and environmental stressors on chronic illness.\n\nHelp would be appreciated! Please join us in [slack #flaredown](https://rubyforgood.herokuapp.com/), raise a GitHub issue, or email \u003ccontact@flaredown\u003e.\n\n## Environment\n\n* PostgreSQL 12.8\n* MongoDB 4.4.9\n* Redis 6.2.3\n* Ruby 3.2.3\n* Node 12.22.6\n\n## Installation\n\nThe application and all dependencies are dockerized and can be run using `docker compose`, so there's no dependencies to install other than Docker.\nAlternatively, you can run the app using the `make` commands available: `make help`\n\nIf you want to run the application on your own machine see the next sections on dependency installations\n\n### Running natively\n\n#### Mac Prerequisites\n\n_If you are running on an M1 mac, run the following command before you start the installation process:_\n```bash\n$env /usr/bin/arch -arm64 /bin/zsh ---login\n```\n\n_Remove all gems before you proceed_\n```bash\ngem uninstall -aIx\n```\n\n#### Backend\n\nYou can install the dependencies via [asdf-vm](https://asdf-vm.com/) declared in the `.tool-versions` file, or:\n- [Ruby Version Manager](https://rvm.io/)\n- [MongoDB installation on OSX](https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/)\n\nOn macOS, you can install `libpq` by running `brew install libpq \u0026\u0026 brew link --force libpq \u0026\u0026 bundle config --local build.pg \"--with-ldflags=-L$(brew --prefix libpq)/lib --with-pg-include=$(brew --prefix libpq)/include\"`, which is required for `bundle install` to succeed.\n\n```bash\ncd backend\necho \"gem: --no-ri --no-rdoc\" \u003e ~/.gemrc\nbundle config set --local without 'production'\nbundle config set --local jobs 5\nbundle config set --local retry 10\nbundle install\ncp env-example .env # You may adjust it however you like\n                    # RVM is going to autoload this on every 'cd' to the directory\nbundle exec rake app:setup\n\ngem install foreman\n```\n\n#### Frontend\n\n```bash\ncd frontend\nnpm install\n```\n\n#### React Native\n\n```bash\ncd native\nnpm install\n```\n\n## Development\n\n### Prerequisites\n\n- Populate the necessary environment parameters with `cp backend/env-example backend/.env \u0026\u0026 cp backend/env-example frontend/.env`\n- Create a [Facebook dev app](https://developers.facebook.com/docs/development/create-an-app) and paste your own ID into `frontend/.env` file's `FACEBOOK_APP_ID` parameter.\n    - Note: This is not necessary in `backend/.env` but we have not yet cleaned up these two files into the necessary components.\n- Seed your database using `make seed` or `bundle exec rails app:setup`\n\n### Running\n\nIf you are running the application natively, run the following to start your server. If you're using docker, this should be up and running already.\n\n```bash\nrake run\n```\n\nVisit your app at [http://localhost:4300](http://localhost:4300) for the current ember application, or [http://localhost:19006](http://localhost:19006) for the React Native version.\n\n## Running tests locally\n\n1. Run `make build` or `docker compose build backend` to ensure the latest backend is built and being run\n2. To run all tests run `make specs` or `script/backend rspec spec spec`, or you can run a specific test suite such as `script/backend rspec spec spec/services/weather_retriever_spec.rb `\n3. Debugging tip: in Ruby code you can add a line that says `debugger` and rspec will automatically break on that line and give you an interactive Ruby shell\n\n## CI\n\nSeveral checks are configured to run on all commits using GitHub Actions, including lint, build and test steps. Definitions can be found in [./.github/workflows](./.github/workflows). Those checks which always run are required to be successful for pull requests to be merged.\n\n## Deployment\n\nDeployments target [Heroku](https://heroku.com). The traditional deployment is manually configured and is composed of two distinct applications (frontend and api) in two environments (staging and production), with automatic deployments to staging of commits to master:\n\n* [flaredown-staging-api](https://dashboard.heroku.com/apps/flaredown-staging-api)\n* [flaredown-staging-webapp](https://dashboard.heroku.com/apps/flaredown-staging-webapp) (https://app.flaredown.com)\n* [flaredown-api](https://dashboard.heroku.com/apps/flaredown-api)\n* [flaredown-webapp](https://dashboard.heroku.com/apps/flaredown-webapp) (https://staging.flaredown.com) (Temporarily https://flaredown-staging-webapp.herokuapp.com/login due to https://github.com/rubyforgood/Flaredown/issues/506)\n\nAddons are used for Heroku Postgres, Heroku Redis, Heroku Scheduler + Papertrail. MongoDB is provided by mongodb.com.\n\n## Style Guide\n\n### 🎨 [Figma Assets](https://www.figma.com/proto/MBVn73pD6JbBkxd65KSZHr/Flaredown-Guide?page-id=0%3A1\u0026node-id=1%3A3\u0026viewport=241%2C48%2C0.45\u0026scaling=contain\u0026starting-point-node-id=1%3A3)\n\n## Common Problems\n* On first load, the app displays a blank beige screen instead of the login screen. Temporary fix is to add  `console.log(process.env.FACEBOOK_APP_ID)` right inside of the module.exports at the top of the `frontend/config/environment.js` file. You can then refresh the page (no need to kill Docker) and this should fix it. You can now remove the log.\n\n## License\nCopyright 2015-2024 Logan Merriam and contributors.\n\nFlaredown is open source software made available under the GPLv3 License. For details see the LICENSE file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubyforgood%2Fflaredown","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frubyforgood%2Fflaredown","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubyforgood%2Fflaredown/lists"}