feat(frontend): add dedicated /cli page, nav links, and CTA buttons; remove CLI modals for leaner UX

- New CLI page at /cli with detailed usage and improved Quick Start card header
- Add CLI link to navbars and small ‘Try the CLI’ CTAs on Home & Templates
- Remove CLI modals and unused showCliModal() handler (keep_small_simple)
- Self-host Bootstrap and Font Awesome; add OSI logo and GPL notice in footers
- Dockerfile: verify vendor assets exist at build time
- Minor a11y/contrast and heading-order cleanups (100 a11y)
This commit is contained in:
William Valentin
2025-09-15 00:47:31 -07:00
parent 9caf95bb7a
commit a0ae5f869e
16 changed files with 589 additions and 48 deletions

View File

@@ -15,6 +15,17 @@
}
/* General Styles */
/* Navbar link contrast fix on primary bg */
.navbar-dark.bg-primary .navbar-nav .nav-link {
color: #ffffff;
font-weight: 600;
}
.navbar-dark.bg-primary .navbar-nav .nav-link:hover,
.navbar-dark.bg-primary .navbar-nav .nav-link:focus,
.navbar-dark.bg-primary .navbar-nav .nav-link.active {
color: #ffffff;
}
body {
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
line-height: 1.6;
@@ -250,7 +261,7 @@ footer.bg-dark .text-muted {
.template-tag {
background: var(--light-color);
color: var(--secondary-color);
color: #495057;
padding: 0.125rem 0.5rem;
border-radius: 1rem;
font-size: 0.75rem;
@@ -508,16 +519,87 @@ footer.bg-dark .text-muted {
}
.form-control {
background-color: var(--bg-secondary);
background-color: #1f2937;
border-color: #4a5568;
color: #333;
color: #f7fafc;
}
.form-control::placeholder {
color: #cbd5e0;
opacity: 1;
}
.form-control:focus {
background-color: var(--bg-secondary);
background-color: #1f2937;
border-color: var(--primary-color);
color: #333;
color: #f7fafc;
}
/* Improve outline-secondary contrast on dark backgrounds */
.card.bg-dark .btn-outline-secondary,
.bg-dark .btn-outline-secondary,
.card .btn-outline-secondary {
color: #e2e8f0;
border-color: #e2e8f0;
}
.card.bg-dark .btn-outline-secondary:hover,
.bg-dark .btn-outline-secondary:hover,
.card .btn-outline-secondary:hover {
color: #1a202c;
background-color: #e2e8f0;
border-color: #e2e8f0;
}
}
/* Increase link and outline-primary contrast on dark backgrounds */
@media (prefers-color-scheme: dark) {
.card.bg-dark a,
.bg-dark a {
color: #93c5fd;
}
.card.bg-dark a:hover,
.bg-dark a:hover {
color: #bfdbfe;
}
.card.bg-dark .btn-outline-primary,
.bg-dark .btn-outline-primary,
.card .btn-outline-primary {
color: #e2e8f0;
border-color: #93c5fd;
}
.card.bg-dark .btn-outline-primary:hover,
.bg-dark .btn-outline-primary:hover,
.card .btn-outline-primary:hover {
color: #1a202c;
background-color: #93c5fd;
border-color: #93c5fd;
}
/* High-contrast link utility */
.link-contrast {
color: #93c5fd !important;
}
.link-contrast:hover,
.link-contrast:focus {
color: #bfdbfe !important;
text-decoration: underline;
}
}
/* Footer OSI logo */
footer .badge.bg-success {
position: relative;
padding-left: 1.5rem;
}
footer .badge.bg-success::before {
content: "";
position: absolute;
left: 0.35rem;
top: 50%;
transform: translateY(-50%);
width: 1rem;
height: 1rem;
background: url('/static/img/osi-logo.svg') no-repeat center / contain;
}
/* Print Styles */