{"id":22363460,"url":"https://github.com/dmarcoux/ruby_templates","last_synced_at":"2025-10-24T03:41:36.704Z","repository":{"id":52711368,"uuid":"93939998","full_name":"dmarcoux/ruby_templates","owner":"dmarcoux","description":"Templates for common files/configs I use in Ruby projects","archived":false,"fork":false,"pushed_at":"2024-01-22T13:53:31.000Z","size":127,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-31T16:28:56.725Z","etag":null,"topics":["rubocop","ruby"],"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/dmarcoux.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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-06-10T13:13:22.000Z","updated_at":"2022-02-22T20:01:53.000Z","dependencies_parsed_at":"2023-11-15T17:41:27.907Z","dependency_job_id":"48795307-7804-4f05-abc7-dd94c42f3f61","html_url":"https://github.com/dmarcoux/ruby_templates","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmarcoux%2Fruby_templates","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmarcoux%2Fruby_templates/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmarcoux%2Fruby_templates/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmarcoux%2Fruby_templates/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dmarcoux","download_url":"https://codeload.github.com/dmarcoux/ruby_templates/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245678902,"owners_count":20654738,"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":["rubocop","ruby"],"created_at":"2024-12-04T17:15:12.937Z","updated_at":"2025-10-24T03:41:36.628Z","avatar_url":"https://github.com/dmarcoux.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003ca href=\"https://github.com/dmarcoux/ruby_templates\"\u003edmarcoux/ruby_templates\u003c/a\u003e\n\nTemplates for common files/configs I use in Ruby projects.\n\n## How to Use This Template\n\n1. Create a new repository based on this repository:\n\n- Go to this [repository's page](https://github.com/dmarcoux/ruby_templates),\n  click on the `Use this template` button and follow instructions.\n\n  *OR*\n\n- With [GitHub's CLI](https://github.com/cli/cli), run `gh repo create\n  NEW_REPOSITORY_NAME --template=dmarcoux/ruby_templates`.\n\n2. Search for `CHANGEME` in the newly created repository to adapt it to your\n   needs.\n\n3. Remove `Gemfile.lock` since it's only in this repository to be able to test\n   the GitHub Actions configuration.\n\n## [Dependabot](https://dependabot.com/)\n\nAutomated dependency updates. Details in the [config](./.github/dependabot.yml).\n\n## [GitHub Actions](https://docs.github.com/en/actions)\n\nLinters, specs and more. Details in the files under [.github/workflows](./.github/workflows).\n\n## nix-shell for Ruby\n\nReproducible development environment for Ruby projects which relies on\n[Nix](https://github.com/NixOS/nix), a purely functional and cross-platform\npackage manager.\n\n### Usage\n\n1. Copy [shell.nix](./shell.nix) at the root of your Ruby project.\n2. Add the content of [.gitignore](./.gitignore) to your own _.gitignore_.\n3. Start with `nix-shell --pure`.\n\n## Docker and Docker Compose\n\nMinimal setup for a *Rails* application with the following features:\n- Caching installation of gems within a *Docker* volume\n- *PostgreSQL* database\n- *Redis* in-memory database\n- Keep command history for Bash, IRB and Pry (files created by a [rake task](./lib/tasks/development.rake))\n\n### Usage\n\n- Start the web application which is available at http://localhost:3000: `docker-compose up web_app`\n- Start shell inside the web application container: `docker-compose run --rm --service-ports web_app bash`\n- To generate a Rails project from scratch inside the container:\n    ```bash\n    # Install rails to be able to run `rails new`\n    gem install rails\n    # Generate Rails project as usual...\n    rails new my_app\n    ```\n- Run specific specs: `docker-compose run web_app bash -c 'bundle exec rspec spec/models/user_spec.rb:12'`\n- Create and migrate the database for development and only load the schema for test: `docker-compose run web_app bash -c 'bundle exec rake db:create db:migrate \u0026\u0026 RAILS_ENV=test bundle exec rake db:test:load'`\n\n## setup_example_files.sh\n\nQuickly setup example files under `config/` by running `./setup_example_files.sh`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmarcoux%2Fruby_templates","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmarcoux%2Fruby_templates","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmarcoux%2Fruby_templates/lists"}