Defining many controllers for a model for different API endpoints each requiring its own subset of fields of the model thus ensuring that DB querying is optimized and that no bandwidth is wasted serving up unnecessary data that is not to be rendered

This page summarizes the projects mentioned and recommended in the original post on

Our great sponsors
  • Cloudways - Managed Cloud Hosting Platform
  • Scout APM - Less time debugging, more time building
  • OPS - Build and Run Open Source Unikernels
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • GitHub repo flexible-presenter

    Easily define just the right data for your InertiaJS views (or anywhere else you want to, uh, flexibly present).

    I don’t know enough about writing APIs to tell you if this would work, but we use very successfully. It has ‘preset’s which are subsets of the available fields - so where I’m displaying just user name and need their id for routing i can call the presenter with ->preset(‘listing’) to only get those fields.

  • GitHub repo apollo

    🚀 Apollo/GraphQL integration for VueJS

    Cool, if you do go with graphql, I'd recommend vue-apollo on the client end. Combine with @vue/apollo-composable and graphql-codegen and it feels like sorcery.

  • Cloudways

    Managed Cloud Hosting Platform. Deploy PHP applications on Cloudways web hosting platform to get high uptime and optimized performance. Use the BFCM promo "BFCM2021" to get 40% FLAT discount for FOUR months straight.

  • GitHub repo json-api

    A specification for building JSON APIs

    You can either do the "per-view" style you mentioned, or you can let the client tell the API what it wants. I'd check out the JSON:API spec for inspiration.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts