{"id":13463314,"url":"https://github.com/activescaffold/active_scaffold","last_synced_at":"2026-10-19T16:39:06.518Z","repository":{"id":400370,"uuid":"18639","full_name":"activescaffold/active_scaffold","owner":"activescaffold","description":"Save time and headaches, and create a more easily maintainable set of pages, with ActiveScaffold. ActiveScaffold handles all your CRUD (create, read, update, delete) user interface needs, leaving you more time to focus on more challenging (and interesting!) problems.","archived":false,"fork":false,"pushed_at":"2026-10-14T12:30:23.000Z","size":11393,"stargazers_count":1134,"open_issues_count":11,"forks_count":329,"subscribers_count":24,"default_branch":"master","last_synced_at":"2026-10-14T23:35:37.091Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://activescaffold.eu","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/activescaffold.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.rdoc","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null},"funding":"In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation."},"created_at":"2008-05-21T17:47:42.000Z","updated_at":"2026-10-06T15:06:11.000Z","dependencies_parsed_at":"2026-10-06T17:05:28.425Z","dependency_job_id":"2f25f8a8-4c02-46f3-9907-e04e0552f7c5","html_url":"https://github.com/activescaffold/active_scaffold","commit_stats":{"total_commits":5172,"total_committers":152,"mean_commits":"34.026315789473685","dds":0.6643464810518175,"last_synced_commit":"ccfc9d71d5223b80bdc44ed92d105e09c6987783"},"previous_names":[],"tags_count":204,"template":false,"template_full_name":null,"purl":"pkg:github/activescaffold/active_scaffold","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activescaffold%2Factive_scaffold","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activescaffold%2Factive_scaffold/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activescaffold%2Factive_scaffold/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activescaffold%2Factive_scaffold/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/activescaffold","download_url":"https://codeload.github.com/activescaffold/active_scaffold/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activescaffold%2Factive_scaffold/sbom","scorecard":{"id":163946,"data":{"date":"2025-08-11","repo":{"name":"github.com/activescaffold/active_scaffold","commit":"17ba677d108d93411035fb64cbeff5db94e589aa"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.3,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: topLevel 'contents' permission set to 'read': .github/workflows/ci.yml:6","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:74: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:115: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:118: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:123: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:128: update your workflow using https://app.stepsecurity.io/secureworkflow/activescaffold/active_scaffold/ci.yml/master?enable=pin","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   6 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-16T14:19:27.534Z","repository_id":400370,"created_at":"2025-08-16T14:19:27.535Z","updated_at":"2025-08-16T14:19:27.535Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38361675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-19T02:00:06.414Z","response_time":53,"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":[],"created_at":"2024-07-31T13:00:50.628Z","updated_at":"2026-10-19T16:39:06.513Z","avatar_url":"https://github.com/activescaffold.png","language":"Ruby","funding_links":[],"categories":["Rails Plugins","Admin Interface","Ruby"],"sub_categories":["Rails Admin Interfaces"],"readme":"\n# Overview\n[![Build status](https://github.com/activescaffold/active_scaffold/actions/workflows/ci.yml/badge.svg)](https://github.com/activescaffold/active_scaffold/actions/workflows/ci.yml)\n[![Maintainability](https://qlty.sh/gh/activescaffold/projects/active_scaffold/maintainability.svg)](https://qlty.sh/gh/activescaffold/projects/active_scaffold)\n[![Code Coverage](https://qlty.sh/gh/activescaffold/projects/active_scaffold/coverage.svg)](https://qlty.sh/gh/activescaffold/projects/active_scaffold)\n[![Gem Version](https://badge.fury.io/rb/active_scaffold.svg)](https://badge.fury.io/rb/active_scaffold)\n[![Translation Status](https://hosted.weblate.org/widget/activescaffold/svg-badge.svg)](https://hosted.weblate.org/engage/activescaffold/)\n[![Inline docs](https://inch-ci.org/github/activescaffold/active_scaffold.svg?branch=master)](https://inch-ci.org/github/activescaffold/active_scaffold)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\nActiveScaffold provides a quick and powerful user interfaces for CRUD (create, read, update, delete) operations for Rails applications. It offers additonal features including searching, pagination \u0026 layout control.  Rails \u003e= 7.2.0 is supported, ruby \u003e= 3.2 required.\n\n## Branch Details\n\nmaster supports rails \u003e= 7.2.x and ruby \u003e= 3.2.0  \n4-3-stable supports rails \u003e= 7.2.x and \u003c= 8.1.x, and ruby \u003e= 3.2.0\n\nThese versions are not supported anymore:  \n4-2-stable supports rails \u003e= 7.2.x and \u003c= 8.1.x, and ruby \u003e= 3.2.0\n4-1-stable supports rails \u003e= 7.0.x and \u003c= 7.2.x, and ruby \u003e= 3.1.0  \n4-0-stable supports rails \u003e= 6.1.x and \u003c= 7.2.x, and ruby \u003e= 2.5.0  \n3-7-stable supports rails \u003e= 5.2.x and \u003c= 7.1.x, and ruby \u003e= 2.5.0  \n3-6-stable supports rails \u003e= 4.2.x and \u003c= 6.1.x, and ruby \u003e= 2.3.0  \n3-5-stable supports rails \u003e= 4.0.x and \u003c= 5.1.x, and ruby \u003e= 2.0.0  \n3-4-stable supports rails \u003e= 3.2.x and \u003c= 4.2.x, and ruby \u003e= 1.9.3  \n3-3-stable supports rails 3.2.x and ruby \u003e= 1.8  \nrails-3.2 supports Rails 3.1 \u0026 3.2, and is the current source of the 3.2.x line of gems.\n\n## Quick Start\nTo get started with a new Rails project\n\nAdded to Gemfile\n\n```ruby\ngem 'active_scaffold'\n```\n\nAdd jquery-rails to Gemfile, or handle jquery with other tools like webpack or importmap. Also it's possible to load jquery in your layout before application.js using CDN (e.g. jquery-rails-cdn). You can replace @rails/ujs with jquery_ujs, although @rails/ujs should work (never load both).\n\n```ruby\ngem 'jquery-rails'\n```\n\nFor rails 7.x, install generator will add `active_scaffold` to `config/importmap.rb`, `app/javascript/application.js`, and `active_scaffold/manifest.js` to `app/assets/config/manifest.js`. It will add `jquery` and `jquery_ujs` to all the 3 files if jquery-rails gem is available.\n\nFor rails 6.1, install generator will create `app/assets/javascripts/application.js`, add it, and `active_scaffold/manifest.js`, to `app/assets/config/manifest.js` and add `javascript_include_tag` in the layout, as ActiveScaffold doesn't work with webpack. It will add `jquery` to `app/assets/javascripts/application.js` too if query-rails gem is available, although Jquery may be loaded by packs too and it will work, it won't add `jquery_ujs` or `@rails/ujs` as it's added to `app/javascript/packs/application.js` by default.\n\n-- TODO: Add notes about dartsass-rails for propshaft or dartsass-sprockets for sprockets.\n\nRun the following commands\n\n```console\nbundle install\nrails g active_scaffold:install\nrails db:create\nrails g active_scaffold:resource Model [attrs]\nrails db:migrate\n```    \n\nRun the app and visit localhost:3000/\u003cplural_model\u003e\n\nIt's recommended to call `clear_helpers` in ApplicationController, as some helpers defined by ActiveScaffold, such as active_scaffold_enum_options, options_for_association_conditions, association_klass_scoped, are usually overrided for different controllers, and it may cause issues when all helper modules are available to every controller, specially when models have associations or columns with the same name but need different code for those overrided helper methods.\n\n## Stylesheet Loading\n\nActiveScaffold provides flexible stylesheet loading to work with both Sprockets and Propshaft, choose which want you want adding `dartsass-sprockets` or `dartsass-rails` to your Gemfile.\nActiveScaffold has SASS variables to define the colours, but, from version 4.3, the values are moved to CSS variables. It's still possible to change the colours with the old SASS variables, but they may be removed in the future.\n\n### With Propshaft + dartsass-rails\n\nTraditionally, ActiveScaffold loaded all CSS needed, from itself and other ActiveScaffold plugins, and every other library integrated with bridges, such as RecordSelect, Chosen or TinyMCE. It was done using css.erb files, but with propshaft erb is not supported, so a SCSS file is generated when app boots in development and running `rake assets:precompile` on the deployment. There is a task to generate them, `active_scaffold:assets:generate`.\n\nAlso, when using jquery-ui-rails gem, the CSS is generated from the erb in the gem in the same way.\n\n```scss\n// In application.scss\n@use 'active_scaffold/core' with (\n// set values to variables\n);\n```\n\n\n### With Sprockets + dartsass-sprockets\n\nAdd `@use` to application.scss, it will load all CSS needed, jQuery UI if jquery-ui-rails gem is installed, and CSS for other ActiveScaffold plugins and bridges.\n\n```scss\n@use 'active_scaffold' with (\n// set values to variables\n);\n```\n\nIn this case, if you want more flexibility, you have to use `@use` with each individual CSS file that ActiveScaffold provides:\n\n```scss\n@use 'active_scaffold/variables' with (\n// set values to variables\n);\n@use 'active_scaffold/colours';\n@use 'active_scaffold/layout';\n@use 'active_scaffold/images';\n// load CSS for other ActiveScaffold plugins and bridges\n```\n\n## Javascript Loading\n\nThere are 2 options to load JS with propshaft, using importmaps or loading the files individually.\n\n### Propshaft + importmaps\n\nWhen using importmaps, add active_scaffold to importmap, it should have jquery and jquery_ujs or rails_ujs too:\n\n```ruby\npin 'active_scaffold', to: 'active_scaffold/load.js'\npin 'jquery'\npin 'jquery_ujs'\n```\n\nIn the app/javascript/application.js, import jquery, jquery_ujs or rails_ujs and active_scaffold:\n\n```js\nimport 'jquery'\nimport 'jquery_ujs'\nimport 'active_scaffold'\n```\n\nIn the layout, load the importmap modules and call active_scaffold_javascript_tag, that includes some script tags that were in js.erb when using sprockets, so JS ActiveScaffold dependencies are loaded (jquery UI if using jquery-ui-rails, and JS for other ActiveScaffold plugins and bridges): \n\n```erb\n    \u003c%= javascript_importmap_tags %\u003e\n    \u003c%= active_scaffold_javascript_tag %\u003e\n```\n\n### Propshaft\n\nIf you're not using importmaps, then you can load the JS files individually, but you only need to load jquery and jquery_ujs or rails_ujs, and then call active_scaffold_javascript_tag:\n\n```erb\n    \u003c%= javascript_include_tag 'jquery', 'jquery_ujs' %\u003e\n    \u003c%= active_scaffold_javascript_tag %\u003e\n```\n\n### With Sprockets\n\nFor the JS, you can keep using `//= require active_scaffold` in your application.js\n\nIt's possible to use importmaps too, add active_scaffold to importmap, that should have jquery and jquery_ujs or rails_ujs too:\n\n```ruby\npin 'active_scaffold'\npin 'jquery'\npin 'jquery_ujs'\n```\n\nIn the app/javascript/application.js, import jquery, jquery_ujs or rails_ujs and active_scaffold:\n\n```js\nimport 'jquery'\nimport 'jquery_ujs'\nimport 'active_scaffold'\n```\n\nIn the layout, load the importmap modules, in this case we are not using `to` in the importmap, so the js.erb file will be used, that include some generated code, and calling active_scaffold_javascript_tag is not needed.\n\nThreadsafe\n----------\n\nThreadsafe is enabled always since 4.0, and it can't be disabled.  \n\nBreaking Changes\n----------------\n\nWhen upgrading from 3.x, add `active_scaffold/manifest.js` to `app/assets/config/manifest.js` to prevent issues with assets.\n\nChanging column settings on a request has changed, it must use `active_scaffold_config.columns.override(:name)` at least the first time. After calling `columns.override(:name)`, calling it again or calling `columns[:name]` will return the overrided column. It also supports a block. See [Per Request Configuration](https://github.com/activescaffold/active_scaffold/wiki/Per-Request-Configuration) for examples and more comprehensive explanation.\n\nChanging columns for an action (e.g. add or exclude) on a request must use active_scaffold_config.action.override_columns, e.g. active_scaffold_config.list.override_columns, the first time, or use assignment.\n\nIf you have a `_form_association_record` partial view overrided, use `record` local variable instead of `form_association_record`.\n\nIf you have code rendering `form_association_record` partial, then pass `record` local variable, or use `as: :record` if using render with collection key.\n\nConfiguration\n-------------\nSee Wiki for instructions on customising ActiveScaffold and to find the full API details.\n\nCredits\n-------\nActiveScaffold grew out of a project named Ajaxscaffold dating back to 2006. It has had numerous contributors including:\n\nActiveScaffold Gem/Plugin by Scott Rutherford (scott@caronsoftware.com), Richard White (rrwhite@gmail.com), Lance Ivy (lance@cainlevy.net), Ed Moss, Tim Harper and Sergio Cambra (sergio@programatica.es)\n\nUses DhtmlHistory by Brad Neuberg (bkn3@columbia.edu)\nhttp://codinginparadise.org\n\nUses Querystring by Adam Vandenberg\nhttp://adamv.com/dev/javascript/querystring\n\nUses Paginator by Bruce Williams\nhttp://paginator.rubyforge.org/\n\nSupports RecordSelect by Lance Ivy and Sergio Cambra\nhttp://github.com/scambra/recordselect/\n\n\nLicense\n=======\nReleased under the MIT license (included)\n\n---\n\nA ruby translation project managed on [Weblate](http://weblate.org/) that's open to all!\n\n## Contributing to ActiveScaffold\n\n- Edit the translations directly on the [active_scaffold](https://hosted.weblate.org/engage/activescaffold/) project on Weblate.\n- **That's it!**\n- Weblate will send a PR to Github.\n\nHappy translating!\n\n### Powered by\n[![RubyMine logo](https://resources.jetbrains.com/storage/products/company/brand/logos/RubyMine.png)](https://jb.gg/OpenSource)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factivescaffold%2Factive_scaffold","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factivescaffold%2Factive_scaffold","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factivescaffold%2Factive_scaffold/lists"}