laraswagger
v1.0.1
Published
A command-line tool for converting JSON exported by Insomnia or postman to Swagger format, as well as converting a swagger-formatted json file into a swagger-formatted annotation to facilitate documentation generation.
Downloads
10
Maintainers
Readme
Swaggerize
Introduction
Laraswagger simplifies the process of converting exported JSON from Insomnia or Postman into Swagger documentation for Laravel projects. This tool allows for the generation of Swagger JSON files or PHP annotations, providing flexibility based on project requirements.
Installation
Make sure you have Node.js installed on your machine. Then, install Laraswagger globally:
npm install -g laraswagger
If you're on linux :
sudo npm install -g laraswagger
Usage
Testing and Exporting Requests:
Test your API endpoints using Insomnia or Postman. Export requests to JSON format and save the file in your Laravel project’s root directory.
Generating Documentation:
Navigate to your Laravel project directory and run the following command:
laraswagger -doc exported_file.json
Respond to the prompt regarding annotations with “yes” or “no”. If annotations are generated, they’ll be saved in app/Http/Controllers/Annotations/. Use the namespace from each annotation file in the corresponding controller.
Viewing Swagger Documentation:
To view Swagger documentation in your Laravel project, use tools like Darkaonline/L5-Swagger. Install L5-Swagger by running:
laraswagger install
Path Parameters:
Provide values for path parameters in Insomnia or Postman by adding parameters with the same name as those in your routes, enclosed in curly braces {}. For example, if you have a route defined as /users/{userId}, add a parameter named userId with the value you want to test.
Testing with Files and Multipart Support:
Uploading Files: Use multipart/form-data in Insomnia or Postman to upload files.
Multipart Requests: Configure requests with multipart/form-data to send multiple types of data.
Update Swaggerize:
To update Laraswagger to the latest version, run:
laraswagger update
If you're on linux :
sudo laraswagger update
License
This package is licensed under the MIT License. See LICENSE.md for details.