{"id":21260668,"url":"https://github.com/breizhwave/webxadmin","last_synced_at":"2025-06-12T01:09:55.763Z","repository":{"id":238456716,"uuid":"479109172","full_name":"breizhwave/webxadmin","owner":"breizhwave","description":"PHP RAD TOOL for quick setting of mysql database tables administration","archived":false,"fork":false,"pushed_at":"2022-04-25T14:19:51.000Z","size":849,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-15T06:45:12.970Z","etag":null,"topics":["bread","crud","form","forms","table"],"latest_commit_sha":null,"homepage":"","language":"CSS","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/breizhwave.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["breizhwave"]}},"created_at":"2022-04-07T18:45:23.000Z","updated_at":"2022-04-08T00:14:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"d6302080-0407-4e5c-bf26-b17b60a7ae1c","html_url":"https://github.com/breizhwave/webxadmin","commit_stats":null,"previous_names":["breizhwave/webxadmin"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/breizhwave/webxadmin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breizhwave%2Fwebxadmin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breizhwave%2Fwebxadmin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breizhwave%2Fwebxadmin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breizhwave%2Fwebxadmin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/breizhwave","download_url":"https://codeload.github.com/breizhwave/webxadmin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breizhwave%2Fwebxadmin/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259374947,"owners_count":22847873,"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":["bread","crud","form","forms","table"],"created_at":"2024-11-21T04:20:00.553Z","updated_at":"2025-06-12T01:09:55.737Z","avatar_url":"https://github.com/breizhwave.png","language":"CSS","funding_links":["https://github.com/sponsors/breizhwave"],"categories":[],"sub_categories":[],"readme":"# webxadmin PHP RAD TOOL for database administration\n\n[//]: # ([![Build Status]\u0026#40;https://travis-ci.org/laravel/lumen-framework.svg\u0026#41;]\u0026#40;https://travis-ci.org/laravel/lumen-framework\u0026#41;)\n\n[//]: # ([![Total Downloads]\u0026#40;https://img.shields.io/packagist/dt/laravel/framework\u0026#41;]\u0026#40;https://packagist.org/packages/laravel/lumen-framework\u0026#41;)\n\n[//]: # ([![Latest Stable Version]\u0026#40;https://img.shields.io/packagist/v/laravel/framework\u0026#41;]\u0026#40;https://packagist.org/packages/laravel/lumen-framework\u0026#41;)\n\n[//]: # ([![License]\u0026#40;https://img.shields.io/packagist/l/laravel/framework\u0026#41;]\u0026#40;https://packagist.org/packages/laravel/lumen-framework\u0026#41;)\n\nBased on Laravel's little brother, Lumen Framework, webxadmin is a xml based BREAD (browse, read, edit, add, delete) or CRUD ( Create-Read-Update-Delete) for MYSQL database table administration. I know this is quite unconventionnal for Laravel which relies mainly on a very mature and efficient [data MODEL specification](https://laravel.com/docs/9.x/eloquent), allowing easy declaration and relationship management : the main objective of webxadmin is to keep the main data schema configuration in one single file that you can edit quickly, also allowing quicker declaration and relationship managament, and furthermore including a few UX/UI tricks like tabs structured forms, advanced fields, and so on.... \n\nWith webxadmin, you setup a whole adminstration panel prototype in .. say 10 minutes.  All you have to do is look at the `storage_path('app') . '/database.xml'` and declare your tables and fields  based on `database.dtd` definition. All the work is performed by the single WaveController controller with a few views that still include raw PHP code to perform the BREAD / CRUD scaffolding :\n\n* basic data table with filtering\n* modal form generation with field types : input, wysiwyg (based on summer note), select (based on table relation ship)\n\n\n## Installation\n\n* clone the repository\n* configure database access in .env\n* get dependencies with `composer update`\n* create your tables in sql (with primary key autoincrement named \"id\")\n* declare your tables in  storage / database.xml\n* browse your application url with table name to access webxadmin (no index page yet ..)\n\n## Basic Example\n\nthis example creates a basic time tracking application with three tables\n * Notes\n   * tab based form (2 tabs defined by d_tab )\n   * aggregate sum function for counting hours\n   * hierachic filtering for categories and customer related tables\n * Category  / Customer : hierarchic tree structure\n * color coding for categories\n\n```\n  \u003cd_table name=\"note\"\u003e\n        \u003cd_tabs\u003e\n            \u003cd_tab title=\"Infos\"\u003e\u003c/d_tab\u003e\n            \u003cd_tab title=\"Taxonomy\"\u003e\u003c/d_tab\u003e\n\n        \u003c/d_tabs\u003e\n        \u003cd_aggregate name=\"hours\" function=\"sum\"\u003e\u003c/d_aggregate\u003e\n        \u003cd_field name=\"date_creation\"  subtype=\"date\" order=\"desc\"  tab=\"Taxonomy\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"date_modif\" hide=\"both\" subtype=\"date\" \u003e\u003c/d_field\u003e\n        \u003cd_field name=\"title\" tooltip=\"body\"  tab=\"Infos\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"body\" type=\"textarea\" hide=\"list\"  tab=\"Infos\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"category\" type=\"select\" relation=\"category\"  tab=\"Taxonomy\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"customer\" type=\"select\" relation=\"customer\"  tab=\"Taxonomy\" subtype=\"tree\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"hours\" type=\"number\"   tab=\"Infos\" \u003e\u003c/d_field\u003e\n    \u003c/d_table\u003e\n       \u003cd_table name=\"category\"\u003e\n        \u003cd_field name=\"title\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"body\" type=\"textarea\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"color\" subtype=\"color\"\u003e\u003c/d_field\u003e\n    \u003c/d_table\u003e\n    \u003cd_table name=\"customer\"\u003e\n        \u003cd_field name=\"parent_id\" type=\"select\" relation=\"customer\"  \u003e\u003c/d_field\u003e\n\n        \u003cd_field name=\"title\"\u003e\u003c/d_field\u003e\n        \u003cd_field name=\"body\" type=\"textarea\"\u003e\u003c/d_field\u003e\n    \u003c/d_table\u003e\n```\n## TODO\n\n* pagination\n* export\n* tree field  : multi level filtering (currently only two levels)\n* doc : add image in readme\n* generic id primary key field\n* translation of delete message\n\n## Screenshot\n\n### example of a time tracking application\n\n![Time tracking app](https://raw.githubusercontent.com/breizhwave/webxadmin/master/public/ijss/i/screenshot1-timetracking.jpg)\n\n## Credit\n\n* Bootstrap interface : [tabler.io](https://github.com/tabler/tabler) \n* Date Range Filter: [Date Range Picker](https://www.daterangepicker.com/)\n* [Colorpicker](https://github.com/mdbassit/Coloris) \n* Wysiwyg editor : [SummerNote](https://summernote.org/)\n* Hierarchical Tree filter : [select2Tree](https://github.com/clivezhg/select2-to-tree) , depends on [select2](https://github.com/select2/select2)\n\n## Alternatives\n\n* Laravel Nova and BackPack Manager\n* https://lean-admin.dev/\n* https://filamentphp.com/\n* Blue Print : https://github.com/laravel-shift/blueprint\n* https://github.com/nafiesl/SimpleCrudGenerator\n\n## License\n\nThe webxadmin framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbreizhwave%2Fwebxadmin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbreizhwave%2Fwebxadmin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbreizhwave%2Fwebxadmin/lists"}