{"id":17922675,"url":"https://github.com/overtrue/laravel-skeleton","last_synced_at":"2025-04-09T08:11:44.653Z","repository":{"id":37550044,"uuid":"163474444","full_name":"overtrue/laravel-skeleton","owner":"overtrue","description":"Laravel Application skeleton for me.","archived":false,"fork":false,"pushed_at":"2024-03-05T21:33:21.000Z","size":2346,"stargazers_count":141,"open_issues_count":10,"forks_count":20,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-02T05:08:53.714Z","etag":null,"topics":["laravel","laravel-skeleton"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":false,"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/overtrue.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["overtrue"]}},"created_at":"2018-12-29T04:03:40.000Z","updated_at":"2025-01-01T19:05:50.000Z","dependencies_parsed_at":"2023-09-26T09:03:21.817Z","dependency_job_id":"d7dcf88c-492d-494e-968a-ec158a8fdd2e","html_url":"https://github.com/overtrue/laravel-skeleton","commit_stats":{"total_commits":573,"total_committers":6,"mean_commits":95.5,"dds":0.3664921465968587,"last_synced_commit":"41a863d8aa9b91ef97387c6e00d04f39fe4778af"},"previous_names":[],"tags_count":8,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/overtrue%2Flaravel-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/overtrue%2Flaravel-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/overtrue%2Flaravel-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/overtrue%2Flaravel-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/overtrue","download_url":"https://codeload.github.com/overtrue/laravel-skeleton/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247999864,"owners_count":21031046,"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":["laravel","laravel-skeleton"],"created_at":"2024-10-28T20:40:24.314Z","updated_at":"2025-04-09T08:11:44.624Z","avatar_url":"https://github.com/overtrue.png","language":"PHP","funding_links":["https://github.com/sponsors/overtrue"],"categories":[],"sub_categories":[],"readme":"# Laravel API 基础模板\n\n开箱即用的 Laravel API 基础结构。\n\u003e 🚨自己用的哈，仅供参考，不提供咨询解答服务。\n\n## 特点\n- DDD（领域模型驱动）结构；\n- 内置生成器，一键生成模块；\n- 内置 laravel/sanctum 的授权机制；\n- 高度完善的控制器、模型、模块模板；\n- 集成常用基础扩展；\n- 内置模型通用高阶 Traits 封装;\n- 自动注册 Policies；\n- 内置用户系统和基础接口；\n- 内置管理后台接口；\n\n## 安装\n\n1. 创建项目\n\n```bash\n$ composer create-project overtrue/laravel-skeleton -vvv\n```\n\n\n2. 创建配置文件\n\n```bash\n$ cp .env.example .env\n```\n\n3. 创建数据表和测试数据\n\n```bash\n$ php artisan migrate --seed\n```\n\n\u003e 这一步将会创建管理员账号 `username:admin / password:changeThis!!`  和一个 demo 设置项。  \n\n然后访问 `http://laravel-skeleton.test/api/settings` 将会看到演示的设置项信息。 \n\n\n## 使用\n\n### 创建新领域\n\n```shell script\nphp artisan make:domain Post \n```\n\n\u003e 该命令将会创建 `domain/Post` 目录，包含 `Actions`, `Models`, `Policies`, `Filters` 等目录。\n\n### 创建领域类\n\n所有官方的生成命令都增加了 `-d` 参数，用于指定领域名称，例如：\n\n```shell\nphp artisan make:model Post -d Post\n```\n另外，还有一些自定义的生成命令：\n\n```shell script\nphp artisan make:action MarkPostAsDraft -d Post\n```\n\n### 创建应用类\n\n```shell script\nphp artisan make:app Post\nphp artisan make:endpoint GetPost -a Post\nphp artisan make:middleware MustBePublished -a Post\nphp artisan make:request CreatePost -a Post\nphp artisan make:resource Post -a Post\n```\n\n### 内置接口\n\n#### 用户登录（获取 token）\n\n##### POST /api/auth/login\n\n+ Request (`application/json`)\n```json\n{\n  \"username\": \"admin\",\n  \"password\": \"changeThis!!\"\n}\n```\n+ Response 200 (application/json)\n```json\n{\n    \"type\": \"bearer\",\n    \"token\":\"oVFV407i4jSTxjFO2tNxzh8lDaxVLbIkZZiDwjgMSYhvvkbUUXw8y0XgeYtxLAp4paznq0oxSMDdXmco\"\n}\n```\n\n#### 用户注册\n##### POST /api/auth/register\n\n+ Request (`application/json`)\n```json\n{\n   \"username\": \"demo\",\n   \"password\": \"123456\"\n}\n```\n+ Response 200 (`application/json`)\n```json\n{\n    \"type\": \"bearer\",\n    \"token\":\"oVFV407i4jSTxjFO2tNxzh8lDaxVLbIkZZiDwjgMSYhvvkbUUXw8y0XgeYtxLAp4paznq0oxSMDdXmco\"\n}\n```\n\n#### 登出\n##### POST /api/auth/logout\n\n+ Request (`application/json`)\n        + Headers\n```\nAuthorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1...\n```\n+ Response 204\n\n#### 获取当前登录用户\n##### GET /api/me\n\n+ Request (`application/json`)\n        + Headers\n```\nAuthorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1...\n```\n+ Response 200 (`application/json`)\n\n```json\n{\n  \"id\": 1,\n  \"username\": \"admin\",\n  \"nickname\": \"超级管理员\",\n  \"avatar\": \"\\/img\\/default-avatar.png\",\n  \"email\": null,\n  \"gender\": \"none\",\n  \"phone\": null,\n  \"birthday\": null,\n  \"settings\": [],\n  \"is_admin\": true,\n  \"last_active_at\": null,\n  \"last_refreshed_at\": null,\n  \"banned_at\": null,\n  \"email_verified_at\": null,\n  \"created_at\": \"2020-03-17T09:37:45.000000Z\",\n  \"updated_at\": \"2020-03-17T09:37:45.000000Z\",\n  \"deleted_at\": null\n}\n```\n\n## :heart: Sponsor me \n\nIf you like the work I do and want to support it, [you know what to do :heart:](https://github.com/sponsors/overtrue)\n\n如果你喜欢我的项目并想支持它，[点击这里 :heart:](https://github.com/sponsors/overtrue)\n\n## Project supported by JetBrains\n\nMany thanks to Jetbrains for kindly providing a license for me to work on this and other open-source projects.\n\n[![](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)](https://www.jetbrains.com/?from=https://github.com/overtrue)\n\n## License\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fovertrue%2Flaravel-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fovertrue%2Flaravel-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fovertrue%2Flaravel-skeleton/lists"}