{"id":22425219,"url":"https://github.com/2lenet/cruditbundle","last_synced_at":"2026-06-01T09:01:02.651Z","repository":{"id":37099405,"uuid":"340969212","full_name":"2lenet/CruditBundle","owner":"2lenet","description":"Crudit is a symfony complete crud system","archived":false,"fork":false,"pushed_at":"2026-05-21T15:02:34.000Z","size":21041,"stargazers_count":16,"open_issues_count":3,"forks_count":7,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-05-22T00:01:26.549Z","etag":null,"topics":["admin-panel","crud-generator","rad","symfony"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/2lenet.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-02-21T18:07:59.000Z","updated_at":"2026-05-21T15:11:44.000Z","dependencies_parsed_at":"2026-05-21T17:05:23.278Z","dependency_job_id":null,"html_url":"https://github.com/2lenet/CruditBundle","commit_stats":{"total_commits":475,"total_committers":18,"mean_commits":26.38888888888889,"dds":0.6610526315789473,"last_synced_commit":"21b68edbf5b805b502e89c2a7e787040d531ac8e"},"previous_names":[],"tags_count":235,"template":false,"template_full_name":null,"purl":"pkg:github/2lenet/CruditBundle","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2lenet%2FCruditBundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2lenet%2FCruditBundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2lenet%2FCruditBundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2lenet%2FCruditBundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/2lenet","download_url":"https://codeload.github.com/2lenet/CruditBundle/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2lenet%2FCruditBundle/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33767439,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-01T02:00:06.963Z","response_time":115,"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":["admin-panel","crud-generator","rad","symfony"],"created_at":"2024-12-05T19:13:33.347Z","updated_at":"2026-06-01T09:01:02.630Z","avatar_url":"https://github.com/2lenet.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CruditBundle\n\n![](doc/img/crudit.png)\n[![Build Status](https://github.com/2lenet/CruditBundle/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/2lenet/CruditBundle/actions)\n[![Build Status](https://github.com/2lenet/CruditBundle/actions/workflows/validate.yml/badge.svg?branch=main)](https://github.com/2lenet/CruditBundle/actions)\n\nCrudit bundle for 2le.\n\n## Installation\n\nWebpack Encore is required and you need to have a security on your application.\n\n```bash\nrequire 2lenet/crudit-bundle\nnpm install bootstrap@5 sass sass-loader @fortawesome/fontawesome-free easymde --save\n```\n\nJust add the following lines in your template/base.html.twig\n\n```twig\n{% extends '@LleCrudit/layout/sb_admin/layout.html.twig' %}\n\n{% block stylesheets %}\n    {{ encore_entry_link_tags('app') }}\n{% endblock %}\n\n{% block javascripts %}\n    {{ parent() }}\n    {{ encore_entry_script_tags('app') }}\n{% endblock %}\n```\n\nThen, in your assets/js/app.js, you have to add this line :\n\n```js\nimport '../styles/app.scss';\n```\n\nAnd in your assets/styles/app.scss, add this :\n\n```scss\n@import '../../vendor/2lenet/crudit-bundle/assets/sb-admin/css/app.scss';\n```\n\nAll new SCSS files must be imported before the import of Crudit SCSS.\n\n## Recipes\n\n- [Configurations](doc/config.md)\n- [Setup Webpack Encore](doc/webpack_encore.md)\n- [Create a CRUD](doc/crud.md)\n- [Brick](doc/brick.md)\n- [Menu](doc/menu.md)\n- [Setup brand](doc/brand.md)\n- [Filters](doc/filter.md)\n- [Sublist](doc/sublist.md)\n- [Use a FilterSet in your own Controller](doc/filterset_controller.md)\n- [Form types](doc/form_types.md)\n- [Add a map to a list or to a show](doc/map_config.md)\n- [How to export data](doc/export.md)\n- [Workflows](doc/workflow.md)\n- [ProgressBarField](doc/progressbar_field.md)\n- [Markdown](doc/markdown.md)\n- [Color list](doc/color_list.md)\n- [Twig extensions](doc/twig.md)\n- [Test your application](doc/test_your_application.md)\n\n## Principle\n\nA crud is composed by\n\n- an independent controller\n- a crud config class\n- a datasource\n- a filterset if needed\n\nThe layout and menu are independent from the crud. You can integrate easily your own controller in a Crudit Layout\n\n## Feature\n\n### List view\n\n![](doc/img/list.png)\nThe list view has the following features :\n\n- Pagination\n- Sorting\n- Item Actions ( Show, Edit and Delete as standard )\n- List Actions ( Add and Export csv and excel as standard )\n- List grouping ( to save space in repeating values )\n- Batch Action ( see [Batch actions](doc/batch_action.md) )\n- Possibility to color the lines according to a class passed to the entity (\n  see [Coloring the rows in a list](doc/color_list.md) )\n- Layout customisation is possible ( doc TODO / Block principle )\n\nThe list view need a Datasource but is not bounded to Doctrine or any ORM.\n\n### Show view\n\n![](doc/img/show.png)\nThe show view has the following feature :\n\n- Show all fields\n- Title can use the entity to title the object by its name\n- Tabs (see [Tabs](doc/tabs.md))\n- Sublists to show related data ( see [Sublist](doc/sublist.md) )\n- Possibility to color the main card and the title of the show view ( the principle is the same as for the list\n  view: [Coloring the rows in a list](doc/color_list.md)  )\n- Layout customisation is possible ( doc TODO / Block principle )\n\n### Form view\n\n![](doc/img/edit.png)\nThe edit view is a classical Symfony Form. You write your own FormType\n\nCrudit provides some help to be nicely integrated :\n\n- Many FormType ( Datetime, Entity, etc ...)\n- Entity Dropdown based on TomSelect with autocomplete\n- DoctrineFormGuesser to automatically use Crudit FormType.\n- Markdown editor based on EasyMDE\n- Layout customisation is possible ( doc TODO / Block principle )\n\n## JS Format input helper\n\nSome help to check the input validity ( upper, email, ip, etc... )\n\n- [inputFormat](doc/input_format.md)\n\n## Dependencies\n\nCrudit wants to minimise dependencies on not really popular bundles or components\nin order to be able to maintain this bundle for many years and to follow the Symfony Stack development without\ndependency problems.\n\nThe layout is inspired by [SB Admin 2](https://startbootstrap.com/theme/sb-admin-2) but partially rewritten. Many of the\nfeatures of SB Admin wasn't useful for this project.\n\nThe CSS framework used is [Bootstrap 5](https://getbootstrap.com/docs/5.1/getting-started/introduction/).\n\nExcel export uses phpoffice/phpspreadsheet.\n\nDoctrine is needed for the pre-version but the project is designed to work without it. Feel free to contact us if you\nwant to use other dataprovider.\n\n# Development\n\nTO COMPLETE\n\n- [Design principle](doc/design.md)\n\n## JS / CSS Developpement\n\nTo update the JS or the CSS please run in the bundle\n\n```bash\nnpm install\nnpm run build\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2lenet%2Fcruditbundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F2lenet%2Fcruditbundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2lenet%2Fcruditbundle/lists"}