{"id":19157012,"url":"https://github.com/bertrandmartel/cloud-admin","last_synced_at":"2025-02-22T21:43:25.167Z","repository":{"id":94807986,"uuid":"123856055","full_name":"bertrandmartel/cloud-admin","owner":"bertrandmartel","description":"Database admin interface with dynamic model configuration supporting table relations through datatable views powered by React","archived":false,"fork":false,"pushed_at":"2018-09-03T16:54:51.000Z","size":1846,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-03T20:12:25.643Z","etag":null,"topics":["admin-dashboard","database","datatables","material-ui","react","react-table"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/bertrandmartel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2018-03-05T02:53:33.000Z","updated_at":"2022-01-24T17:02:29.000Z","dependencies_parsed_at":"2023-03-11T14:30:47.251Z","dependency_job_id":null,"html_url":"https://github.com/bertrandmartel/cloud-admin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertrandmartel%2Fcloud-admin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertrandmartel%2Fcloud-admin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertrandmartel%2Fcloud-admin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertrandmartel%2Fcloud-admin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bertrandmartel","download_url":"https://codeload.github.com/bertrandmartel/cloud-admin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240241803,"owners_count":19770463,"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":["admin-dashboard","database","datatables","material-ui","react","react-table"],"created_at":"2024-11-09T08:36:58.789Z","updated_at":"2025-02-22T21:43:25.142Z","avatar_url":"https://github.com/bertrandmartel.png","language":"JavaScript","readme":"# Cloud Admin\n\n[![Build Status](https://travis-ci.org/bertrandmartel/cloud-admin.svg?branch=master)](https://travis-ci.org/bertrandmartel/cloud-admin)\n[![License](http://img.shields.io/:license-mit-blue.svg)](LICENSE.md)\n\nA database admin interface with dynamic model configuration supporting table relations through datatable views powered by React\n\n### [Live Application](http://bertrandmartel.github.io/cloud-admin)\n\n[![screen](https://user-images.githubusercontent.com/5183022/36955712-5fb43212-202a-11e8-891c-a98e6ccb88d3.png)](http://bertrandmartel.github.io/cloud-admin)\n\n### Configuration\n\n#### Edit mode\n\nTo match your own model, edit configuration file [config.js](./src/config.js) :\n\n```javascript\nexport default\n\n{\n  showEditMode: true,\n  mode: [{\n    name: \"demo\"\n  }, {\n    name: \"server\",\n    url: \"http://localhost:4000/admin/headers\"\n  }]\n}\n```\n\nThis JSON configuration has the following format : \n\n* showEditMode [boolean] - whether to show the dropdown box with the list of mode **Required**\n* mode [Array] - list of modes **Required**\n\nThe list of mode can include :\n\n* name [String] - the mode name **Required**\n* url [String] - url to fetch the model configuration file **Required except for demo mode**\n\n#### Model endpoint\n\nThe model endpoint specified in the `url` field in the mode configuration file should return a JSON array with the following format : \n\n```json\n[{\n  \"name\": \"users\",\n  \"displayName\": \"Users\",\n  \"fields\": [{\n    \"accessor\": \"userId\"\n  }, {\n    \"accessor\": \"email\"\n  }, {\n    \"accessor\": \"createdAt\",\n    \"filterable\": false\n  }, {\n    \"accessor\": \"updatedAt\",\n    \"filterable\": false\n  }]\n}]\n```\n\nProperties : \n\n* name [String] - table name **Required**\n* displayName [String] - name to display on tab \n* fields [Array] - list of accessor \u0026 other table properties **Required**\n  * accessor [String] - accessor name **Required**\n  * aggregate [Boolean] - specify if this field should be visible on the same line as the pivoted field (works only for the 1st pivoted field)\n* pivotBy [Array] - array of string with accessor name for pivoted field\n* subFields [Array] - list of accessor \u0026 other table properties for sub tables only if pivotBy was specified\n\nAll properties of `fields` \u0026 `subFields` array are expanded into [react-table columns](https://github.com/react-tools/react-table#columns) (except for `aggregate` which is processed differently)\n\nA Sample JSON configuration is available under [src/demo/template.js](./src/demo/template.js)\n\n### Dependencies\n\nThis project is using :\n\n* [React](https://github.com/facebook/react)\n* [Material UI](https://github.com/callemall/material-ui)\n* [React Table](https://react-table.js.org)\n* [Axios](https://github.com/axios/axios)\n* [Moment.js](http://momentjs.com/)\n* [uuid](https://github.com/kelektiv/node-uuid)\n\nThis project has been created using [create-react-app](https://github.com/facebookincubator/create-react-app)\n\n### Docker\n\nModify `homepage` field from `package.json` to match the target host :\n\n* build\n\n```\ndocker build . -t cloud-admin\n```\n\n* run\n\n```\ndocker run -p 5000:5000 cloud-admin\n```\n\n## License\n\nThe MIT License (MIT) Copyright (c) 2018 Bertrand Martel\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbertrandmartel%2Fcloud-admin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbertrandmartel%2Fcloud-admin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbertrandmartel%2Fcloud-admin/lists"}