Skip to content

Commit

Permalink
Rewrite everything ..
Browse files Browse the repository at this point in the history
  • Loading branch information
johanneskees committed Jul 18, 2021
1 parent 76ffbcc commit 75071db
Show file tree
Hide file tree
Showing 81 changed files with 3,164 additions and 2,381 deletions.
27 changes: 22 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,33 +4,50 @@ Designed to work with [Laravel JSON:API](https://laraveljsonapi.io/)

!!! Disclaimer: this project is work in progress and likely contains many bugs, etc !!!

## What it can and can't

### Can

- [x] Generate Schemas/Responses/Request/Errors for all default [Laravel JSON:API](https://laraveljsonapi.io/) routes
- [x] Use a seeded database to generate examples

### Can't yet
- [ ] Customisation of the generation
- [ ] Generation for custom actions
- [ ] Generation for custom filters
- [ ] Generation for anything custom
- [ ] Generation for MorphTo relations (MorphToMany works)
- [ ] Generation of Pagination Meta
- [ ] Generation of Includes
- [ ] Generation of Authentication/Authorization

## TODO

- [x] Command to generate to storage folder
- [x] Get basic test suite running with GitHub Actions
- [x] Add extra operation descriptions via config
- [x] Add in tags & x-tagGroups (via config)
- [x] Add tests (Use the dummy by laraveljsonapi to integrate all features)
- [x] Add custom actions
- [ ] Add custom actions
- [x] Split schemas/requests/responses by action
- [ ] Consider field attributes
- [x] bool readonly
- [x] bool hidden
- [ ] closure based readonly (create/update)
- [ ] closure based hidden
- [ ] List sortable fields
- [x] List sortable fields
- [ ] Fix includes and relations
- [x] Add relationship routes
- [ ] Add includes
- [ ] Add authentication
- [ ] Add custom queries/filters
- [ ] Add a way to document custom actions
- [ ] Tidy up the code!!
- [ ] Replace `cebe/php-openapi` with `goldspecdigital/oooas`
- [ ] Move to an architecture inspired by `vyuldashev/laravel-openapi`
- [x] Replace `cebe/php-openapi` with `goldspecdigital/oooas`
- [x] Move to an architecture inspired by `vyuldashev/laravel-openapi`
- [ ] Use php8 attributes on actions/classes to generate custom docs

🙏 Based upon initial prototype by [martianatwork](https://github.com/martianatwork)
🙏 Based upon initial prototype by [martianatwork](https://github.com/martianatwork) and [glennjacobs](https://github.com/glennjacobs)

## Usage

Expand Down
5 changes: 3 additions & 2 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@
"license": "Apache-2.0",
"require": {
"php": "^8.0",
"cebe/php-openapi": "^1.5",
"laravel-json-api/hashids": "^1.0@beta"
"laravel-json-api/hashids": "^1.0@beta",
"goldspecdigital/oooas": "^2.8",
"justinrainbow/json-schema": "^5.2"
},
"require-dev": {
"laravel-json-api/laravel": "^1.0",
Expand Down
Loading

0 comments on commit 75071db

Please sign in to comment.