Back to Skills

raylib

EvanLavender13
Updated Today
408 views
0
View on GitHub
Developmentapi

About

This skill helps developers leverage raylib's existing API to avoid reinventing solutions for graphics, input, or audio. It directs you to consult the official cheatsheet to find built-in functions before writing custom code. Use it to quickly check for available utilities in modules like shapes, textures, and audio.

Quick Install

Claude Code

Recommended
Primary
npx skills add EvanLavender13/audio-jones
Plugin CommandAlternative
/plugin add https://github.com/EvanLavender13/audio-jones
Git CloneAlternative
git clone https://github.com/EvanLavender13/audio-jones.git ~/.claude/skills/raylib

Copy and paste this command in Claude Code to install this skill

Documentation

raylib Development

Check raylib's built-in functions before writing custom implementations.

Cheatsheet First

Reference: https://www.raylib.com/cheatsheet/cheatsheet.html

Before implementing any rendering, input, or audio feature:

  1. Identify the module (shapes, textures, text, models, shaders, audio)
  2. Scan that module's functions in the cheatsheet
  3. Only write custom code if no raylib function exists

Use WebFetch to retrieve and search the cheatsheet when uncertain.

Module Categories

ModuleCoversCommon Functions
rcoreWindow, input, timingGetFrameTime, IsKeyPressed, GetMousePosition
rshapes2D primitivesDrawLineEx, DrawRectangleRounded, DrawCircleSector
rtexturesImages, texturesDrawTexturePro, LoadRenderTexture, BeginTextureMode
rtextFont renderingDrawTextEx, MeasureTextEx
rmodels3D geometryDrawMesh, LoadModel
raudioSound, musicLoadSound, PlaySound, SetSoundVolume
rlglLow-level OpenGLUse only when raylib lacks the feature

Before You Implement

Check these functions first for common tasks:

TaskCheck First
Thick linesDrawLineEx(start, end, thickness, color)
Rounded rectanglesDrawRectangleRounded, DrawRectangleRoundedLines
Rotated/scaled spritesDrawTexturePro(texture, source, dest, origin, rotation, tint)
Bezier curvesDrawLineBezier, DrawLineBezierQuad, DrawLineBezierCubic
Render to textureLoadRenderTexture, BeginTextureMode, EndTextureMode
Screen captureTakeScreenshot, LoadImageFromScreen
Shader uniformsGetShaderLocation, SetShaderValue
Delta timeGetFrameTime() returns seconds since last frame

Naming Conventions

raylib uses consistent verb prefixes:

  • Load* / Unload* — Resource lifecycle
  • Begin* / End* — Scoped state (drawing, shader, texture mode)
  • Draw* — Immediate rendering
  • Get* / Set* — Property access
  • Is* — Boolean queries (IsKeyPressed, IsWindowResized)
  • Check* — Collision detection

rlgl: Last Resort

rlgl exposes raw OpenGL. Use only when:

  • raylib provides no built-in function
  • Performance requires batched custom geometry
  • Custom vertex attributes needed

For simple shapes, rshapes functions outperform hand-rolled rlgl.

Verification

When implementing graphics features, verify:

  • Searched cheatsheet for existing function
  • Checked rshapes before rlgl
  • Used DrawTexturePro for any sprite transforms
  • Paired all Begin*/End* calls

GitHub Repository

EvanLavender13/audio-jones
Path: .claude/skills/raylib

Related Skills

polymarket

Meta

This skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.

View skill

creating-opencode-plugins

Meta

This skill helps developers create OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It provides the plugin structure, event API specifications, and implementation patterns for JavaScript/TypeScript modules. Use it when you need to intercept, monitor, or extend the OpenCode AI assistant's lifecycle with custom event-driven logic.

View skill

evaluating-llms-harness

Testing

This Claude Skill runs the lm-evaluation-harness to benchmark LLMs across 60+ standardized academic tasks like MMLU and GSM8K. It's designed for developers to compare model quality, track training progress, or report academic results. The tool supports various backends including HuggingFace and vLLM models.

View skill

cloudflare-turnstile

Meta

This skill provides comprehensive guidance for implementing Cloudflare Turnstile as a CAPTCHA-alternative bot protection system. It covers integration for forms, login pages, API endpoints, and frameworks like React/Next.js/Hono, while handling invisible challenges that maintain user experience. Use it when migrating from reCAPTCHA, debugging error codes, or implementing token validation and E2E tests.

View skill