skills/.system/guicedee-rest/SKILL.md
Build Jakarta REST (JAX-RS) services on Vert.x 5 inside GuicedEE: @Path/@GET/@POST route registration, parameter binding (@PathParam, @QueryParam, @HeaderParam, etc.), Guice-managed resource classes, response handling, content negotiation, and JPMS module setup. Use when creating REST endpoints, configuring Jakarta REST resources, or wiring JAX-RS services with Guice injection.
npx skillsauth add guicedee/ai-rules guicedee-restInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Lightweight Jakarta REST (JAX-RS) adapter for Vert.x 5 with full GuicedEE integration.
Annotate your classes with standard @Path, @GET, @POST, etc. — routes are discovered at startup via ClassGraph and registered on the Vert.x Router automatically. Resource instances are created through Guice, so @Inject works everywhere.
com.guicedee:rest dependency (pulls in web transitively).module-info.java:
module my.app {
requires com.guicedee.rest;
opens my.app.resources to com.google.guice, com.guicedee.rest;
opens my.app.dto to com.fasterxml.jackson.databind;
}
@Path("/users")
public class UserResource {
@Inject
private UserService userService;
@GET
@Produces(MediaType.APPLICATION_JSON)
public Uni<List<User>> listUsers() {
return userService.findAll();
}
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Uni<User> createUser(CreateUserRequest request) {
return userService.create(request);
}
@GET
@Path("/{id}")
public Uni<User> getUser(@PathParam("id") Long id) {
return userService.findById(id);
}
}
IGuiceContext.registerModuleForScanning.add("my.app");
IGuiceContext.instance().inject();
@GET, @POST, @PUT, @DELETE, @PATCH, @HEAD, @OPTIONS
@PathParam, @QueryParam, @HeaderParam, @CookieParam, @FormParam, @MatrixParam, @BeanParam
@Produces, @Consumes
IGuiceContext.instance().inject()
└─ OperationRegistry scans for @Path-annotated classes via ClassGraph
└─ Routes mapped to Vert.x Router
└─ Resource instances obtained from Guice injector
Methods can return:
Uni<T> for reactive compositionFuture<T> for Vert.x futuresvoid for fire-and-forget operationscom.google.guice and com.guicedee.rest.opens to com.fasterxml.jackson.databind.requires com.guicedee.rest;.web module is included transitively — do not create HttpServer manually.module-info.java + META-INF/services/).development
Install Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).
tools
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Codex's capabilities with specialized knowledge, workflows, or tool integrations.
development
WebAwesome icon integration for JWebMP — modern, open-source icon library. Provides 1,500+ icons with solid/regular styles, sizing, rotation, animation, and CSS utilities. Drop-in FontAwesome alternative with fresh designs. Use when working with WebAwesome icons, modern icon designs, or as FontAwesome alternative in JWebMP applications.
development
WebAwesome Pro integration for JWebMP with premium icons and features. Extends jwebmp-webawesome with additional styles, premium icons, and advanced features. Use when working with WebAwesome Pro icons or premium WebAwesome features in JWebMP applications.