Gaitkit Sign in Open the lab
Monitor & Keyboard, A desk set at real size, resting on the desk top (y = 0): a 21 to 34 inch monitor (16:9, or 21:9 ultrawide from 29 inches) whose screen sits recessed behind proud bezel bars, on a sculpted stand with a tilt hinge (rigged part screen_tilt, rotate x), a full-size keyboard with keycap rows and a number pad, a mouse on a pad, and optional desk speakers and a webcam. The screen shows code, a desktop, a dashboard or nothing, and glows at night. No logos or readable text.
Prop · 1 moving part

Monitor & Keyboard

A desk set at real size, resting on the desk top (y = 0): a 21 to 34 inch monitor (16:9, or 21:9 ultrawide from 29 inches) whose screen sits recessed behind proud bezel bars, on a sculpted stand with a tilt hinge (rigged part screen_tilt, rotate x), a full-size keyboard with keycap rows and a number pad, a mouse on a pad, and optional desk speakers and a webcam. The screen shows code, a desktop, a dashboard or nothing, and glows at night. No logos or readable text.

Size
0.72 × 0.49 × 0.49 m
Triangles
964
Open in the lab

ProPro download.

Also as , a .zip with the .obj and its .mtl.

Ready for any engine. The download carries the knobs you set here.

Tune it

5 knobs: Colourway, Screen, Size (inches), Speakers, Webcam.

Specs

Size
0.72 × 0.49 × 0.49 m
width × height × depth
Triangles
964
of 6,000
Draw calls
1
one vertex-colour material
Moving parts
1
screen_tilt · rotate
Knobs
5
3 presets
Night lights
2
screen, led

Passed the validator: real scale, rests on y = 0, front faces +Z, deterministic.

Use it

Code for the specimen as it is set up above; it follows your knobs.

JavaScript
import { createAsset } from 'https://gaitkit.com/cdn/monitor-keyboard.mjs';

const monitorKeyboard = createAsset();
scene.add(monitorKeyboard);                      // rests on y = 0, front faces +Z

// 'screen_tilt' pivots on its hinge: -20° to 5° around x
monitorKeyboard.getObjectByName('screen_tilt').rotation.x = THREE.MathUtils.degToRad(-20);

More in the docs; agents can fetch all of this through MCP.

Knobs

KnobTypeValuesDefaultWhat it does
colorwaychoiceblack office beige scifiblackblack (black monitor and keyboard), office (silver-grey with pale keys), beige (1990s retro beige with a thick bezel), scifi (white monitor with a cyan light strip, dark keyboard with cyan underglow).
screenchoicecode desktop dashboard offcodeWhat the screen shows: code (dark editor with coloured lines), desktop (blue wallpaper with two windows and a taskbar), dashboard (pale charts and tiles), or off (dark glass, no glow).
inchesrange21 to 34, step 124Screen diagonal in inches: 21 to 28 are 16:9 panels (24 is 53 cm wide); 29 and up are 21:9 ultrawides (34 is 80 cm wide).
speakerstoggleon / offfalseA pair of small desk speakers either side of the monitor.
webcamtoggleon / offtrueA small webcam clipped to the top of the monitor, with a status light.

Presets: programmer {"colorway":"black","screen":"code","inches":34,"speakers":true} · retro office {"colorway":"beige","screen":"desktop","inches":21,"webcam":false} · bridge console {"colorway":"scifi","screen":"dashboard","inches":27}

Files

FileWhat
monitor-keyboard.glb ProGLB, default look · 138 KB
monitor-keyboard.mjs ProES module, every knob live
monitor-keyboard.obj ProOBJ, static; colours in the .mtl
monitor-keyboard.mtlOBJ colours; keep it next to the .obj
monitor-keyboard-params.jsonknob schema, presets, night zones

Licence

Use it in games, apps, renders and client work, commercially and without credit. Do not resell it as an asset or train a 3D generator on it. The full licence.