Skip to content
| Marketplace
Sign in
Visual Studio Code>Themes>Tapetum ThemeNew to Visual Studio Code? Get it now.
Tapetum Theme

Tapetum Theme

Țugui Dragoș-Constantin

|
7 installs
| (0) | Free
58 themes for VS Code, Cursor, VSCodium and Windsurf, drawn from things that actually make colour. 28 families in dark and light, placed by hand, plus a high contrast pair.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Website LinkedIn Instagram n8n creator Credly

 Tapetum Theme

VS Code installs
Open VSX downloads

58 themes for VS Code and Open VSX, drawn from things that actually make colour.


The tapetum lucidum is the mirror behind the retina that makes a cat's eyes flare in the dark. The same structure sits in almost every nocturnal animal, and each one throws back a different colour: green in cats, blue in horses, red in alligators, white in spiders. One mechanism, a whole collection of colours.

28 families, each in a dark and a light variant, plus a high contrast pair for Coherence. 6 of them have screenshots below. Every family has its full colour table under the name, and there are two recordings at the end that run through all 58.

Families

Quantum

Quantum

Quantum Light

Heat a gas and it does not glow across the spectrum, it glows at a handful of exact wavelengths and nothing in between. Hydrogen gives you 4 visible lines, neon gives you a fistful of reds, mercury a violet and a green so specific they are still used to calibrate instruments. Quantum takes its violet, blue and teal from that idea: a small set of exact positions rather than a smooth range.

Emission lines of heated gases
Tapetum Quantum Tapetum Quantum Light
background #0B0E1A #FAFBFF
foreground #C8D3F5 #24294A
keyword #CD8FF9 #7B2CBF
function #8AB4FF #2B5FD9
string #4DE0D0 #0A7570
type #6EE7A8 #06704A
number #FF9F45 #C25100
tag #FF6E9C #C42B7B
comment #6B739B #6D7291

Cochineal

Cochineal

Cochineal Light

Cochineal is a scale insect that lives on cactus, and carminic acid is what it makes to keep ants away. It gave Europe its first true scarlet, worth close to silver by weight, and it took about 70000 insects to make a pound of dye. The background is the crimson sunk into the cloth, the syntax is the same dye at different strengths.

Carminic acid, the first real scarlet Europe had
Tapetum Cochineal Tapetum Cochineal Light
background #1C0A0F #FBF2F3
foreground #EDD6DA #2A161B
keyword #F98794 #B01238
function #FFA6B6 #8A2050
string #E8B54A #8A5A00
type #8FC9A4 #1E6A46
number #FF8A5C #A64414
tag #B49BE8 #5B48A0
comment #9A7A82 #7C6268

Fraunhofer

Fraunhofer

Fraunhofer Light

In 1814 Joseph von Fraunhofer pointed a prism at the sun and found hundreds of dark gaps in the spectrum. They are elements in the sun's own atmosphere eating their own colours on the way out. He labelled the strongest with letters and those letters are still in use. Fraunhofer is the brightest family here, built around the sodium D line, the hydrogen alpha and the magnesium triplet.

Absorption lines in sunlight
Tapetum Fraunhofer Tapetum Fraunhofer Light
background #080A10 #FBFAF6
foreground #DDE1E8 #1B1D22
keyword #AF9CF9 #3A2FC9
function #4FC3F7 #0D6FA8
string #7CE85C #3D7A1F
type #00E5C0 #007A66
number #FFC93C #9A6A00
tag #FA6245 #C13A1A
comment #727A88 #6A6C70

Persistence

Persistence

Persistence Light

Oscilloscope phosphors are graded by how long they keep glowing after the beam has moved on. P1 is the willemite green everyone pictures, P7 goes blue then fades to a long yellow ghost, P11 is the blue used for photographing traces. Persistence is the green one, and the warmer colours are the ghost that P7 leaves behind.

Oscilloscope phosphor decay
Tapetum Persistence Tapetum Persistence Light
background #0A0B09 #F7F8F4
foreground #DCE0D8 #1C1F1A
keyword #7FE33F #3D7A14
function #8FB8FF #1A6E96
string #FFB742 #8A5A00
type #4ECFC0 #00786B
number #FF6B4A #B8402A
tag #B79BFF #6B3FA8
comment #7C8178 #676A63

Anodise

Anodise

Anodise Light

Anodised titanium has no pigment in it at all. The colour is an oxide layer a few hundred nanometres thick, and which colour you get depends only on the voltage: bronze around 20 volts, violet at 30, blue at 40, gold at 70. The metal underneath never changes. Anodise is the quietest family, all interference and no dye.

Interference on anodised titanium
Tapetum Anodise Tapetum Anodise Light
background #0C0C0D #F8F8F9
foreground #E2E2E4 #1D1D20
keyword #E8B54A #8A5A00
function #75ADE2 #2A5FA8
string #46C7C2 #0E6E8A
type #39B871 #22683F
number #E07A45 #B0501F
tag #C77DD8 #8A3D9E
comment #7E7E82 #66666A

Passepartout

Passepartout

Passepartout Light

A passepartout is the card mat around a framed photograph. It is not decoration, it is what makes the eye fall on the picture. Every theme puts the interface at the same brightness as the editor or darker. This one inverts it: the mat is far lighter than the plate, and the editor sits inside it as the print.

The mat around a framed photograph
Tapetum Passepartout Tapetum Passepartout Light
background #08080A #FDFDFB
foreground #DEDCD6 #1F1E1A
keyword #D8A83C #8A5F12
function #E4DFD2 #26241E
string #B8A88C #5A5038
type #A8B0A0 #3E5040
number #D89A6A #8A4A18
tag #C0A0B8 #6A3E62
comment #83807A #6E6A60

Coherence

A mixed argon and krypton ion laser puts out 6 visible lines from one tube at once, which is what a white laser actually is. Argon gives 457.9, 488.0 and 514.5 nm, krypton gives 413.1, 568.2 and 647.1. Every colour in the code is one of those lines. There is no magenta anywhere in it, because magenta is not a spectral colour and no laser can emit one. The interface falls to true black so the only thing emitting on the screen is the code.

6 lines from one argon and krypton ion laser
Tapetum Coherence Tapetum Coherence Light Tapetum Coherence High Contrast Tapetum Coherence High Contrast Light
background #040406 #FDFDFE #000000 #FFFFFF
foreground #C9CED6 #16181C #FFFFFF #000000
keyword #16DFF4 #0A5B64 #12EBFF #00616C
function #C891F9 #7C39C4 #E9C3FF #6F00F5
string #0EF477 #0A6830 #10FF7D #006727
type #F4D00C #716008 #FFE20E #695500
number #F46B57 #CF151A #FFA05C #B50005
tag #4E97F4 #0C67B5 #BAD2FF #0059A6
comment #7D8189 #63676E #9F9F9F #686868

Valence

Dissolve a transition metal and the water takes its colour. Permanganate is a violet so intense a few grains stain a litre, dichromate is orange, copper is sky blue, nickel green, cobalt chloride a deep blue that turns pink when it picks up water. These are transmission colours, not emission, which is why they read deeper and heavier than the rest of the collection.

Transition metals dissolved in water
Tapetum Valence Tapetum Valence Light
background #0B090E #FCFBFD
foreground #D4D1DC #222128
keyword #F976E7 #B70CA8
function #12B6E8 #0B6886
string #20D12E #0B6912
type #F2B486 #81440A
number #F46469 #D20B38
tag #6E90FA #0C68DF
comment #85828F #6B6874

Hadal

Water eats colour by depth. Red is gone by 5 metres, orange by 20, yellow by 50, green by 100, and below 200 there is only blue. Hadal makes that the rule: the colours that survive deepest get the most light and the most saturation, and the ones that die shallow are left faded on purpose. The red is almost grey, and it should be.

The depth at which each colour dies underwater
Tapetum Hadal Tapetum Hadal Light
background #04131C #F6FAFC
foreground #C6DCE1 #152225
keyword #97CCF2 #0A587B
function #0FCDD2 #0E6365
string #0CC681 #0A6D46
type #B69F4B #76630E
number #CB8661 #915431
tag #CA828B #9F5B66
comment #768B90 #586C71

Cinnabar

Before synthetic chemistry, colour was something you dug up and ground. Cinnabar is mercury sulfide and gave the vermilion of Pompeii. Orpiment is arsenic and was the only clean yellow for a thousand years, poisonous enough that painters avoided mixing it with lead. Malachite, azurite and lapis came out of the same kind of rock. Warm and heavy, because pigment is.

Mineral pigments ground before synthetic chemistry
Tapetum Cinnabar Tapetum Cinnabar Light
background #100C09 #FAF7F0
foreground #DED2CD #251D19
keyword #F28F83 #BC0D22
function #47AFFA #0A699D
string #0CCEA0 #0C644C
type #F2BA24 #674D0A
number #FA54AC #CB0B82
tag #9C86F5 #6254D1
comment #90827B #72655E

Epitaxy

A polished silicon wafer is a dark mirror with a violet cast, and that is the background. The syntax colours are the real emission peaks of the materials grown on top of it: GaN at 405 nm, InGaN at 450 and 505, GaP at 555, AlGaInP at 590, AlGaAs at 660. The light variant is lit the way a cleanroom is lit, in yellow, because photoresist cannot see that end of the spectrum.

A silicon wafer and real LED emission peaks
Tapetum Epitaxy Tapetum Epitaxy Light
background #15151C #FBF9F0
foreground #D7DCE5 #251F19
keyword #77ABF9 #0A66B2
function #13C5B5 #0C6A61
string #F2C17A #6E4C0A
type #60D53D #1F660B
number #F2726E #CF0B30
tag #C771F8 #9841CD
comment #838A96 #71675E

Verdigris

Copper does not corrode into one colour, it corrodes into a catalogue. Verdigris is the blue green of an old roof, malachite the deeper green of the ore, azurite the blue, cuprite the brick red of the first oxide layer, bornite the purple tarnish that gives peacock ore its name. Brass sits underneath as the metal before any of it happened.

What copper turns into as it corrodes
Tapetum Verdigris Tapetum Verdigris Light
background #0D0B08 #F7F4ED
foreground #DBD2CE #211B18
keyword #0FCBB7 #0C6157
function #B09BFA #6354B0
string #E4BF39 #5F4E0B
type #41BF76 #0B6A3A
number #F46577 #BE2A49
tag #2AA2C8 #0C728F
comment #8F817D #70635F

Cherenkov

A particle moving faster than light does in water drags a shockwave of light behind it, and that is the blue glow in a reactor pool. The intensity rises as 1 over lambda squared, so the shorter the wavelength the stronger it gets, which is why it looks violet blue. There is not a single warm colour in this family, because the physics does not produce one.

A reactor pool. No warm colour exists in it
Tapetum Cherenkov Tapetum Cherenkov Light
background #061527 #F5F8FD
foreground #CADEE6 #152125
keyword #EE7DFA #B61CCB
function #3AB2F8 #0C75A9
string #0DE6D6 #0A3934
type #4FBE6F #0C7638
number #15C6EC #0D6377
tag #BCC2F2 #0B4496
comment #798C93 #586B71

Aerogel

Aerogel is 99 percent air and scatters short wavelengths the same way the sky does. Look at a block against a dark background and it is blue. Hold it up to a lamp and the light that gets through is amber. Same material, two colours, so the dark variant is the reflection and the light variant is the transmission. This is the only pair here that comes from one physical fact rather than two.

Rayleigh scattering. Blue reflected, amber transmitted
Tapetum Aerogel Tapetum Aerogel Light
background #0A0D12 #FBF6EC
foreground #C6D8DF #251C18
keyword #F2A47A #913E0A
function #54B2F2 #0F638F
string #0ED8D8 #0B5A5A
type #A187E9 #6D57B4
number #F27884 #C40A43
tag #66A567 #39773D
comment #75888F #74645D

Cavitation

Drive a bubble in water with sound and it collapses in under a nanosecond, reaching temperatures people still argue about, and emits a flash of light. Nobody fully agrees why. The flash is blue white and almost too fast to measure. Cavitation is the quietest palette in the collection, cold and low in chroma, with one hot colour for the core.

Sonoluminescence, the flash of a collapsing bubble
Tapetum Cavitation Tapetum Cavitation Light
background #05070B #F8FAFD
foreground #C3D4DB #162227
keyword #40D0ED #0C5B6A
function #7CACDD #3C709E
string #5CB8A5 #0B6355
type #CE8C54 #8F5621
number #F955AB #CC0C82
tag #D0A4DB #724A7D
comment #72858C #5A6C73

Noctiluca

Living light is nearly always blue green, because that is what travels furthest through seawater. Dinoflagellates glow at 480 nm and turn a breaking wave into a line of fire. Jellyfish green fluorescent protein sits at 509 and won a Nobel prize for being useful. Fireflies are further toward yellow. The red is the rarest thing here: one Brazilian beetle larva, the railroad worm, is the only land animal known to make it.

Light made by living things
Tapetum Noctiluca Tapetum Noctiluca Light
background #04090C #F5FAFA
foreground #C4D5D4 #172221
keyword #11D9A9 #0C5E48
function #AEBD0F #565D0B
string #3AB2F2 #0C658E
type #9291F2 #3657DD
number #FA6051 #D70E21
tag #1BA4AF #0F737B
comment #728786 #5A6C6B

Incandescence

Heat steel and it tells you its temperature. Dull red around 600 degrees, cherry at 750, orange at 900, amber at 1000, almost white by 1300. Blacksmiths read it by eye and still do. In this family lightness is temperature, so the ladder is not an aesthetic choice, it is the scale. The one cold colour is the blue at the base of the forge flame.

The temperature scale of hot steel
Tapetum Incandescence Tapetum Incandescence Light
background #0C0806 #FAF6F2
foreground #DDCFCD #251C1B
keyword #E8CC6A #574A0A
function #F2A854 #7A4B0A
string #F88A63 #AE350A
type #F7616A #D40B3B
number #F95A93 #D30B6B
tag #12A3E0 #0F6A92
comment #907F7D #746461

Safelight

Photographic paper cannot see the deep amber of an OC filter, which is why it is the only light you are allowed to switch on in a darkroom. You learn to read everything from one colour and how bright it is. Safelight works the same way: the code is a single amber in 4 intensities, and the only real colour in it is the red of the filter itself, kept for literals.

A darkroom under an OC filter
Tapetum Safelight Tapetum Safelight Light
background #2A1A0D #EDE6D6
foreground #F0DCBE #2C2318
keyword #FFF6E4 #1A130A
function #EBD3AE #463A26
string #FA8D6A #A83A16
type #CFB48A #6A5A3E
number #FF9463 #8A3D12
tag #B39970 #706043
comment #9C8665 #75664A

Dichroic

A dichroic filter absorbs nothing. It splits. What passes through has one colour and what reflects has exactly its complement, and there is no third. Structure travels through the filter and takes the teal, data reflects back and takes the magenta. That is the whole palette. The terminal is the one place that breaks the rule, because red and green have to stay red and green.

A dichroic filter. 2 hues in the whole of the code
Tapetum Dichroic Tapetum Dichroic Light
background #07110F #F5EEF3
foreground #C4D2CE #1E2321
keyword #3FE8BE #065246
function #14BFA0 #076659
string #FA7DC8 #850752
type #31A892 #097869
number #F658AE #AC136E
tag #E968AB #BD327F
comment #728781 #606F6B

Provenance

Every theme in the world colours by grammar. This one colours by where a symbol came from. What you defined here is gold and bold. What the language handed you is cyan and italic. What cannot change any more is violet. The rest of your own code is a single colour, and the keywords are deliberately dimmed, because you already know that function is a function. Open a file and you see instantly what is yours and what is borrowed.

Where each symbol came from  `provenance` scheme
Tapetum Provenance Tapetum Provenance Light
background #191B20 #F4F2ED
foreground #C6C8CC #2E3036
keyword #8E939E #6A6E76
function #F0B75A #855606
string #9EB096 #4A5C42
type #A8B8A0 #5A6C52
number #B9A6E8 #5B48A0
tag #6FC7E0 #0F6480
comment #7C808A #70747C

Stratum

A road cut through sediment is read by depth, not by content. Each band is a different million years. Stratum takes the colour off the syntax entirely and puts it on nesting depth: the code itself is one sandstone in 6 tones, and all 6 real colours are spent on bracket levels and indent guides. You see how deep you are without counting.

Sedimentary layers. Colour sits on nesting depth  `tone` scheme
Tapetum Stratum Tapetum Stratum Light
background #14110D #EFE9DC
foreground #E4DACA #241F16
keyword #BFA77B #5C4E32
function #F5E9CE #1E1808
string #D8C298 #3E3418
type #A7946E #6E6040
number #D2BC94 #31280F
tag #A69574 #6F6141
comment #7E7566 #77705E
nesting depth #E0D3B0 #C99C55 #C4674A #93A468 #8E96A8 #B18FC0 #8A6A1E #A0521E #4C6A2A #2A5A78 #6B3F8A #7A4A2A

Borrow

Rust made a whole language out of one question: can this change, and who is allowed to change it. Borrow puts that question on the colours. Constants and anything read only are cold. Reassignable variables are warm. Parameters are borrowed, so they are green and italic. And at the exact point where you write into a variable, the name lights up. You stop looking for mutation and start seeing it.

Whether a thing can change, and where it is written to  `borrow` scheme
Tapetum Borrow Tapetum Borrow Light
background #12151A #F5F6F9
foreground #C8CDD6 #22262E
keyword #64AEF9 #0C5FA8
function #EAECF0 #141820
string #66C070 #2C6620
type #A585EC #6A2FC0
number #F09A18 #9A5A00
tag #FA6362 #C00A18
comment #767D89 #6B7280

Palimpsest

A palimpsest is a parchment scraped clean and written over, with the old text still faintly readable underneath. Keywords, imports, punctuation and type annotations are the scraped layer here, pushed back toward the background. The names you chose and the data you wrote are the new text. Roughly two thirds of the screen recedes on purpose.

A scraped and rewritten manuscript  `signal` scheme
Tapetum Palimpsest Tapetum Palimpsest Light
background #191612 #EDE4CE
foreground #E8E1D2 #2A241A
keyword #8A8173 #6B6352
function #F5EEDE #16120C
string #D9A94A #7E5B0E
type #A19788 #6A6250
number #D9A94A #7E5B0E
tag #D68164 #8A3A22
comment #837A6C #716A58

Silverpoint

Silverpoint is drawing with a silver stylus on prepared paper. There is no colour, only line and tone, and no way to erase. Leonardo and Durer worked in it. This family has no hue in the code at all: 6 greys, plus weight and italic doing the work that colour usually does. The interface keeps a single silver blue accent so you can still find your cursor.

A silver stylus on prepared paper. No hue anywhere  `tone` scheme
Tapetum Silverpoint Tapetum Silverpoint Light
background #1A1A1C #E8E6E1
foreground #D2D2D6 #26262A
keyword #AAAAB0 #5E5E64
function #F0F0F4 #141418
string #BEBEC4 #3E3E44
type #AAAAB0 #4E4E54
number #C8C8CE #2C2C32
tag #97979D #64646A
comment #7E7E84 #6C6C72

Effect

Pure code and code that touches the world look identical in every theme. Here they do not. Await, async, throw, catch and every mutation burn. Functions that only compute, the types, and the data stay cold. It is the same idea a type system uses to track effects, except you can see it without reading a signature.

Which code touches the world and which only computes  `effect` scheme
Tapetum Effect Tapetum Effect Light
background #07100D #F3F8F5
foreground #C6D2CC #1D2622
keyword #6E8079 #5E6E68
function #5FD8C0 #0A6E5E
string #93B4CA #2E5C78
type #8E9CBE #3E4E80
number #FF5C4D #C22A18
tag #FFA03C #9A5200
comment #6E7B76 #65736E

Glacier

Glacier ice is blue because pressure squeezes the air bubbles out, the light path gets long, and red is absorbed on the way through. The older and more compressed the ice, the deeper the blue. Nothing in this family drops to black, not one surface, because nothing in a crevasse does either. The warm colours are the sun on the surface and the rock band running through it.

Compressed glacier ice. Nothing in it is black
Tapetum Glacier Tapetum Glacier Light
background #1A2733 #F2FAFD
foreground #DCEAF2 #18262F
keyword #0ECCCB #0A6B6C
function #9BD0F6 #0B5475
string #6BECBE #094B30
type #AEA0F0 #5461AD
number #F6B464 #804E08
tag #F67F87 #BB4355
comment #8AA0B0 #5E7382

Selenium

Selenium toning shifts the blacks of a silver print toward purple and stretches the tonal range at the same time. The result is an image that is warm in the shadows and cool in the highlights at once. So this family does not pick 6 separate hues. It picks a ladder of lightness and lets the hue rotate as the ladder descends.

Selenium toning. Hue rotates as tone drops
Tapetum Selenium Tapetum Selenium Light
background #14131A #F5F2F0
foreground #D6DEEC #1E1C22
keyword #B1A2D0 #60537D
function #BDD4E0 #31454F
string #A7BBDE #3A506E
type #BD86AD #865277
number #D17F90 #9F5263
tag #D58075 #A7564E
comment #807A8A #736C7C

Riso

A Riso duplicator does not mix colour. It pulls one pass per ink and lays them over each other, slightly out of register. The inks come from a fixed catalogue you order by name, and the fluorescent pink is impossible to mistake for anything else. These are 6 of them, printed on kraft.

The 6 spot inks you can order for a duplicator
Tapetum Riso Tapetum Riso Light
background #16130E #F5F0E4
foreground #E8E2D4 #211E16
keyword #FA80BB #C4157E
function #FFEE3C #7A6000
string #3FC97E #0A6E42
type #5FBCC4 #0E6068
number #FF7F42 #B4470E
tag #A289DB #5A4694
comment #847C6C #7C7462

All 58, in one pass

Every theme in the collection, applied live while scrolling the picker.

All Tapetum dark themes

That was the dark half. The light variants are not inversions of it. A colour that reads clearly at Lc 80 on black is often unreadable on white, and the reverse holds just as firmly, so every light palette was placed by hand and measured on its own ground. Same families, same sources, different physics.

All Tapetum light themes

6 ways of colouring code

Almost every theme in existence answers one question: what kind of symbol is this. Keyword, string, number, type. Tapetum ships that scheme and 5 others. The scheme is a property of the theme, so switching theme switches the rule.

Scheme What colour means Families
grammar What kind of symbol it is. The classic. 22
provenance Where the symbol came from. Gold and bold for what you defined here, cyan and italic for what the language gave you, violet for what cannot change. Keywords are dimmed, because you already know function is a function. Provenance
borrow Whether it can change. Cold for frozen, warm for mutable, green and italic for borrowed parameters, and the name lights up at the exact point you write to it. Borrow
effect Whether it touches the outside world. await, async, throw and every mutation burn. Pure computation stays cold. Effect
signal Signal against boilerplate. Keywords, imports, punctuation and type annotations are scraped back toward the background. Only the names you chose and the data stay lit. Palimpsest
tone Nothing. There is no hue in the code at all, only 6 tones plus weight and italic. Stratum, Silverpoint

provenance, borrow and effect read the semantic tokens your language server emits, including the declaration, defaultLibrary, readonly, static, modification and async modifiers that most themes ignore. They fall back to grammar rules where no language server is running, so open a real file rather than a scratch buffer when you try them.

How they are checked

Colour is a judgement call, so every value here is placed by hand. An earlier version let an optimiser choose them and it converged: 2 of the families came out under 2 dE apart, and it had bleached the keywords to near grey chasing its own objective.

What is measured, on all 58 variants:

  • Contrast. Every syntax colour against its own background, and every piece of interface text against the surface it actually sits on. Syntax clears 4.5 to 1, comments clear 4.0. The lowest value anywhere is 4.53.
  • Separation. CIEDE2000 between every pair of coloured roles, and between every pair of families so no two look like each other.
  • Coverage. All 964 colour keys registered in the running VS Code build, including the chat, agents, inline edit and modern tab surfaces that most themes leave to the defaults.

The checks are not a hand-written list. tools/extract-pairs.mjs reads the workbench stylesheet out of the installed editor and collects every foreground and background used in the same rule, so what gets checked is what VS Code actually paints together. tools/extract-derivations.mjs reads the binary for the keys whose default is another key, which catches the class of bug where a value contradicts the surface beneath it.

node tools/analyze.mjs    # all 58, against the real pairs
node tools/audit.mjs      # structure, schemes, manifest, files and this README
node tools/compare.mjs    # against every theme Microsoft ships

In the grammar scheme, 6 roles carry their own hue: keywords, strings, functions, types, numbers and tags. Parameters and properties take the foreground colour and are told apart by italic, because a 7th saturated hue cannot be held away from the other 6 without washing all of them out.

Customizing

Override anything per theme in your settings.json:

{
  "workbench.colorCustomizations": {
    "[Tapetum Quantum]": {
      "editor.background": "#080B14"
    }
  },
  "editor.tokenColorCustomizations": {
    "[Tapetum Quantum]": {
      "comments": "#7580AD"
    }
  }
}

Install

  • VS Code Marketplace
  • Open VSX, which is what VSCodium, Cursor, Windsurf, Gitpod, code-server and Theia install from
code --install-extension tuguidragos.tapetum

Every family ships as Tapetum <Family> for the dark variant and Tapetum <Family> Light for the light one. Switch with Cmd+K Cmd+T, or Ctrl+K Ctrl+T on Windows and Linux, and type the family name to filter.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft