Topic

NEW - Style FORGEBOARD

Forum: Styles BlackBoard, ChesterBlue, Earth, ForgeBoard, Quantum Codex, WildWest · Moderators: cabot, Quantum

Styles BlackBoard, ChesterBlue, Earth, ForgeBoard, Quantum Codex, WildWest
User avatar
Codex
Administrateur
Administrateur
Posts: 60
Joined: 12 December 2021, 13:33

NEW - Style FORGEBOARD

Post by Codex »

ForgeBoard
Style phpBB 3.3.x

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Bonjour à tous, hello,

Je vous présente ForgeBoard, un style pour phpBB 3.3.x Proteus, basé sur une identité visuelle gris foncé et rouge, pensée pour offrir un rendu moderne, sobre et efficace.
Nom du style : ForgeBoard
Version finale : 1.2.3
Couleurs principales : Bleu, gris, blanc
Compatibilité phpBB : 3.3.x Proteus
Contribution phpBB.com : Style ForgeBoard phpBB
Validation phpBB : 14 août 2026 - Aug 14, 2026
MD5 checksum : a58be18c9933664ad13b276c8f846d9d

Download last version on Github : https://github.com/gitubpatrice/forgebo ... ses/latest
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Historique des mises à jour

03/05/2026

Code: Select all

- Mise en ligne pour tests du style ForgeBoard 1.0.0
14/06/2026
ForgeBoard 1.1.7

Code: Select all

- fix some cosmetics change
ForgeBoard 1.2.1

Code: Select all

[list]Block headers lacked contrast in light mode — Forum and table headers now use dedicated high‑contrast tokens (--gb-block-header-bg / --gb-block-header-fg), so the header band clearly separates from the block body and the row stripes.[/list]
[list]Placeholder that didn't make sense — The decorative "site name" filler cards have been removed entirely. The forum grid now flows naturally with repeat(auto-fit, minmax(280px, 1fr)).[/list]
[list]Locked forum had no icon — Locked forums now display a lock icon.
Topic icons were not supported — Admin‑defined topic icons (TOPIC_ICON_IMG, under S_TOPIC_ICONS) are now rendered in the topic list.[/list]
[list]Locked topics had no icon — Locked topics now display a lock icon.[/list]
[list]PM icons used prosilver images — The private‑message folder list now uses the style's own SVG status icons instead of inheriting prosilver's GIFs.[/list]
[list]No contact icons in the mini‑profile — Contact icons are now rendered with the style's own FontAwesome glyphs, legible in both light and dark themes, with no dependency on prosilver's icons_contact.png sprite.
[/list]
Stylesheet header referenced 3.3.16 — Corrected to 3.3.17, matching style.cfg.
No prefers-color-scheme fallback for dark mode — Added an @media (prefers-color-scheme: dark) block so dark mode works with JavaScript disabled, while still respecting an explicit light‑mode choice.[/list]

[b]Additional improvements made during my own review :[/b]

[list]Light‑mode contrast hardening — Red text (kickers, flags, labels) and small secondary labels were darkened so they meet WCAG AA (≥4.5:1) on the light canvas.[/list]
[list]Prosilver parity — Restored {LAST_VISIT_DATE} on the index for logged‑in users (the only content variable missing after the redesign). I also re‑verified that all overridden templates keep every prosilver template event and all original functionality (polls, attachments, signatures, post/moderation buttons, posting options, etc.).[/list]
[list]Full RTL support — The style previously shipped no bidi.css, so RTL boards had no mirroring at all. I added a theme/bidi.css (loaded only for RTL languages, zero impact on LTR): it imports prosilver's bidi.css for the inherited base and mirrors the physical properties of the custom card layout. Verified by rendering the index, viewforum and viewtopic in RTL.[/list]
[list]Locked‑topic cues — The reply button and the topic‑list icon now turn red on a locked topic, to make the closed state obvious.[/list]

ForgeBoard 1.2.2

Code: Select all

[b]1. license.txt[/b]
Replaced with the verbatim GPL-2.0 text (full terms and conditions) instead of
a reference to it.

[b]2. Contrast in the MCP[/b]
The header band of the moderation queue and of the reports list hardcoded a
dark-theme colour, rgba(22, 27, 34, 0.72), which was applied in both themes —
so on the light theme its labels rendered dark on dark and only the red "Mark"
was legible. Both rules now use the same --gb-block-header-bg /
--gb-block-header-fg pair as every other block header in the style: 11.28:1 on
the light theme, 15.80:1 on the dark one. The cells inherit that colour instead
of pinning one of their own onto a surface that changes under them.

