# Instalacja i użycie

> Źródło: repo ArikuTermiweestyleVencord/README.md — edytuj w repo, nie tutaj.

# ArikuTermiweestyleVencord

**AnvilTerminal for Discord**: terminal-green accents on VS Code grey, Fira Code for the UI and
JetBrains Mono for code, code blocks on a black terminal. The Discord side of
[ArikuTermiweestyleXfce](https://github.com/arikukaenbyou/ArikuTermiweestyleXfce) (same palette).
Servers (and folders) where someone is in voice or streaming get a **green ring**.
For [Vencord](https://vencord.dev) / [Vesktop](https://github.com/Vencord/Vesktop); works in BetterDiscord too.

## Install (Online Themes)

Vencord → **Settings → Themes → Online Themes**, paste:

```
https://git.ariku.pl/ariku/ArikuTermiweestyleVencord/raw/branch/main/AnvilTerminal.theme.css
```

It follows this repository, so fixes arrive by themselves. Use one of Discord's **dark** themes
(Dark, Darker or Midnight) — the light theme is left untouched.

BetterDiscord / offline: download `AnvilTerminal.theme.css` into your themes folder.

## Customise

Put this in QuickCSS (Vencord → Settings → Themes → Edit QuickCSS):

```css
:root {
  --anvil-font: 'gg sans', sans-serif;       /* back to Discord's UI font */
  --anvil-font-code: 'JetBrains Mono', monospace;
  --anvil-ui-scale: 0.9;                    /* whole app scale */
  --anvil-member-list-width: 220px;         /* right-hand member list */
  --anvil-font-size-adjust: 0.55;            /* text size, default 0.53; none = Discord's sizes */
  --anvil-voice-ring: transparent;           /* no green ring on servers with people in voice */
}
```

## How it works

Instead of hashed class names, it overrides Discord's own design tokens, which change far less often:

- a configurable **0.9 app scale** makes the whole interface more compact, and a **220px member list** keeps
  the standard Discord navigation layout intact; its width is adjustable in QuickCSS;
- the channel header uses a darkened crop of Luneta's terminal boot splash, bundled in `assets/`, so it works
  with online themes as well as local installs;
- the **brand ramp** (`--blurple-1…99`) keeps Discord's saturation and lightness per step but gets the
  green hue, so buttons, switches, mentions, unread pills and focus rings all turn green with the
  contrast Discord designed for them;
- the **surface, text and border tokens** of the dark themes get the grey palette.

| | colour |
|---|---|
| accent | `#00ff66` |
| chat | `#1f1f1f` |
| channel list | `#181818` |
| server list | `#141414` |
| code blocks | `#0c0c0c` |
| text | `#d7fce1` |

## Development

```sh
node build.mjs   # palette lives in build.mjs -> AnvilTerminal.theme.css
npm test         # generator in sync, header, CSS sanity, and every token still exists in Discord's live CSS
```

CI runs the tests on every push and weekly, to catch Discord renaming a token.

## Licence

MIT, see [LICENSE](LICENSE). Fonts (Fira Code, JetBrains Mono) are loaded from Google Fonts under the SIL OFL.

---

## Po polsku

**AnvilTerminal dla Discorda**: zielone akcenty terminala na szarości z VS Code, Fira Code w interfejsie,
JetBrains Mono w kodzie i czarne tło bloków kodu. Ta sama paleta co motyw XFCE
[ArikuTermiweestyleXfce](https://github.com/arikukaenbyou/ArikuTermiweestyleXfce).

- **Instalacja:** Vencord → Ustawienia → Motywy → Motywy online, wklej link:
  `https://git.ariku.pl/ariku/ArikuTermiweestyleVencord/raw/branch/main/AnvilTerminal.theme.css`
  Motyw sam się aktualizuje z tego repo. Działa z ciemnymi motywami Discorda (Ciemny, Ciemniejszy, Północ).
- **Zielona obwódka** oznacza serwery i foldery, na których ktoś jest na voice albo streamuje
  (wyłączysz ją przez `--anvil-voice-ring: transparent`).
- **Układ:** skala całej aplikacji to `--anvil-ui-scale` (domyślnie `0.9`), a szerokość listy członków to
  `--anvil-member-list-width` (domyślnie `220px`). Standardowa lista serwerów pozostaje po lewej, a członkowie po prawej.
- **Akcenty Lunety:** nagłówek serwera, aktywne kanały głosowe, lista serwerów i lista członków dostają subtelne zielone
  detale terminala. W nagłówku kanałów jest przycięty splash `01-terminal-boot`; asset znajduje się w repozytorium,
  więc działa także z motywem online. Panele konta i voice zostają na swoim miejscu, dzięki czemu nie zasłaniają obrazu podczas streamu.
- **Porządek serwerów:** motyw nie może tworzyć folderów ani zmieniać kolejności za Ciebie — to ustawienia
  konta Discord. Przeciągnij „Anvil of Suns | ariku.pl” na pierwszą pozycję poza folderami, a pozostałe
  serwery grupuj w zwijane foldery, np. `GAMES`, `COMMUNITIES` i `PROJECTS`. Kolory folderów mogą oznaczać
  kategorie; zwijanie folderu chowa jego serwery bez utraty miejsca na liście.
- **Czcionki** zmienisz w QuickCSS przez `--anvil-font` i `--anvil-font-code`, a ich wielkość przez
  `--anvil-font-size-adjust` (domyślnie 0.53, czyli rozmiar zbliżony do nominalnego; `none` wyłącza korektę). Przykład wyżej.
- **Jak to działa:** motyw nie opiera się na nazwach klas, tylko na zmiennych kolorów Discorda.
  Skala „blurple” dostaje zielony odcień przy zachowanej jasności, więc kontrasty zostają takie,
  jak zaprojektował je Discord. Testy co tydzień sprawdzają, czy Discord nie zmienił nazw zmiennych.