feat: new theme (computers)
This commit is contained in:
@@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"theme": {
|
||||||
|
"name": "Computers & GalliumCoin",
|
||||||
|
"title": "GalliumCoin Mining Lab",
|
||||||
|
"res": { "units": "CPU Power", "unit": "cycle", "funds": "GalliumCoin", "material": "Energy (W)" },
|
||||||
|
"fmt": { "funds": "{value} GAL" },
|
||||||
|
"action": { "make": "Run a computation", "buyMaterial": "Buy energy" },
|
||||||
|
"gen": {
|
||||||
|
"gen1": { "name": "Old Laptop", "desc": "Fans screaming, but it still crunches numbers." },
|
||||||
|
"gen2": { "name": "Gaming PC", "desc": "The RGB lighting adds at least 10% more power." },
|
||||||
|
"gen3": { "name": "GPU Mining Rig", "desc": "Six graphics cards and a prayer." },
|
||||||
|
"gen4": { "name": "Server Rack", "desc": "Forty-two units of blinking lights." },
|
||||||
|
"gen5": { "name": "Data Center", "desc": "A warehouse of racks and an industrial cooling plant." },
|
||||||
|
"gen6": { "name": "Quantum Mainframe", "desc": "Computes every possibility at once." }
|
||||||
|
},
|
||||||
|
"upg": {
|
||||||
|
"click_1": "Mechanical Keyboard",
|
||||||
|
"click_2": "Keyboard Macros",
|
||||||
|
"click_3": "Neural Interface",
|
||||||
|
"g1_a": "Thermal Paste",
|
||||||
|
"g1_b": "Fresh OS Install",
|
||||||
|
"g2_a": "Liquid Cooling",
|
||||||
|
"g2_b": "Overclocking",
|
||||||
|
"g3_a": "Custom BIOS",
|
||||||
|
"g3_b": "Memory Timing Tuning",
|
||||||
|
"g4_a": "Hot-Swap Drives",
|
||||||
|
"g4_b": "Load Balancer",
|
||||||
|
"g5_a": "Redundant Power Lines",
|
||||||
|
"g5_b": "Free Cooling (Arctic Site)",
|
||||||
|
"g6_a": "Cryogenic Coolant",
|
||||||
|
"g6_b": "Entangled Qubits",
|
||||||
|
"global_1": "Firmware Update",
|
||||||
|
"global_2": "Parallel Computing",
|
||||||
|
"global_3": "Learning Scheduler",
|
||||||
|
"global_4": "Distributed Grid",
|
||||||
|
"demand_1": "Forum Hype",
|
||||||
|
"demand_2": "Tech Influencers",
|
||||||
|
"demand_3": "Exchange Listing",
|
||||||
|
"demand_4": "Global Hype Cycle",
|
||||||
|
"value_1": "Shiny Whitepaper",
|
||||||
|
"value_2": "Celebrity Endorsement",
|
||||||
|
"value_3": "To The Moon",
|
||||||
|
"mat_eff_1": "Efficient PSU",
|
||||||
|
"mat_eff_2": "Low-Power Chips",
|
||||||
|
"mat_disc_1": "Off-Peak Contract",
|
||||||
|
"mat_disc_2": "Own Solar Farm",
|
||||||
|
"stack_1": "Bigger Batteries",
|
||||||
|
"stack_2": "Capacitor Banks",
|
||||||
|
"stack_3": "Grid Substation",
|
||||||
|
"stack_4": "Dedicated Power Line",
|
||||||
|
"stack_5": "Private Power Plant",
|
||||||
|
"auto_buy": "Smart Power Meter"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"theme": {
|
||||||
|
"name": "Ordinateurs et GalliumCoin",
|
||||||
|
"title": "Laboratoire de minage GalliumCoin",
|
||||||
|
"res": { "units": "Puissance CPU", "unit": "cycle", "funds": "GalliumCoin", "material": "Énergie (W)" },
|
||||||
|
"fmt": { "funds": "{value} GAL" },
|
||||||
|
"action": { "make": "Lancer un calcul", "buyMaterial": "Acheter de l'énergie" },
|
||||||
|
"gen": {
|
||||||
|
"gen1": { "name": "Vieux portable", "desc": "Les ventilateurs hurlent, mais il calcule encore." },
|
||||||
|
"gen2": { "name": "PC gamer", "desc": "Les LED RGB ajoutent au moins 10 % de puissance." },
|
||||||
|
"gen3": { "name": "Rig de minage GPU", "desc": "Six cartes graphiques et une prière." },
|
||||||
|
"gen4": { "name": "Baie de serveurs", "desc": "Quarante-deux unités de lumières clignotantes." },
|
||||||
|
"gen5": { "name": "Centre de données", "desc": "Un entrepôt de baies et une centrale de refroidissement industrielle." },
|
||||||
|
"gen6": { "name": "Mainframe quantique", "desc": "Calcule toutes les possibilités à la fois." }
|
||||||
|
},
|
||||||
|
"upg": {
|
||||||
|
"click_1": "Clavier mécanique",
|
||||||
|
"click_2": "Macros de clavier",
|
||||||
|
"click_3": "Interface neuronale",
|
||||||
|
"g1_a": "Pâte thermique",
|
||||||
|
"g1_b": "Réinstallation propre",
|
||||||
|
"g2_a": "Watercooling",
|
||||||
|
"g2_b": "Overclocking",
|
||||||
|
"g3_a": "BIOS personnalisé",
|
||||||
|
"g3_b": "Réglage des timings mémoire",
|
||||||
|
"g4_a": "Disques à chaud",
|
||||||
|
"g4_b": "Répartiteur de charge",
|
||||||
|
"g5_a": "Lignes électriques redondantes",
|
||||||
|
"g5_b": "Refroidissement naturel (site arctique)",
|
||||||
|
"g6_a": "Liquide cryogénique",
|
||||||
|
"g6_b": "Qubits intriqués",
|
||||||
|
"global_1": "Mise à jour du firmware",
|
||||||
|
"global_2": "Calcul parallèle",
|
||||||
|
"global_3": "Ordonnanceur apprenant",
|
||||||
|
"global_4": "Grille distribuée",
|
||||||
|
"demand_1": "Buzz sur les forums",
|
||||||
|
"demand_2": "Influenceurs tech",
|
||||||
|
"demand_3": "Cotation sur une plateforme",
|
||||||
|
"demand_4": "Cycle de hype mondial",
|
||||||
|
"value_1": "Livre blanc clinquant",
|
||||||
|
"value_2": "Soutien d'une célébrité",
|
||||||
|
"value_3": "Vers la Lune",
|
||||||
|
"mat_eff_1": "Alimentation efficace",
|
||||||
|
"mat_eff_2": "Puces basse consommation",
|
||||||
|
"mat_disc_1": "Contrat heures creuses",
|
||||||
|
"mat_disc_2": "Ferme solaire perso",
|
||||||
|
"stack_1": "Batteries plus grosses",
|
||||||
|
"stack_2": "Bancs de condensateurs",
|
||||||
|
"stack_3": "Poste de transformation",
|
||||||
|
"stack_4": "Ligne électrique dédiée",
|
||||||
|
"stack_5": "Centrale privée",
|
||||||
|
"auto_buy": "Compteur intelligent"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
/* Computers: a dark control-room console. */
|
||||||
|
:root[data-theme='computers'] {
|
||||||
|
color-scheme: dark;
|
||||||
|
--bg: #0d1117;
|
||||||
|
--surface: #161b22;
|
||||||
|
--surface-2: #21262d;
|
||||||
|
--text: #e6edf3;
|
||||||
|
--text-muted: #9aa5b1;
|
||||||
|
--border: #30363d;
|
||||||
|
--accent: #1f6feb;
|
||||||
|
--accent-contrast: #ffffff;
|
||||||
|
--danger: #f85149;
|
||||||
|
--radius: 6px;
|
||||||
|
--font: 'Segoe UI', Inter, system-ui, -apple-system, sans-serif;
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"order": 5,
|
||||||
|
"assets": {}
|
||||||
|
}
|
||||||
@@ -19,7 +19,7 @@ test('resolveSafe stays inside the public directory', () => {
|
|||||||
test('/api/themes lists installed themes with their languages', async () => {
|
test('/api/themes lists installed themes with their languages', async () => {
|
||||||
const themes = await handleApi(PUBLIC_DIR, '/api/themes');
|
const themes = await handleApi(PUBLIC_DIR, '/api/themes');
|
||||||
const ids = themes.map((t) => t.id);
|
const ids = themes.map((t) => t.id);
|
||||||
for (const id of ['paperclip', 'witch', 'alien', 'insects']) assert.ok(ids.includes(id), id);
|
for (const id of ['paperclip', 'witch', 'alien', 'insects', 'computers']) assert.ok(ids.includes(id), id);
|
||||||
assert.deepEqual(themes.find((t) => t.id === 'paperclip').locales, ['en', 'fr']);
|
assert.deepEqual(themes.find((t) => t.id === 'paperclip').locales, ['en', 'fr']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user