A lightweight REST API framework focused on productivity and scalability.
Here you can find the complete YAWP! Guides.
-
At the command prompt, create a new YAWP! API application:
$ mvn archetype:generate \ -DarchetypeGroupId=io.yawp \ -DarchetypeArtifactId=yawp \ -DarchetypeVersion=LATEST \ -DgroupId=yawpapp \ -DartifactId=yawpapp \ -Dversion=1.0-SNAPSHOT
-
Change directory to
yawpapp
and start the yawp development server:$ cd yawpapp $ mvn yawp:devserver
-
Using a browser, go to
http://localhost:8080/api
to check if everything is OK. -
Using a scaffolder, create a simple endpoint model:
$ mvn yawp:endpoint -Dmodel=person
Output:
@Endpoint(path = "/people") public class Person { @Id IdRef<Person> id; }
Try it:
$ curl http://localhost:8080/api/people
-
Follow the guidelines to start developing your API:
Everyone willing to contribute with YAWP! is welcome. To start developing you will need an environment with:
- JDK 1.8+
- Maven 3.3+
- PostgreSQL 9.4+
- phantomjs 2+
For postgres, you need to create a database and user accessible for your Unix user (you need to be able to run psql with no args). A simple tutorial for Arch can be found here.
Phantomjs can be installed from pacman on Arch.
Then follow the travis-ci build script to get your build working.
Feel free to contact the developers at the IRC channel #yawp at chat.freenode.net
YAWP! is released under the MIT license.