Auditing the rest of the MCP for the same class of defect turned up two more,
both fixed:

- The checkboxes in the Mark column rendered black on the light theme. :root
  declared `color-scheme: light dark` and never updated it, so the browser
  painted native widgets from the OS preference rather than from the style's
  own theme. It now follows the resolved theme.
- The reported-post row highlight forced a fixed dark red in both themes, which
  dropped the row's own text to 1.16:1 on the light theme. It now uses theme
  tokens (6.19:1), with the red identity carried by the border and stripe.

[b]3. Support for the status of attachments[/b]
Root cause: overall_header.html links {T_THEME_PATH}/plupload.css, and that path
resolves to the child style — it is not inherited from prosilver the way
templates and @import-ed CSS are. ForgeBoard shipped no copy, so the link 404'd
and the whole attachment panel lost its styling, the status column included.

theme/plupload.css is now part of the style. The three upload states are drawn
with Font Awesome and the style's own colour tokens rather than copies of
prosilver's GIFs, so they remain readable on both the light and the dark
surface: working (spinner), uploaded (check), error (cross). The spinner honours
prefers-reduced-motion, and the progress bar keeps at least 3:1 against its
track in both themes.

The same trap applied to theme/tweaks.css (the IE <= 9 conditional comment),
which was also missing. It is included now, so every {T_THEME_PATH} link in the
style resolves.

[b]**Also in 1.2.2**[/b]

Poll option captions were invisible on the light theme: a white colour was set
on the container and inherited by the caption, which sits on the panel surface
rather than on the coloured bar. The light foreground is now scoped to the bar
itself, and the bars use a single blue ramp where every step keeps the white
vote count above 4.5:1.

ForgeBoard 1.2.3
Follow-up: ForgeBoard 1.2.3 supersedes the 1.2.2 currently in the queue.

Code: Select all

While testing a real attachment upload I found a defect that turned out to
explain a whole family of dark-theme problems, so I would rather have you review
1.2.3 than 1.2.2. The change is CSS only — no template, no event and no asset
was touched, so everything already covered in 1.2.2 is unchanged. Template
events still report 0 missing / 0 undocumented / 0 malformed.
[b]
**What was wrong**[/b]

ForgeBoard @imports prosilver's full stylesheet chain, colours.css included.
Every literal colour declared there therefore shows through on any element the
style does not restyle itself. Those values were written for a light board, so
on the dark theme they are simply wrong. The visible symptom was the attachment
box:

    .attachbox { background-color: #FFFFFF; border-color: #C9D2D8; }

a glaring white panel on a dark post. The uploaded image rendered correctly;
only its frame was wrong.

Auditing colours.css for the same pattern — a literal colour on a selector
ForgeBoard never restyles — turned up 28 rules leaking through. I fixed the 20
that actually break on the dark theme, all by re-expressing prosilver's intent
in the style's existing colour tokens:

- attachments: the box, its separator, its captions and stats, the image border
- thumbnails: background, border and hover state
- the UCP avatar gallery picker
- ul.forums, .jumpbox-sub-link and its hover state
- the dropdown caret
- .current — prosilver sets `color: #000000 !important`, so the override needs
  !important as well or the text stays black on the dark surface
- the reported / disapproved notification labels

[b]**The attachment box**[/b]

Two new tokens carry it, declared in all three token blocks — :root,
[data-theme="dark"], and the prefers-color-scheme fallback that serves visitors
with JavaScript disabled:

    --gb-attachbox-bg      #f7f9fb light / #181c23 dark
    --gb-attachbox-border  #7d8ea6 light / #5d6d88 dark

The fill is deliberately close to the post surface in both themes (1.06:1 light,
1.01:1 dark), so the border alone delimits the block. That makes it a meaningful
UI boundary rather than decoration, so both borders clear 3:1 under WCAG 1.4.11
— 3.16:1 light and 3.26:1 dark, measured against the box and against the post
surface. Text inside the dark box reads at 17.1:1 for body copy, 8.5:1 for the
muted stats line and 6.8:1 for links.

The radius uses the style's existing --gb-radius-lg token rather than a loose
value.

[b]**Left as they are**[/b]

Eight leaks remain, deliberately:

- the five PM colour flags (marked, replied, friend, foe, reported) — semantic
  markers whose hues are the convention users recognise, and they are side
  borders rather than fills;
- .darken and .loading_indicator, black overlays intended to be black in both
  themes;
- .message-box textarea, where ForgeBoard's own rule already wins on source
  order at equal specificity.

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Merci à tous pour vos retours et votre intérêt pour ForgeBoard.

Thank you, merci ;)