Skip to content

Commit 2cf6b5e

Browse files
devGregAclaude
andcommitted
Polish header, homepage, and footer based on visual review
- Increase nav text size and add social links (GitHub, LinkedIn, YouTube, X) to header - Restyle search button with solid background, icon, and keyboard shortcut indicator - Reduce spacing between logo and nav row - Change hero CTAs to brand-aligned colors (Fuji Blue primary, Dojo Black outline) - Expand homepage to 8 symmetric tiles (4×2 grid) with title case headings - Update tool count from 190+ to 200+ - Update footer tagline to align with brand messaging Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 75f2821 commit 2cf6b5e

4 files changed

Lines changed: 165 additions & 76 deletions

File tree

docs/assets/scss/common/_custom.scss

Lines changed: 68 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,28 @@ h1, h2, h3, h4, h5, h6,
142142
font-weight: 500; // Medium for buttons
143143
}
144144

145+
.hero-actions .btn-outline-secondary {
146+
--bs-btn-color: #191919;
147+
--bs-btn-border-color: #191919;
148+
--bs-btn-hover-bg: #191919;
149+
--bs-btn-hover-border-color: #191919;
150+
--bs-btn-hover-color: #fff;
151+
--bs-btn-active-bg: #333333;
152+
--bs-btn-active-border-color: #333333;
153+
--bs-btn-active-color: #fff;
154+
}
155+
156+
[data-bs-theme="dark"] .hero-actions .btn-outline-secondary {
157+
--bs-btn-color: #e0e0e0;
158+
--bs-btn-border-color: #e0e0e0;
159+
--bs-btn-hover-bg: #e0e0e0;
160+
--bs-btn-hover-border-color: #e0e0e0;
161+
--bs-btn-hover-color: #191919;
162+
--bs-btn-active-bg: #cccccc;
163+
--bs-btn-active-border-color: #cccccc;
164+
--bs-btn-active-color: #191919;
165+
}
166+
145167
// ============================================================
146168
// Version Selector
147169
// ============================================================
@@ -769,8 +791,8 @@ h1, h2, h3, h4, h5, h6,
769791
}
770792

771793
.navbar-nav.flex-grow-1 .nav-link {
772-
font-size: 0.8125rem;
773-
padding: 0.375rem 0.625rem;
794+
font-size: 0.9rem;
795+
padding: 0.375rem 0.75rem;
774796
border-radius: 0.25rem;
775797
white-space: nowrap;
776798

@@ -795,29 +817,65 @@ h1, h2, h3, h4, h5, h6,
795817
// --- Search Button Refinement ---
796818

797819
#searchToggleDesktop {
798-
border: 1px solid #DCDCDC;
799-
border-radius: 2rem;
800-
padding: 0.25rem 1rem;
801-
font-size: 0.8125rem;
802-
color: #666666;
820+
border: 1px solid #CDCDCD;
821+
border-radius: 0.5rem;
822+
padding: 0.4rem 0.875rem;
823+
font-size: 0.875rem;
824+
color: #555555;
825+
background: #f5f5f5;
826+
gap: 0.25rem;
827+
min-width: 13rem;
803828

804829
&:hover {
805830
border-color: #1779C5;
806831
color: #1779C5;
832+
background: #eef5fb;
807833
}
808834

809-
.fw-bold {
810-
font-weight: 400 !important;
835+
.search-kbd {
836+
font-family: inherit;
837+
font-size: 0.6875rem;
838+
font-weight: 600;
839+
border: 1px solid #CDCDCD;
840+
border-radius: 0.25rem;
841+
padding: 0.05rem 0.4rem;
842+
line-height: 1.4;
843+
color: #888888;
844+
background: #ffffff;
811845
}
812846
}
813847

814848
[data-bs-theme="dark"] #searchToggleDesktop {
815-
border-color: #333333;
849+
border-color: #444444;
816850
color: #B3B3B3;
851+
background: #2a2a2a;
817852

818853
&:hover {
819854
border-color: #82B0D9;
820855
color: #82B0D9;
856+
background: rgba(#1779C5, 0.15);
857+
}
858+
859+
.search-kbd {
860+
border-color: #555555;
861+
color: #888888;
862+
background: #333333;
863+
}
864+
}
865+
866+
// --- Header Social Links ---
867+
868+
.header-social-links {
869+
gap: 0.125rem;
870+
871+
.social-link {
872+
padding: 0.25rem;
873+
opacity: 0.6;
874+
transition: opacity 0.15s ease;
875+
876+
&:hover {
877+
opacity: 1;
878+
}
821879
}
822880
}
823881

docs/layouts/_partials/footer/footer.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
<img src="/svgs/logo-darkmode.svg" class="logo-darkmode" alt="DefectDojo" width="150" />
99
</a>
1010
<p class="text-muted small">
11-
Open-source application security management.<br>
12-
Streamline your AppSec workflows.
11+
Security's secret weapon - unify &amp; automate AppSec.<br>
12+
Open-source vulnerability management &amp; DevSecOps.
1313
</p>
1414
</div>
1515

docs/layouts/_partials/header/header.html

Lines changed: 53 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -131,41 +131,8 @@ <h5 class="offcanvas-title" id="offcanvasNavMainLabel">{{ site.Title }}</h5>
131131
<span class="ms-2 text-bs-body fw-bold">| docs</span>
132132
</a>
133133

134-
<!-- Search -->
135-
<div class="flex-grow-1 d-none d-lg-flex justify-content-center align-items-center">
136-
137-
<!-- FlexSearch desktop -->
138-
{{ partial "main/showFlexSearch" . }}
139-
{{ $showFlexSearch := .Scratch.Get "showFlexSearch" -}}
140-
{{ if $showFlexSearch -}}
141-
<button type="button" id="searchToggleDesktop" class="btn btn-link nav-link p-2 d-none d-lg-block"
142-
aria-label="Search website">
143-
<span class="fw-bold">Search docs </span>
144-
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-search" width="24"
145-
height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
146-
stroke-linecap="round" stroke-linejoin="round">
147-
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
148-
<circle cx="10" cy="10" r="7"></circle>
149-
<line x1="21" y1="21" x2="15" y2="15"></line>
150-
</svg>
151-
</button>
152-
{{ end -}}
153-
154-
<!-- DocSearch desktop -->
155-
{{ if site.Params.add_ons.docSearch -}}
156-
<button type="button" id="searchToggleDesktop" class="btn btn-link nav-link mx-2 d-none d-lg-block"
157-
aria-label="Search website">
158-
<span class="fw-bold">Search docs </span>
159-
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-search" width="24"
160-
height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
161-
stroke-linecap="round" stroke-linejoin="round">
162-
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
163-
<circle cx="10" cy="10" r="7"></circle>
164-
<line x1="21" y1="21" x2="15" y2="15"></line>
165-
</svg>
166-
</button>
167-
{{ end -}}
168-
</div>
134+
<!-- Spacer -->
135+
<div class="flex-grow-1 d-none d-lg-block"></div>
169136

170137
<!-- Language dropdown -->
171138
{{ if eq site.Params.doks.multilingualMode true -}}
@@ -264,6 +231,41 @@ <h5 class="offcanvas-title" id="offcanvasNavMainLabel">{{ site.Title }}</h5>
264231

265232
<!-- Right-aligned items -->
266233
<div class="d-flex align-items-center ms-lg-auto">
234+
235+
<!-- FlexSearch desktop -->
236+
{{ partial "main/showFlexSearch" . }}
237+
{{ $showFlexSearch := .Scratch.Get "showFlexSearch" -}}
238+
{{ if $showFlexSearch -}}
239+
<button type="button" id="searchToggleDesktop" class="btn btn-link nav-link d-none d-lg-flex align-items-center me-2"
240+
aria-label="Search website">
241+
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-search me-1" width="16"
242+
height="16" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
243+
stroke-linecap="round" stroke-linejoin="round">
244+
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
245+
<circle cx="10" cy="10" r="7"></circle>
246+
<line x1="21" y1="21" x2="15" y2="15"></line>
247+
</svg>
248+
<span>Search</span>
249+
<kbd class="search-kbd ms-2">/</kbd>
250+
</button>
251+
{{ end -}}
252+
253+
<!-- DocSearch desktop -->
254+
{{ if site.Params.add_ons.docSearch -}}
255+
<button type="button" id="searchToggleDesktop" class="btn btn-link nav-link d-none d-lg-flex align-items-center me-2"
256+
aria-label="Search website">
257+
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-search me-1" width="16"
258+
height="16" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
259+
stroke-linecap="round" stroke-linejoin="round">
260+
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
261+
<circle cx="10" cy="10" r="7"></circle>
262+
<line x1="21" y1="21" x2="15" y2="15"></line>
263+
</svg>
264+
<span>Search</span>
265+
<kbd class="search-kbd ms-2">/</kbd>
266+
</button>
267+
{{ end -}}
268+
267269
<!-- Color mode toggler -->
268270
{{ if and (eq site.Params.doks.colorMode "auto") site.Params.doks.colorModeToggler -}}
269271
<button id="buttonColorMode" class="btn btn-link mx-auto nav-link p-0 ms-lg-2 me-lg-1" type="button"
@@ -285,10 +287,21 @@ <h5 class="offcanvas-title" id="offcanvasNavMainLabel">{{ site.Title }}</h5>
285287
</button>
286288
{{ end -}}
287289

288-
<!-- GitHub link (other social icons moved to footer) -->
289-
<a class="nav-link social-link ms-lg-2" href="https://github.com/DefectDojo/django-DefectDojo" aria-label="GitHub">
290-
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-brand-github" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5"></path></svg>
291-
</a>
290+
<!-- Social links — Tabler stroke icons -->
291+
<div class="d-none d-lg-flex align-items-center header-social-links ms-lg-2">
292+
<a class="nav-link social-link" href="https://github.com/DefectDojo/django-DefectDojo" aria-label="GitHub" rel="noopener">
293+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5"></path></svg>
294+
</a>
295+
<a class="nav-link social-link" href="https://www.linkedin.com/company/defectdojo/" aria-label="LinkedIn" rel="noopener">
296+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"/><path d="M8 11l0 5"/><path d="M8 8l0 .01"/><path d="M12 16l0 -5"/><path d="M16 16v-3a2 2 0 0 0 -4 0"/></svg>
297+
</a>
298+
<a class="nav-link social-link" href="https://www.youtube.com/@defectdojo" aria-label="YouTube" rel="noopener">
299+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8z"/><path d="M10 9l5 3l-5 3z"/></svg>
300+
</a>
301+
<a class="nav-link social-link" href="https://x.com/defectdojo" aria-label="X" rel="noopener">
302+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 4l11.733 16h4.267l-11.733 -16z"></path><path d="M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772"></path></svg>
303+
</a>
304+
</div>
292305
</div>
293306

294307
<!-- Navbar button mobile -->
@@ -299,7 +312,7 @@ <h5 class="offcanvas-title" id="offcanvasNavMainLabel">{{ site.Title }}</h5>
299312
}}</a>
300313
{{ end -}}
301314
</div>
302-
<div class="w-100 mt-3">
315+
<div class="w-100 mt-1">
303316
<ul class="navbar-nav flex-grow-1">
304317
{{ $current := index (split .RelPermalink "/") 1 }}
305318
{{ if eq $current "" }}{{ $current = "en" }}{{ end }}

0 commit comments

Comments
 (0)