Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/justinlietz93-3d-object
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/3d-object
What's inside
- Skill name
3d-object- Description
- three.js model, downloadable as OBJ or GLB
- License
- MIT
- Instructions
- 75 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# 3D object
Model a 3D object the user can inspect from every angle and download,
built with three.js and presented in the three_d_stage starter.
START by calling copy_starter_component with kind: "three_d_stage.js" —
it is the whole viewer: studio lighting, ground shadow, orbit controls,
an auto-framed camera, and a toolbar that downloads the object as
OBJ + MTL or GLB. Read the copied file's usage block and follow its page
skeleton exactly. You only write the model-building module script.
Build the page as plain HTML — a .html file with ordinary <script>
tags — even when the project's other designs are .dc.html Design
Components: DC restricts scripts to <helmet>, which races the stage's
mount and can't host this skeleton.
Load three.js ONLY through this exact pinned import map, in <head>,
before any module script. Do not change versions, URLs, or hashes, do
not add other copies of three.js, and do not import addons beyond the
three listed — the map is deliberately a closed set, so anything else
fails to resolve rather than loading unverified:
<script type="importmap">
{
"imports": {
"three": "https://unpkg.com/three@0.184.0/build/three.module.js",
"three/addons/controls/OrbitControls.js": "https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js",
"three/addons/exporters/OBJExporter.js": "https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js",
"three/addons/exporters/GLTFExporter.js": "https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js"
},
"integrity": {
"https://unpkg.com/three@0.184.0/build/three.module.js": "sha384-8FCZ1eVO6it4+pbec2aDtnTrwjWXZLJRC+MAGCIPDgsYnUrl/E0A2YlF8ioMKI/J",
"https://unpkg.com/three@0.184.0/build/three.core.js": "sha384-dw2ooPewaEIrAgl6oFDBmmBWCE9oW9LxRGcfwZ0hLvEprzo202wXl7vCYHRlSnOT",
"https://unpkg.com/three@0.184.0/examples/jsm/controls/OrbitControls.js": "sha384-4rziNxOBZKQ69i+w+f89KJ55TCYquwchVbByQwmaOeIOXdOU2PLDn3kOfXHwIJC9",
"https://unpkg.com/three@0.184.0/examples/jsm/exporters/OBJExporter.js": "sha384-nbwtoZENJD3Vq+ACK0CuGQdPMuDWHkamC2KJD70EV5nfg6jQjfppKOea07YJN+N3",
"https://unpkg.com/three@0.184.0/examples/jsm/exporters/GLTFExporter.js": "sha384-VofkvpG6HERhFCYbsUOHeNXBCqID2nfqkQqnVzE1jc/oPcz+qJ13ADdXH08hE+cQ"
}
}
</script>
Build the model programmatically, as a THREE.Group composed of named
parts:
- Compose primitives (BoxGeometry, CylinderGeometry, SphereGeometry,
TorusGeometry, LatheGeometry, ExtrudeGeometry with Shape) before
reaching for raw BufferGeometry; real objects decompose into far more
primitives than you'd guess.
- NAME every mesh and every material ("hull", "walnut", "brass") — the
names become the o / usemtl entries in the exported OBJ and the node
names in the GLB, which is what makes the download usable in Blender.
- Use MeshStandardMaterial with a small curated palette (3-5 materials,
shared across parts); set roughness/metalness deliberately. Textures
don't survive the OBJ export — prefer geometry and material color over
texture detail.
- Model in real-world meters, y-up, centered on the origin, base resting
at the lowest y. Offset deliberately coplanar faces by ~0.001 so
nothing z-fights.
- Curved surfaces need enough segments to read as smooth at full screen
(32+ radial segments on feature surfaces), but don't tessellate what
no one will see.
The stage's toolbar gives the user OBJ + MTL (universal, geometry +
per-material colors) and GLB (the modern interchange format — keeps the
part hierarchy and PBR materials; imports cleanly into Blender, Maya,
Cinema 4D, Unity, Unreal). Those two are the export formats on offer —
when the user asks for something else (FBX, USDZ, STEP), say plainly
that the stage exports OBJ + MTL and GLB.
Iterate with screenshots: the stage keeps its last frame readable, so
the ordinary screenshot tools capture the live canvas — no extra steps.
After editing a module file, reload with show_html before screenshotting
(the iframe caches already-loaded modules). Look at the object from the
default framing and refine silhouette, proportion, and material
separation — the silhouette carries the object.From justinlietz93/Perfect_Prompts, MIT.
More from justinlietz93/Perfect_Prompts
- 0.611score
setup-writing-style
justinlietz93
Learns how the user writes from their own sent messages and docs, and builds a voice profile so future drafts sound like them instead of generic AI.
SkillBFreshness: B★ 23Claude Code +9 - 0.606score
run-skill-generator
justinlietz93
Author or improve the run-<unit> skill — a per-project skill that tells agents how to build, launch, and drive this project's app.
SkillBFreshness: B★ 23Claude Code +9 - 0.606score
design-sync
justinlietz93
Push a React design system to claude.ai/design.
SkillBFreshness: B★ 23Claude Code +9 - 0.605score
deep-research
justinlietz93
Deep research harness — fan-out web searches, fetch sources, adversarially verify claims, synthesize a cited report.
SkillBFreshness: B★ 23Claude Code +9 - 0.603score
comprehensive-data-analysis
justinlietz93
Execute complete, rigorous data analysis workflows from problem understanding through validated results delivery.
SkillBFreshness: B★ 23Claude Code +9 - 0.603score
hi-fi-design
justinlietz93
The design process for high-fidelity, polished work — the system prompt tells Claude to invoke it before starting any design
SkillBFreshness: B★ 23Claude Code +9 - 0.600score
frontend-design
justinlietz93
Aesthetic direction for designs outside an existing brand system
SkillBFreshness: B★ 23Claude Code +9 - 0.600score
options
justinlietz93
Present multiple design options as a vertical stack of anchored turns
SkillBFreshness: B★ 23Claude Code +9 - 0.600score
maps-geography
justinlietz93
Accurate maps from real geo data — use for any map, or whenever geography would make a good graphic for a deliverable
SkillBFreshness: B★ 23Claude Code +9 - 0.600score
create-design-system
justinlietz93
Skill to use if user asks you to create a design system or UI kit
SkillBFreshness: B★ 23Claude Code +9 - 0.597score
web-research
justinlietz93
Findings grounded in live web sources
SkillBFreshness: B★ 23Claude Code +9 - 0.597score
export-as-pptx-editable
justinlietz93
Native text & shapes — editable in PowerPoint
SkillBFreshness: B★ 23Claude Code +9
Signals
- Stars
- 23
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Aug 24, 2026 (2 months ago)
- Last release
- Aug 22, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/justinlietz93/Perfect_Prompts
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from justinlietz93
- 0.611score
setup-writing-style
justinlietz93
Learns how the user writes from their own sent messages and docs, and builds a voice profile so future drafts sound like them instead of generic AI.
SkillBFreshness: B★ 23Claude Code +9 - 0.606score
design-sync
justinlietz93
Push a React design system to claude.ai/design.
SkillBFreshness: B★ 23Claude Code +9 - 0.606score
run-skill-generator
justinlietz93
Author or improve the run-<unit> skill — a per-project skill that tells agents how to build, launch, and drive this project's app.
SkillBFreshness: B★ 23Claude Code +9 - 0.605score
deep-research
justinlietz93
Deep research harness — fan-out web searches, fetch sources, adversarially verify claims, synthesize a cited report.
SkillBFreshness: B★ 23Claude Code +9 - 0.603score
comprehensive-data-analysis
justinlietz93
Execute complete, rigorous data analysis workflows from problem understanding through validated results delivery.
SkillBFreshness: B★ 23Claude Code +9 - 0.603score
hi-fi-design
justinlietz93
The design process for high-fidelity, polished work — the system prompt tells Claude to invoke it before starting any design
SkillBFreshness: B★ 23Claude Code +9
Cite this page
3d-object skill. Agent Mart. https://agentmart.dev/skills/justinlietz93-3d-object (last updated 2026-10-24)