The current release of Osprey CLI is very much a work in progress. As it is in active use within a number of rapid development projects, it too is evolving with the needs those projects uncover. While it is proving extremely beneficial, because it's still evolving rapidly we don't yet feel it meets our criteria for a first fully stable release.
We encourage you to use it and participate by raising issues, providing feedback or contributing your own code (see below)
Please check the Osprey CLI 1.0 Milestone issues list to stay up-to-date with the immediate roadmap.
Check out the main Osprey project itself for information about the framework on which this tool generates applications.
If you are interested in contributing some code to this project, thanks! Please submit a Contributors Agreement acknowledging that you are transferring ownership.
To discuss this project, please use its github issues or the RAML forum.
To start using Osprey CLI you'll need the following:
Install Osprey CLI globally -
npm install -g osprey-cli.
Creating a new application
osprey new [raml-file or path-to-raml] [options]
[path-to-raml-file or path-to-raml-folder] you can specify either the path to either a RAML file or a folder containing a RAML definition distributed across several files. In both cases, the original file(s) will be copied to a subfolder inside the generated project structure:
[output folder]/src/assets/raml (where
[output folder] is specified by the
|--help||-||Shows usage information|
|--version||-||Shows the version number|
|--baseUri||/api||Specifies base URI for your API|
|--target||cwd||Specifies output directory|
|--name||-||Specifies application name. This parameter is required.|
|--verbose||-||Sets the verbose level of output|
osprey new --name my-app or
osprey new -n my-app
osprey new api.raml --name my-app
osprey new resources/specs -n my-app -l coffeescript
Bonus utility: Listing RAML resources in any RAML file
osprey list <raml-file>
osprey list api.raml
Running the API
From your terminal run:
grunt (recommended: It will set up the proper listeners so changes in the code are automatically refreshed in runtime).
OR you can always run: