{"id":19602783,"url":"https://github.com/rbatis/abs_admin","last_synced_at":"2025-04-12T23:42:50.423Z","repository":{"id":54471128,"uuid":"282619423","full_name":"rbatis/abs_admin","owner":"rbatis","description":"http server with RBAC permissions(axum/rbatis orm/vuejs)","archived":false,"fork":false,"pushed_at":"2025-03-24T05:46:41.000Z","size":5531,"stargazers_count":210,"open_issues_count":4,"forks_count":35,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-12T23:42:44.993Z","etag":null,"topics":["admin","axum","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rbatis.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}},"created_at":"2020-07-26T09:42:48.000Z","updated_at":"2025-04-08T02:45:34.000Z","dependencies_parsed_at":"2024-05-01T15:16:27.600Z","dependency_job_id":"24ba9e5a-5374-46a8-be7d-77d97184f05c","html_url":"https://github.com/rbatis/abs_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/rbatis%2Fabs_admin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rbatis%2Fabs_admin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rbatis%2Fabs_admin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rbatis%2Fabs_admin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rbatis","download_url":"https://codeload.github.com/rbatis/abs_admin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248647256,"owners_count":21139081,"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","axum","rust"],"created_at":"2024-11-11T09:26:16.447Z","updated_at":"2025-04-12T23:42:50.386Z","avatar_url":"https://github.com/rbatis.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"![demo2](demo1.jpg)\n\n[Chinese](README_CH.md)\n\n- Rock solid (Rust language), high performance, no GC, no memory leaks, no coroutine contention\n\nDDD domain driver,Mysql,Redis, general middleware and database, general enterprise-level framework selection\n\n- [rbatis - orm] (https://github.com/rbatis/rbatis) and the same use Mybatis - Plus, concise, easy to extend the orm framework\n\n- [fast_log] (https://github.com/rbatis/fast_log) super quick asynchronous logging framework, support for zip, cutting\n\n- [axum](https://github.com/tokio-rs/axum) tokio Web library\n\nThe separation - both before and after the end, based on [Vue - JS] + [Vue - AntDesign] (https://cn.vuejs.org/) (https://www.antdv.com/docs/vue/introduce-cn/) + [Vue-AntDesign-Pro](https://pro.antdv.com/)\n\n- RBAC(5-tables) permission control, including JwtToken authentication login, graphic verification code login, TWO-DIMENSIONAL code scan login, and basic permission management\n\n\n\n# Progress, functional modules (including (including web front-end and RUST backend))\n\n\n\n| function (including the web front end and rust back-end) | support |\n| -------------------------------------------------------- | ------------------ |\n| dynamic menu (routing table permissions dynamically generated menu) | √ |\n| JWT interceptor check | √ |\n| JWT account password | √ |\n| set permissions/management (father and son, permissions + menu button permissions, cache redis) | √ |\n| Settings/role management (father and son, hierarchical level authority tree, cache redis) | √ |\n| Settings/account management background (hierarchical role tree) | √ |\n| Settings/keys to constant management | √ |\n| JWT graphical verification code + password |  x |\n| JWT text login (based on redis SMS message) |  x |\n\n\n\n# The significance of this project\n\n\n\n- high performance, as fast as C++, ultra low memory footprint, support for low-cost servers\n\n- Stable, smooth deployment, no memory leakage, and no flash rollback\n\n- Out of the box\n\n\n\n# (Rust Server-Side Installation) Quick Installation Tutorial\n\n* 1 Start abs_admin command by using `cargo run` or `cargo build` to compile the executable file and execute it.\n* (Optional) Use the docker command to quickly start redis: `docker run -it -d --name redis -p 6379:6379 redis`\n* (Optional, default database is SQLite, if using MySQL, add rdbc_mysql dependency to Cargo.toml and modify db_url in application.json5) Use the docker command to quickly start MySQL. For production, it is recommended to deploy the HTTP service and not use docker to deploy the database. `docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql -e TZ=Asia/Shanghai mysql:5.7`\n* cmd or terminal run command  `cargo run`\n\n# (Front-end Node service installation) Quick installation tutorial\n\n\n\n- 1 (front) read and front-end cloning project at https://github.com/rbatis/abs_admin_vue , and install nodejs\n\n\n\n- 2. (front-end installation) Use `yarn install` to install dependencies  and run the `yarn serve` command to start the web front-end\n\n\n\n- 3. (Front-end installation) Open the browser http://localhost:8001 to log in to the background\n\n\n\n# (Postman import) tutorial\n\n\n\n- 1. (Postman installation) Install postman. Import postman.json to Postman to use the written request\n\n\n\n```cmd\n\nOpen postman and import postman.json\n\n```\n\n\n\n- 2. (Postman installation) Import the ABS_admin project using the Clion clone, click main.rs and click the button to run. Or execute a command:\n\n\n\n```cmd\n\ncargo update\n\ncargo run\n\n```\n\n\n\n# module(module)\n\n\n\n- JWT token Auth(Permission authentication based on JWT token)\n\n- Role,User,Reource (Role,User, permission)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frbatis%2Fabs_admin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frbatis%2Fabs_admin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frbatis%2Fabs_admin/lists"}