Kernel Night
The lights are low, but the circuitry is awake. Violet weather rolls behind green LED contours, with a fine lattice of dots giving the dark its structure. The familiar RoachNet after-hours look.
A little strange. Entirely deliberate. The RoachNet signature doesn't look like a typical software logo, because it has somewhere to be. The roach leans forward, six legs caught mid-stride, heading right. Beside it sits the RoachNet wordmark: wide, sturdy letters with a green-lit o that echoes the light in the roach's cap. That small link is the whole idea in miniature: the character, the name and the interface belong to the same world. Kernel violet gives the identity its backbone, signal green makes it feel switched on, and Anybody gives the letters their unapologetic shape. Use the full signature wherever there's room. When space gets tight, the compact lockup and the micro-mark keep it recognizable, on a navigation bar as much as on a billboard.
One character, one wordmark, three ways to keep them together. Every lockup uses the same roach and the same outlined wordmark; only the arrangement changes. The horizontal lockup is the signature: the roach to the left of the wordmark, centred on the line, 2.5 times the wordmark's size in width, for page headers, heroes and larger placements. The compact lockup is the small-space specialist: the micro-mark takes the roach's place at the wordmark's own size, for navigation, title bars and anything under about 160 px wide. The stacked lockup is the square deal: the roach above the wordmark at 0.6 of its width, for splash screens, covers and social cards.
HorizontalThe signature
CompactThe small-space specialist
StackedThe square deal
The wordmark on its own follows the same finishes, and it is always the supplied outlined drawing, never "RoachNet" typed out in Anybody. Typing it is close the way a photocopy of your house key is close.
The mark already has plenty of character; it doesn't need anything crowding its antennae. Clear space is measured in x, the height of the wordmark's o.
wordmark 20 px or more, so the roach is 50 px widewordmark 16 px or more16 px12 px48 px wide16 px45 mm wide, so the roach is 12.6 mm20 mm wide25 mm20 mm12 mmSix legs. Excellent timing. Questionable sleep schedule. This is RoachNet's one and only character: an oddly endearing roach, drawn from three quarters and already halfway into its next step. Three legs on either side; yes, someone counted. Unlike a mascot pasted onto a landing page, this one belongs to the interface. It notices you, gets curious, has a job to do, and now and then decides it has done enough for one day.
Press once for a hop. Press twice and it dashes off, then comes back.
Anatomy of a tiny troublemaker
Six ways to set the roach, one for every ground the docs use. Point at one to see it scurry in place.
The full-color roach starts at 48 px wide. Below that, use the micro-mark: a compact drawing with the wing case's lit edge, the pale collar, the green cap and four legs instead of six. That is a deliberate simplification, not a drawing error. At 16, 20, 24 and 32 px it is hinted pixel by pixel, so use the file made for the exact size rather than scaling one; between those sizes, use its vector.




