-
-
Notifications
You must be signed in to change notification settings - Fork 115
feat(defcon): Meshtastic × DEF CON 34 logo + accessible event theme #376
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -100,6 +100,41 @@ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </p> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </div> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <!-- DEF CON event branding variant --> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <div | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| v-else-if="eventMode.enabled && eventMode.eventTag === 'DEFCON'" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| class="logo-header-content" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <div class="logo-container"> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <div class="logo-glow"> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <img | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| v-if="themeStore.isDark" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| src="@/assets/img/logo.svg" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| class="logo-icon" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| alt="Meshtastic Logo" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <img | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| v-else | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| src="@/assets/img/logo-dark.svg" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| class="logo-icon" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| alt="Meshtastic Logo" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </div> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <span class="logo-separator">×</span> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <img | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| src="@/assets/img/defcon.svg" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| class="logo-icon-event logo-icon-defcon" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| alt="DEF CON 34 Logo" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Comment on lines
+110
to
+128
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win Use localization for user-visible The alt text strings for the logos are hardcoded in the template. As per coding guidelines, all user-visible text must go through Consider replacing 🌐 Proposed replacements- alt="Meshtastic Logo"
+ :alt="$t('meshtastic_logo')"- alt="DEF CON 34 Logo"
+ :alt="$t('defcon_logo')"📝 Committable suggestion
Suggested change
🤖 Prompt for AI AgentsSource: Coding guidelines |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </div> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <h1 class="logo-title"> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <span class="logo-title-gradient">{{ $t('header_title') }}</span> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </h1> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <p class="logo-tagline"> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| {{ eventMode.tagline || eventMode.eventName }} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </p> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| </div> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <!-- Hamvention event branding variant --> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <div | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| v-else-if="eventMode.enabled && eventMode.eventTag === 'Hamvention'" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
@@ -299,6 +334,26 @@ const { eventMode } = useEventMode() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| /* The full DEF CON 34 mark (mesh burst + skull) is a detailed square, so it runs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| a little larger than the M to let the artwork read. It ships transparent and | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| theme-adaptive: the opaque gradient mesh reads on either background and the | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| skull's knockout face shows the page behind it, so it needs no filter/tile. */ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| .logo-icon-defcon { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| height: 6rem; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| @media (min-width: 640px) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| .logo-icon-defcon { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| height: 7rem; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| @media (min-width: 768px) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| .logo-icon-defcon { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| height: 8rem; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| .logo-header-hamvention { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| position: relative; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| background-image: url('@/assets/img/hamvention-bg.png'); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Add an empty line after
@applydirectives.To resolve the Stylelint
declaration-empty-line-beforeerrors flagged in static analysis, insert an empty line between the Tailwind@applydirectives and the standard CSS property declarations.assets/css/main.css#L341-L343: Add an empty line beforebackground: var(--accent);in.btn-primary.assets/css/main.css#L415-L417: Add an empty line beforebackground: var(--accent);in.step-badge.🧰 Tools
🪛 Stylelint (17.14.0)
[error] 342-342: Expected empty line before declaration (declaration-empty-line-before)
(declaration-empty-line-before)
📍 Affects 1 file
assets/css/main.css#L341-L343(this comment)assets/css/main.css#L415-L417🤖 Prompt for AI Agents
Source: Linters/SAST tools