Lama2 is a plain-text powered REST API client & manager built for serious engineering teams.
Lama2 specifies the .l2 syntax for describing APIs, and implements a CLI to execute .l2 files. Engineers can collaborate on .l2 files using version control. Lama2integrates nicely with
IDEs and text-editors as well. Think of Lama2 as markdown for APIs.
Benefits
Plain-text files: Store APIs in the plain-text .l2 API files. Simple and human-friendly syntax. Learn basics within minutes!
Simple CLI: Launch the CLI tool l2 on API files to make REST API requests.
Longevity & track-ability: Commit .l2 files to git or other version control for long life & change tracking.
Collaboration: Share API repo with teammates and colleagues to collaborate
Documentation:Explore examples, how-tos, explanations, references, FAQ/RAQs, and diagrams. Documentation is a priority, so that you never have to get lost.
Extensibility:.l2 syntax is implemented as a recursive descent parser, based on a formal grammar. Dig into details and implement new syntax (ex: to support websockets)
Terminal Demo: A POST request
VSCode Demo: The same POST request
Installation/Update
For Linux/MacOS systems, run the following command to either install or update Lama2:
Package `cmdexec` provides a facility to execute l2 commands, stream output to stdout, while also providing ability to retrieve the command output as a string.
Package `cmdexec` provides a facility to execute l2 commands, stream output to stdout, while also providing ability to retrieve the command output as a string.
Package `cmdgen` provides an API to generate API request commands (by default based on HTTPie) based on the parsed API file contents and the `l2` command invocation parameters
Package `cmdgen` provides an API to generate API request commands (by default based on HTTPie) based on the parsed API file contents and the `l2` command invocation parameters
Package `outputmanager` provides facilities for controlling the logging library as well as capabilities to post-process API execution results (such as store results as a JSON file)
Package `outputmanager` provides facilities for controlling the logging library as well as capabilities to post-process API execution results (such as store results as a JSON file)