This isn't a logo that appears on the first page and then goes home.
Kernel violet has the wheel. Signal green knows when things are moving. RoachNet doesn't need a rainbow of competing actions; it needs a visual language you learn without thinking about it. Kernel violet, #703093, is the one action color: the button worth pressing, the selected state, the keystone at the centre of the docs. It comes as a ramp of eleven steps in one hue, enough range for a page that's nearly black or nearly white. The ratios below are measured against each theme's page ground.
| Step | Hex | Where it goes | On Kernel Night | On Daylight |
|---|---|---|---|---|
| 50 | #FBF4FF | Tinted surfaces on light pages | 18.76:1 | under 3:1 |
| 100 | #F4E4FE | Hover surfaces on light pages | 16.72:1 | under 3:1 |
| 200 | #E4C7F9 | Borders and selection on light pages | 13.32:1 | under 3:1 |
| 300 | #D1A4EF | Small violet text on dark surfaces | 9.88:1 | under 3:1 |
| 400 | #B97EDE | Violet text and links on dark pages | 6.83:1 | under 3:1 |
| 500 | #9554BB | Glow, lit edges and hover halos on dark | 4.10:1 | 4.52:1 |
| 600 | #703093 | The action fill, violet text on light pages, the wing case | under 3:1 | 7.61:1 |
| 700 | #5C257A | Pressed fills, small violet text on light | under 3:1 | 9.64:1 |
| 800 | #421A58 | Deep fills, the end of the gradient | under 3:1 | 12.68:1 |
| 900 | #260F34 | Tinted surfaces on dark pages | under 3:1 | 16.06:1 |
| 950 | #15081C | The darkest tint, in the field's shadows | under 3:1 | 17.80:1 |
Buttons and the keystone use step 600, with pale #F7EEFF on it at 7.35:1. Hover lights the fill from inside with step 500 and adds a halo; press goes to 700.
Step 600 is too deep to read as text on night (2.43:1), so violet text there uses step 400 (6.83:1). On paper, 600 reads at 7.61:1. Same identity, a different job on each surface.
#36FF84Live, current, complete: the LED in the wordmark and the light in the roach's cap.
#36FF84 · #007A39A visible 3 px ring that shows exactly where keyboard input goes: signal green on dark pages, a deeper green on light ones.
#FF7A6B · #B8301DA warning about actions that break or delete data. It isn't decoration: save it for the moments that deserve a second look before anyone clicks.
Color with a job description. Patchbay gives every docs chapter its own cord: a ground, a contrasting ink and an accent that stays readable on the page around it. That's how Guides can feel different from Reference without the interface turning into a scavenger hunt for the right button. The keystone wears Kernel violet. Pick a card to inspect its values and its contrast, measured live in the theme you're using.
Set a cord once on a container and let components read its three tokens. Use the ground for fills, the ink for text on it, and the accent for text on the page.
Stack competing cords on one component, scatter raw hex values through components, or reach for hazard red because a section needs more excitement.
A cord's ground and ink stay paired in every theme. Its accent adjusts to the page around it so the words stay readable: the environment can change, the meaning shouldn't. The nine themes are further down.
Three typefaces, three very different personalities. A page should know when to speak up, when to explain and when to show you an exact command without getting creative about the characters. Anybody handles the big moments: headlines, module names and the display language that gives RoachNet its silhouette. It stretches, carries weight and isn't afraid to take up space. Schibsted Grotesk does the long-distance work, the paragraphs and instructions that get you from curiosity to understanding. JetBrains Mono handles anything machine-facing: commands, paths, keys, ports and these little eyebrows. All three are self-hosted under the SIL Open Font License, so the docs never call a font service to look like themselves.
Offline on purpose.
The production wordmark is a custom outlined drawing inspired by Anybody, at about 850 weight and 112% width, with its own LED o. Those are construction cues, not a recipe for retyping the logo in live text.
--t-megaSpecs--t-displayStart here--t-h1Find the port--t-h2What leaves your Mac--t-bodyRoachNet goes online to fetch what you ask for and to check GitHub for its own updates.--t-micro~/RoachNet/storageGive things an entrance. Then let people read. Motion is part of the identity, but it doesn't get to be the main character in every paragraph. The interface assembles itself, shows you where things came from and settles down when there's work to do. Most animation happens once, on arrival. The field and the roach are the exceptions: environmental, responsive and a little more curious. Reduce Motion removes the performance without withholding any content. Every demo below replays and pauses, and says where you'll meet it.
Reduce Motion is on, so each demo shows where it ends, with the moments in between as stills.
Things finding their place. A card rises the last few pixels into position and its neighbours arrive a beat later: just enough movement for the page to feel assembled rather than switched on.
WhereSection titles and cards as they scroll into view, the search palette, the menu's modules.
--ease-assemble760 ms68 ms apart
Keep your bearings. The dock stays where it is while a new page takes the stage, and the incoming hero travels over the old one in its chapter's color, so the change has a direction and you keep your sense of place.
WhereGoing from page to page in the docs, in browsers that support view transitions; elsewhere, a plain cut.
--ease-assemble640 ms
A little farther back than it looks. Three layers respond at three rates: move the pointer over the window or scroll, and the nearer the layer, the further it travels. Behind the reading column, the effect quiets down.
WhereBehind every page. It goes quiet behind anything you read.
scroll × 0.08 · 0.22 · 0.5pointer, eased
The interface answers back. A module leans toward the pointer and its ground darkens so its cord-colored lettering comes forward. Violet buttons light from within. Keyboard focus gets a steady green ring, not a flash you have to chase.
WhereModules, buttons and every control. What hover shows, focus shows too.
--ease-snap220 ms3 px ring
A new room, same doorway. A theme opens outward from the point where you chose it, and the field follows at the same pace. The page stays usable throughout, and your next press ends the animation at once.
WhereThe theme selector in the dock, and the theme gallery further down this page.
860 ms × the theme's tempo--ease-assemble
Make an entrance, not a speech. A page opens with its word set huge in Anybody and stretched from narrow to wide, its sticker drops into place with a small snap, and then it stops. The words are there to be read.
WhereThe top of every guide and reference page, and the home page's headline.
font-stretch 56% to 150%--ease-snap for the sticker
Working hard. Mostly. The roach is the one character in the system, and it only moves at its joints. It watches the pointer, blinks, perks up when you come near, looks busy while a search runs and cheers when it finds something. Leave it alone for twenty seconds and it dozes off; apparently even pixels have limits.
WhereThe keystone on the home page, once it has hatched, and here.
legs in two tripods, 160 mshop 720 msdoze after 20 s
Seven chapters, one little ignition. The docs home page puts itself together as you scroll: the seven chapter tiles fly in from their nearest edges and settle around the keystone, the green light from the headline lands on it as the roach's cap, and the roach takes shape around that light, collar, wing case, legs, antennae, then the eyes. It plays once, so the rest of the page can get on with being useful. On a phone, each chapter arrives as it scrolls into view.
WhereThe docs' home page, and nowhere else. The mosaic is the docs' own layout.
easeOut cubic for travel--ease-snap to lockthe hatch, about 1.7 s
cubic-bezier(0.16, 1, 0.3, 1)Arrivals: modules, sheets, the search palette.
cubic-bezier(0.34, 1.56, 0.64, 1)The physical moments: a module locking in, a jack seating, a sticker landing.
cubic-bezier(0.4, 0, 0.2, 1)Things that change in place: a theme, a color, the roach breathing.
linearOnly for things that loop: the bands, packets on the loopback ring.
120 · 220 · 420 · 760 ms, and 1200 ms for a sceneabout 60 to 90 ms between neighboursThere's something happening behind the page. Look past the words and you'll find the field: one WebGL canvas behind everything, layered at three depths, with its pixels drawn through the theme's own dither pattern (Bayer, blue noise, halftone or scanlines). Sometimes it reads as LED contours; sometimes as fog, terrain, scanlines or sparks. It isn't meant to compete with the text, so it goes quiet behind anything you read and keeps its wandering for the margins. This window lifts the quiet: point at it, click it and scroll past it.
Nine themes, nine different moods. A theme changes more than the wallpaper: it brings its own ground and surfaces, text accents, field composition, dither pattern, light and tempo. The interface stays familiar while the atmosphere changes around it. Choose one here or with the selector in the dock. Your choice is kept in this browser, for this site only, and nothing is sent anywhere. Until you choose, the docs follow your system's light or dark setting, and High Contrast when you've asked your system for more contrast. All nine are available all year, the five Halloween themes included. Only the default changes with the season: from 24 October to 1 November, anyone who hasn't chosen gets Spectral on a dark system or Bone on a light one.
The lights are low, but the circuitry is awake. Violet weather rolls behind green LED contours, with a fine lattice of dots giving the dark its structure. The familiar RoachNet after-hours look.
For seeing your notes without feeling you're in a server room at midnight. Paper, graphite, a violet-grey atmosphere and a quiet dotted texture. Bright, clear and still very much RoachNet.
A green-phosphor CRT that never quite left the workbench: one colour of glow, scanline dithering and a slow roll across the field. Familiar to anyone who has trusted a terminal more than a dashboard.
A little green light should be comforting. This one drifts up through violet fog, unravelling into filaments and sparks. Beautiful, technically. Less reassuring.
Purple fog recedes into three layers of depth. Pale shafts of light come down from somewhere you can't see, and the whole scene breathes very slowly, as if it has been there a lot longer than the browser tab.
Half terrain map, half haunted circuitry. Contour lines draw a strange landscape while pulses run along paths that look a little too intentional.
Cool halftone light, clouds drifting past violet edges and a few faint stars. Quieter than the other Halloween scenes, in the way that makes you glance at the window for no reason.
Old paper, soft halftone fog and contour lines in sepia violet. A bright theme with the faint feeling that these pages came out of a locked drawer.
No atmospheric guessing games. Black and white lead, violet and green keep their meaning, the focus ring stays prominent and the field holds still. Clear comes first.
The little things are the system. A design system isn't only its logo and its hero. It's what happens when you're looking for a guide, copying a command, spotting a warning or working out which part of the interface you can click. Patchbay gives those everyday pieces one grammar: each takes its color from the cord it sits in, so the same module is lemon in Guides and amber in Reference.
shasum -a 256 -c RoachNet-Setup-macOS.dmg.sha256
RoachNet-Setup-macOS.dmg: OKRoachTail device tokens are compared in constant time and stop working after 90 days unused.
Reserved for actions that destroy data: never for suspense, decoration or making a routine setting feel dramatic.
The personality is optional. Being able to use the page isn't. The colors, the motion and the playful details only work if everyone can still read, navigate and understand the interface. Every text color clears WCAG AA on the grounds it's used on, in all nine themes, and the table shows the lowest ratio in each group, computed from the same colors these pages use.
| Theme | Body text4.5:1 | Muted text and captions4.5:1 | Cord accents as text4.5:1 | Inks on their cords4.5:1 | Cords on the hover ground4.5:1 | The panel and the console4.5:1 | Hazard text4.5:1 | Focus ring3:1 |
|---|---|---|---|---|---|---|---|---|
| Kernel Night | 14.85 | 4.93 | 5.59 | 5.47 | 6.16 | 5.98 | 7.58 | 12.43 |
| Daylight | 17.79 | 5.24 | 5.01 | 5.47 | 6.16 | 5.98 | 5.54 | 5.01 |
| Phosphor | 13.57 | 4.87 | 5.33 | 5.47 | 6.16 | 5.98 | 6.66 | 14.89 |
| Witchlight | 14.64 | 5.22 | 5.74 | 5.47 | 6.16 | 5.98 | 7.63 | 13.24 |
| Spectral | 14.77 | 5.11 | 5.58 | 5.47 | 6.16 | 5.98 | 7.95 | 12.41 |
| Hollow Circuit | 13.80 | 4.99 | 5.41 | 5.47 | 6.16 | 5.98 | 7.42 | 11.50 |
| Moonlit | 13.78 | 5.03 | 5.29 | 5.47 | 6.16 | 5.98 | 8.25 | 11.78 |
| Bone | 14.04 | 5.39 | 5.21 | 5.47 | 6.16 | 5.98 | 5.80 | 5.95 |
| High Contrast | 17.04 | 10.93 | 6.78 | 5.47 | 6.16 | 5.98 | 8.67 | 12.81 |
A 3 px ring on every control, in signal green on dark pages and #007A39 on light ones. Press Tab on this page to see it.
⌘K or / searches, [ and ] go to the previous and next page, and Esc closes the palette and the menu. Every page starts with a skip link.
With it on, every page shows its finished layout at once, the roach holds still and the field draws one still frame. Nothing waits behind an animation.
What hover shows, focus and touch show too. Nothing you tap is smaller than 24 px, and the dock's buttons and the search field are 38 px or more.
A state says itself in words: planned pages say "planned", and the hazard callout says "Deletes your data".
One H1 per page, headings in order, and labelled navigation, so a screen reader can move by structure.
Let the roach be the roach. The illustration is designed down to the joint. It doesn't need rotating, stretching, a surprise gradient or a new outline from whoever makes the next social card. A few rules keep it recognizable, and most of them come down to one: use it as it's drawn.
Keep the tiled mosaic to these docs: it's Patchbay's own composition, not a layout every RoachNet product needs to copy. The roach, the wordmark, the colors, the type and the motion are the parts that travel with the brand. Keep those consistent, and give each product and page room to be itself.
A chapter owns a paired ground and ink. Set data-pair once on its container and let the components inherit --pc, --pc-ink and --pc-accent: one assignment, consistent behavior.
Twelve columns set the layout and modules sit 8 px apart, so no visible line has to explain the structure. Only a mosaic's outer corners are rounded.
Anybody runs from 50 to 150 percent width and sets the words you'd read from across a room. Schibsted Grotesk carries the reading, and JetBrains Mono carries anything a Mac would print.
Modules arrive from their nearest edge and settle. With Reduce Motion they simply appear in place. A page never makes you wait for its own introduction.
The dithered field has three depths and answers the pointer, clicks and scrolling. It quiets behind the reading column, where your attention belongs.
Second person, specific names, plain explanations and honest limits. A little character makes the writing pleasant; clarity is what makes it useful.
The system underneath the personality. A brand system should be enjoyable to use and predictable to maintain. Patchbay builds on the shared RoachWares system, then adds the arrangements, chapters, animations and live demos that make these docs their own place.
/rw-system/ for the faces, the nine themes, the theme selector and the field; every RoachWares site uses the same files. Then add Patchbay's own: patchbay.css for the cords, the mosaic, the dock and the components, and patchbay.js for search, the outline, copy buttons, the home page's assembly and what the field does on each page. patchbay-roach.js runs the live roach and patchbay-showcase.js the motion demos.RoachNet's identity is allowed to be odd. The bug isn't pretending to be a spaceship, the colors aren't trying to cover every possible emotion, and the page doesn't need to dance forever to prove someone knew how to animate it. Everything has a part to play: the light says something is alive, the colors tell you where you are, the type keeps things readable and the motion helps the pieces settle into place.
Want to use the roach, the wordmark or another asset and not sure which file fits? Email contact@roachwares.org.