Skip to content

Generate React or Vue.js-based Progressive Web Apps from an Hydra-enabled API. Also support React Native.

License

Notifications You must be signed in to change notification settings

techpet/client-generator

 
 

Repository files navigation

API Platform Client Generator

Build Status npm version

API Platform Client Generator is a generator to scaffold app with Create-Retrieve-Update-Delete features for any API exposing a Hydra or OpenAPI documentation for:

  • Next.js
  • Nuxt.js
  • Quasar Framework
  • React/Redux
  • React Native
  • TypeScript Interfaces
  • Vue.js
  • Vuetify.js

Works especially well with APIs built with the API Platform framework.

Documentation

The documentation of API Platform's Client Generator can be browsed on the official website.

Features

  • Generate high-quality TypeScript or ES6 components:
    • List view
    • Creation form
    • Editing form
    • Deletion button
  • Use the Hydra or OpenAPI documentations to generate the code
  • Generate the suitable HTML5 input type (number, date...) according to the type of the API property
  • Display of the server-side validation errors under the related input (if using API Platform Core)
  • Client-side validation (required attributes)
  • The generated HTML is compatible with Bootstrap and includes mandatory classes
  • The generated HTML code is accessible to people with disabilities (ARIA support)

Usage

Hydra

npx @api-platform/client-generator https://demo.api-platform.com/ output/ --resource Book

OpenAPI v3 (experimental)

npx @api-platform/client-generator https://demo.api-platform.com/docs.json?spec_version=3 output/ --resource Book --format openapi3

OpenAPI v2 (formerly known as Swagger, deprecated)

npx @api-platform/client-generator https://demo.api-platform.com/docs.json?spec_version=2 output/ --resource Book --format openapi2

Credits

Created by Kévin Dunglas. Sponsored by Les-Tilleuls.coop. Commercial support available upon request.

About

Generate React or Vue.js-based Progressive Web Apps from an Hydra-enabled API. Also support React Native.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 62.7%
  • Vue 32.4%
  • TypeScript 4.9%