Agent skill · Databases

tinystruct-patterns

Expert guidance for developing with the tinystruct Java framework. Use when working on the tinystruct codebase or any project built on tinystruct — including creating Application classes, @Action-mapped routes, unit tests, ActionRegistry, HTTP/CLI dual-mode handling, the built-in HTTP server, the event system, JSON with Builder/Builders, database persistence with AbstractData, POJO generation, Server-Sent Events (SSE), file uploads, and outbound HTTP networking.

mturacgithub.com/mturacGitHub ↗
codexcopilotcursorMIT
Install
npx skills add mturac/everything-openai-codex --skill tinystruct-patterns --agent codex

Same command for any agent — swap --agent for claude-code, cursor, copilot.

Facts
Files in the skill folder: 7
SKILL.md size: 9 KB
Bundled scripts: none
Path: skills/tinystruct-patterns/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 84
Language: JavaScript

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# tinystruct Development Patterns Architecture and implementation patterns for building modules with the **tinystruct** Java framework – a lightweight, high-performance framework that treats CLI and HTTP as equal citizens, requiring no `main()` method and minimal configuration. ## Core Principle **CLI and HTTP are equal citizens.** Every method annotated with `@Action` should ideally be runnable from both a terminal and a web browser without modification. This "dual-mode" capability is the core design philosophy of tinystruct. ## When to Activate ### When to Use - Creating new `Application` modules by extending `AbstractApplication`. - Defining routes and command-line actions using `@Action`. - Handling per-request state via `Context`. - Performing JSON serialization using the native `Builder` and `Builders` components. - Working with database persistence via `AbstractData` POJOs. - Generating POJOs from database tables using the `generate` command. - Implementing Server-Sent Events (SSE) for real-time push. - Handling file uploads via multipart data. - Making outbound HTTP requests with `URLRequest` and `HTTPHandler`. - Configuring database connections or system settings in `appli

What's inside
Steps it walks through
  1. Core Principle
  2. When to Activate
  3. When to Use
  4. How It Works
  5. Examples
  6. Basic Application (MyService)
  7. HTTP Mode Disambiguation (login)
  8. Native JSON Data Handling (Builder + Builders)
  9. SSE (Server-Sent Events)
  10. File Upload
  11. Configuration
  12. Red Flags & Anti-patterns
  13. Best Practices
  14. Technical Reference
Ships with 6 files
  • references/architecture.md
  • references/data-handling.md
  • references/database.md
  • references/routing.md
  • references/system-usage.md
  • references/testing.md
More from everything-openai-codex
All skills →
About this skill
What does the tinystruct-patterns skill do?

Expert guidance for developing with the tinystruct Java framework. Use when working on the tinystruct codebase or any project built on tinystruct — including creating Application classes, @Action-mapped routes, unit tests, ActionRegistry, HTTP/CLI dual-mode handling, the built-in HTTP server, the event system, JSON with Builder/Builders, database persistence with AbstractData, POJO generation, Server-Sent Events (SSE), file uploads, and outbound HTTP networking.

How do I install it?

Run `npx skills add mturac/everything-openai-codex --skill tinystruct-patterns --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From mturac/everything-openai-codex, a repository with 84 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going