Skip to content

info: I am maintaining a fork at @jagql/framework #407

@championswimmer

Description

@championswimmer

Information

Package: https://npmjs.com/@jagql/framework
Repo: https://github.com/jagql/framework

Motivation

I have been using jsonapi-server in my projects for quite some time now.
While I have huge, huge respect for everyone from holidayextras who has worked hard and made this great project possible, I think recently, there has been a bit of slowdown.
There are many features and issues that can be added/fixed, and there are many PRs lying, which the maintainers are not having time to review and update (I can understand there must be other work, holidayextras is a big company, so I am not criticizing).

I have even been contributing a lot of PRs to both jsonapi-server and jsonapi-store-sequelize but I think the speed of things getting updated has been slow

Differences

Differences are noted here
https://github.com/jagql/framework#differences-from-upstream
And in changelog
https://github.com/jagql/framework/blob/master/CHANGELOG.md

uuid + autoincrement support

Both uuid and autoincrement is supported (even in foreignkey relations handled properly)
ids can be generated by client or provided by server

Typescript support

https://github.com/jagql/framework/tree/master/types
It has full Typedefinitions, to give 100% autocomplete and type linting support for those who use TS to build nodejs projects

Merged PRs

  1. Show pagination for /:resource/:id/:relation #311 pagination for nested resources
  2. add bodyParserJsonOpts to apiConfig for setting the limit option #366 body parser options (now merged here too)
  3. Bug: fix crud operation detection when using chain handlers #367 crud op detection fix (now merged here too)
  4. Expose original express request/response objects to custom handlers #274 expose req, res to handler
  5. https://github.com/holidayextras/jsonapi-server sort and filter skipping in handlers
  6. Avoid blocking other requests while validating large output #277 async validation - huge perf increase

Other improvements

  1. jagql/framework@94a6d0c GrqphQL object type fixed
  2. jagql/framework@e4f513d handlers are es6 classes, can be extended
  3. jagql/framework@33812c0 fix error code for id not found (was not jsonapi spec compliant earlier)

Roadmap

Things I intend to work on in immediate future

  • multi key sorting Sorting by multiple fields #338
  • upgrade from Swagger2 to Swagger3 (Open Api v3)
  • add 'actions' like user/login kind of paths that can not be 100% represented as json:api

Collaboration

I an assure and promise I will continue to send PRs to this repository to help keep this maintained.
Also if the maintainers want to merge the fork back in this, I would love to help out on that.
The changes are backwards compatible, and it is not hard to upgrade from jsonapi-server to jagql.
If jagql is merged back into this, and speed of development increases I would love that the most.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions