把日常开发中的罕用性能抽出来做一个 starter,防止每次开新我的项目时消耗的大量反复工作,该 repo 会长期保护,欢送大家 star。在应用中如有 bug 或体验问题,请提 issue。
x1a0xv4n/laravel-starter: ???? Your next laravel-api-starter in 30 seconds
基本功能
-
api 模块
- dingo????
-
jwt-auth
多表多用户零碎隔离
????jwt-auth
黑名单
- fractal????
- RSA 接口加密(前台用户零碎借鉴 gadmin,应用 RSA 加密)
- 封装好的 Exception 异样类
- 记录每条申请的参数和响应 - 后置中间件
-
admin 模块
- CORS????
- RBAC????
- 后盾 log- 后置中间件????
-
common 模块
- 文件上传(七牛云、并记录附件)????
- 短信发送????
- redis 罕用操作
RedisService
、redis 锁RedisLock
???? - 敏感词性能????
- 罕用辅助函数库????
-
其余
- laravel 分模块的最佳实际????
- MRSC 模型(已留出文件夹,具体业务相干不写)????
- swagger(php 的 swagger 不好用,不写)????
- 反对切换 dev、test、prod 环境配置????
-
反对我的项目初始化
- 数据库迁徙工具(自身 jwt 须要的 user 表,也须要迁徙工具)
- 更新 goutils 等引入拓展包的版本
- laravel 谬误日志的最佳实际
-
代码品质
- php-cs-fixer
php-cs-fixer fix $PWD --config=cs.php
- 动态检测工具: 基于 phpstan 实现的 larastan
./vendor/bin/phpstan analyse
- php-cs-fixer
-
罕用性能
- 第三方登录(微信登录、qq 登录)
- 第三方领取(微信领取、支付宝)
- url 转二维码
- 图片验证码
部署
手动部署
- clone 我的项目。
gcl git@github.com:x1a0xv4n/laravel-starter.git
- 切换分支。切换分支到对应 laravel 版本,master 分支默认为 laravel 最新版本
git checkout -b origin/target-version-branch
- 配置文件 。开发环境下,请复制
.env.prod
为.env.dev
,并填写根本配置如数据库、redis、dingo 等,如有问题,请发 issue。 - sql 文件。执行根目录下的
laravel_starter.sql
。
docker-compose 部署
临时没空,过两天再写