Add banner layout

This commit is contained in:
Boris Waaub
2026-01-22 12:53:54 +01:00
parent ce4e946615
commit c92d34814c
10 changed files with 493 additions and 2063 deletions

3
.gitmodules vendored
View File

@@ -1,3 +0,0 @@
[submodule "themes/hugo-saasify-theme"]
path = themes/hugo-saasify-theme
url = https://github.com/chaoming/hugo-saasify-theme

View File

@@ -113,23 +113,10 @@ header.header {
}
}
main > section {
section {
&.hero {
height: 100vh;
background-color: $bg-dark-blue;
h1 { color: $chill-green; }
.hero-img {
padding-top: 3rem;
}
.btn-primary {
background-color: $orange;
color: white;
border-color: $orange;
&:hover {
background-color: $chill-orange;
border: 1px solid $chill-orange;
}
}
}
&.section-1 {
background-color: white;
@@ -353,8 +340,7 @@ section.dark {
///// PAGES
main > section {
section {
&.page-hero {
height: 40vh;
background-color: $bg-dark-blue;
@@ -450,7 +436,7 @@ figure.image {
}
@media screen and (max-width: 1023px) {
main > section {
section {
&.section-4 {
h4 {
height: 224px;
@@ -478,7 +464,7 @@ figure.image {
}
@media screen and (max-width: 767px) {
main > section {
section {
&.hero {
height: 110vh;
}
@@ -543,7 +529,7 @@ figure.image {
}
@media screen and (max-width: 513px) {
main > section {
section {
&.hero {
height: 120vh;
}
@@ -566,7 +552,7 @@ figure.image {
}
@media screen and (max-width: 470px) {
main > section {
section {
&.section-4 {
h4 {
height: 280px;

View File

@@ -27,16 +27,12 @@ testimonials:
---
{{< hero
headline="Build Your SaaS Website"
sub_headline="Create stunning, responsive websites that load instantly. Built with Hugo and TailwindCSS for maximum performance and flexibility."
primary_button_text="Get Started Free"
primary_button_url="#"
secondary_button_text="View Demo"
secondary_button_url="#"
headline="Le compagnon du travailleur social"
sub_headline="Une application web open source dédiée à faciliter le travail social."
primary_button_text="Essayer la démo"
primary_button_url="http://demo.chill.social/"
custom_class="hero"
hero_image="/images/hero-dashboard.svg"
gradient-from="#dbeafe"
gradient-to="#f3e8ff"
gradient-angle="180"
>}}
{{< client-logos animate="true" >}}

View File

@@ -29,6 +29,7 @@ paginatePath = "page"
[security.funcs]
getenv = ['^HUGO_', '^CI$']
# Required Markup Configuration
[markup]
[markup.highlight]
@@ -53,22 +54,19 @@ paginatePath = "page"
[params]
description = "Logiciel libre d'accompagnement social"
author = "Champs-Libres"
logo = "/images/logo.png" # Path to your logo
# Google Analytics ID (e.g., "G-XXXXXXXXXX")
googleAnalytics = "G-XXXXXXXXXX" # Only enabled in production
logo = "/images/logo-darkmode.png" # Path to your logo
customCSS = ["css/custom.css"]
# Google Tag Manager ID (e.g., "GTM-XXXXXXX")
# Only enabled in production
googleTagManager = "GTM-XXXXXXX"
# Header Configuration
[params.header]
background = "bg-white/80 backdrop-blur-sm"
border = "border-b border-gray-100"
background = "header backdrop-blur-sm"
border = "none"
menu.linkClass = "text-white hover:text-primary font-bold transition duration-200"
# Header Logo
[params.header.logo]
src = "/images/logo.png"
# Header Logo
[params.header.logo]
src = "/images/logo-darkmode.png"
# Global CTA Configuration (optional)
[params.cta]

View File

@@ -63,3 +63,6 @@
-->
<!-- Add your custom head content below -->
{{- range .Site.Params.customCSS }}
<link rel="stylesheet" href="{{ . | relURL }}">
{{- end }}

View File

@@ -5,8 +5,9 @@
"author": "Chaoming Li",
"license": "MIT",
"scripts": {
"start": "concurrently \"npx tailwindcss -i themes/hugo-saasify-theme/assets/scss/main.scss -o static/css/style.css --watch\" \"hugo server -D\"",
"build": "tailwindcss -i themes/hugo-saasify-theme/assets/scss/main.scss -o static/css/style.css --minify && hugo --minify"
"scss": "sass --watch assets/scss/custom.scss:static/css/custom.css",
"start": "concurrently \"npx tailwindcss -i themes/chill-theme/assets/css/main.css -o static/css/style.css --watch\" \"npm run scss -- --watch\" \"hugo server -D\"",
"build": "tailwindcss -i themes/chill-theme/assets/css/main.css -o static/css/style.css --minify && npm run scss && hugo --minify"
},
"devDependencies": {
"@tailwindcss/forms": "^0.5.7",

391
static/css/custom.css Normal file
View File

@@ -0,0 +1,391 @@
@font-face {
font-family: 'Lato', Arial;
src: url("assets/fonts/Lato/Lato-Regular.ttf") format("truetype");
font-display: optional;
font-weight: normal;
font-style: normal; }
body {
font-family: 'Lato', sans-serif; }
body .highlight {
padding: .25rem; }
body .highlight-1 {
background-color: rgba(67, 178, 157, 0.61); }
body .highlight-2 {
background-color: #e57469; }
body .highlight-3 {
background-color: #f1d275; }
header.header {
background-color: #0d242e; }
.chill-pres {
padding-top: 0rem; }
.navbar .btn-primary {
background-color: #f46839;
border: 1px solid #f46839;
color: white; }
.navbar .btn-primary:hover {
background-color: #e89463;
border: 1px solid #e89463; }
.navbar .lang-select {
color: white; }
section.hero {
background-color: #0d242e; }
section.hero h1 {
color: rgba(67, 178, 157, 0.61); }
section.section-1 {
background-color: white;
padding-top: 10rem; }
section.section-1 li {
font-weight: 600; }
section.section-2 {
background: #e9e3d8;
background: linear-gradient(180deg, #e9e3d8 0%, #efefef 100%); }
section.section-2 .container {
color: #0d242e;
text-align: center;
margin-top: 4rem; }
section.section-2 .container h2 {
line-height: 3.5rem; }
section.section-3 {
background: #efefef;
background: linear-gradient(180deg, #efefef 0%, white 100%); }
section.section-3 h2 {
position: relative;
z-index: 1; }
section.section-3 h2:before {
content: '';
position: absolute;
width: 70px;
height: 70px;
left: -10%;
top: -30%;
margin-left: -35px;
background-color: #f46839;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px; }
section.section-4 {
position: relative;
background-color: white; }
section.section-4 .row {
padding-bottom: 5rem; }
section.section-4 h4 {
font-weight: bold;
height: 175px;
color: #0d242e;
border: 1px dashed #0d242e;
border-radius: 15px;
padding: 3rem; }
section.section-4 .btn-primary {
position: absolute;
top: 52%;
left: 28%; }
section.section-5 {
background-color: rgba(67, 178, 157, 0.11); }
section.section-6 {
background-color: #0d242e !important;
background-repeat: repeat;
background-position: top center;
background-image: url("/images/bg/pattern-1.png"); }
section.section-7 h2 {
position: relative;
z-index: 1; }
section.section-7 h2:before {
content: '';
position: absolute;
width: 70px;
height: 70px;
left: -15%;
top: -30%;
margin-left: -35px;
background-color: #fcc958;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0; }
section h2.title {
color: #0d242e; }
section.big-text h2, section.big-text p, section.li-block h2, section.li-block p {
width: fit-content;
margin-left: auto;
margin-right: auto; }
section.big-text .container .row > div:last-child {
width: 80%;
margin-left: 10%; }
section.li-block .container .row > div:last-child {
width: 100%; }
section.li-block .container .row > div ul {
display: flex; }
section.li-block .container .row > div ul li {
flex: 1 0 0;
margin: 0.5em 2rem 0.5em 2rem;
padding: 2em 1em 1em 1em;
text-align: center;
border-radius: 20px; }
section.li-block .container .row > div ul li i:first-child {
display: none; }
section.li-block.section-1 ul li {
font-weight: 500;
font-size: large;
position: relative; }
section.li-block.section-1 ul li:nth-child(1) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(1):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #56c4aa;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0; }
section.li-block.section-1 ul li:nth-child(2) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(2):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #f0384d;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px; }
section.li-block.section-1 ul li:nth-child(3) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(3):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #e89463;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0; }
section.li-block.section-1 ul li:nth-child(4) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(4):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #fcc958;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px; }
section.li-block.section-5 .container .row p {
margin-bottom: 5rem; }
section.li-block.section-5 .container .row ul li {
border-radius: 1em;
background: rgba(255, 255, 255, 0.2);
backdrop-filter: blur(20px);
width: 400px;
height: 180px;
padding: .85rem;
position: relative;
z-index: 0;
overflow: hidden;
transition: 0.6s ease-in; }
section.li-block.section-5 .container .row ul li::before {
content: "";
position: absolute;
z-index: -1;
top: -15px;
right: -15px;
height: 220px;
width: 25px;
border-radius: 32px;
transform: scale(1);
transform-origin: 50% 50%;
transition: transform 0.25s ease-out; }
section.li-block.section-5 .container .row ul li:nth-child(1)::before {
background-color: rgba(240, 56, 77, 0.85); }
section.li-block.section-5 .container .row ul li:nth-child(2)::before {
background-color: rgba(232, 148, 99, 0.85); }
section.li-block.section-5 .container .row ul li:nth-child(3)::before {
background-color: rgba(67, 178, 157, 0.85); }
section.li-block.section-5 .container .row ul li:nth-child(4)::before {
background-color: #f1d275; }
section.li-block.section-5 .container .row ul li:hover::before {
transition-delay: 0.2s;
transform: scale(40); }
section.li-block.section-5 .container .row ul li:hover {
color: #ffffff; }
section.li-block.section-5 .container .row ul li:hover h5 {
color: #efefef; }
section.li-block.section-5 .container .row ul li h5 {
color: #0d242e;
font-weight: bold; }
section.li-block a.btn-chill {
background-color: #fc3636; }
.btn-primary {
background-color: #f46839;
color: white;
border: 1px solid #f46839;
border-radius: 2em; }
.download {
margin-right: auto;
margin-left: auto;
display: block; }
.download a {
text-decoration: none;
padding: .5rem; }
section.dark p {
color: white;
font-weight: bolder; }
.hop {
color: red; }
section.page-hero {
height: 40vh;
background-color: #0d242e;
background-repeat: repeat;
background-position: top center;
background-image: url("/images/bg/pattern-1.png"); }
section.page-hero h1 {
color: #56c4aa; }
section.page-hero i {
color: #efefef; }
section .content-subtitle {
text-transform: uppercase;
padding-left: 2rem; }
section .bord-1 {
border-left: 4px solid #e89463; }
section .bord-2 {
border-left: 4px solid #d3c7b1; }
section .bord-3 {
border-left: 4px solid #f1d275; }
section .bord-4 {
border-left: 4px solid rgba(67, 178, 157, 0.61); }
.chapo {
font-size: large;
font-weight: 600;
text-align: center;
padding-bottom: 2rem;
font-style: italic;
position: relative;
margin-bottom: 5rem; }
.chapo::after {
content: '';
position: absolute;
left: 0;
right: 0;
top: 100%;
margin: 10px auto;
width: 15%;
height: 6px;
background: #dc516d; }
figure.image {
display: flex;
flex-direction: column; }
figure.image.left {
float: left;
margin-right: 1.5em; }
figure.image.right {
float: right;
margin-left: 1.5em; }
figure.image.center {
display: flex;
justify-content: center;
align-items: center; }
figure.image img {
margin-bottom: 0; }
.text-brochure {
text-align: center; }
@media screen and (max-width: 1279px) {
section.li-block.section-5 .container .row ul {
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
flex: 30%; } }
@media screen and (max-width: 1023px) {
section.section-4 h4 {
height: 224px; }
section.section-4 .btn-primary {
top: 56%; }
section.li-block.section-5 .container .row ul {
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
flex: 50%; } }
@media screen and (max-width: 767px) {
section.hero {
height: 110vh; }
section.section-3 h2:before {
top: -70%;
left: 5%;
z-index: -1; }
section.section-4 h4 {
height: 280px; }
section.section-4 .btn-primary {
top: 64%; }
section.li-block .container .row > div ul {
flex-direction: column; }
section.li-block .container .row > div ul li {
margin-bottom: 4rem; }
section.li-block.section-1 ul li:nth-child(1) {
top: -66%; }
section.li-block.section-1 ul li:nth-child(2) {
top: -66%; }
section.li-block.section-1 ul li:nth-child(3):before {
top: -85%; }
section.li-block.section-1 ul li:nth-child(4):before {
top: -85%; }
section.li-block.section-5 .container .row ul {
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
flex: 50%; } }
@media screen and (max-width: 513px) {
section.hero {
height: 120vh; }
section.section-4 h4 {
font-size: 1.1rem; }
section.section-4 .btn-primary {
top: 64%; }
section.section-5 .container .row ul li {
width: 350px; } }
@media screen and (max-width: 470px) {
section.section-4 h4 {
height: 280px; }
section.section-4 .btn-primary {
top: 64%; }
section.li-block.section-1 ul li:nth-child(3):before {
top: -70%; }
section.li-block.section-1 ul li:nth-child(4):before {
top: -70%; }
section.li-block.section-5 .container .row ul {
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
width: 350px; } }
@media screen and (max-width: 420px) {
section.li-block.section-5 .container .row ul li {
width: 300px; } }
/*# sourceMappingURL=custom.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@@ -1,46 +1,47 @@
// Définition statique des couleurs principales (extraites de theme.json)
const primary = {
50: '#f8f9fa',
100: '#f1f3f5',
200: '#e9ecef',
300: '#dee2e6',
400: '#ced4da',
500: '#121212',
600: '#f46839',
700: '#e57469',
800: '#334d5c',
900: '#121212',
};
const secondary = '#e57469'; // à adapter si besoin
const fontPrimary = 'Open Sans, sans-serif';
const fontSecondary = 'Arial, sans-serif';
/** @type {import('tailwindcss').Config} */
module.exports = {
presets: [require('./themes/chill-theme/tailwind.config.js')],
content: [
"./themes/hugo-saasify-theme/layouts/**/*.html",
"./themes/chill-theme/layouts/**/*.html",
"./layouts/**/*.html",
"./content/**/*.{html,md}"
],
theme: {
extend: {
colors: {
primary,
secondary,
// Ajoutez ici d'autres couleurs statiques si besoin
colors: {
primary: {
50: '#f2f6f8',
100: '#e6edf1',
200: '#bfd3de',
300: '#99b9cb',
400: '#4d8596',
500: '#334d5c', // couleur principale
600: '#2e4553',
700: '#273a45',
800: '#1f2e37',
900: '#19262c',
},
fontFamily: {
primary: [fontPrimary],
secondary: [fontSecondary],
secondary: {
50: '#fff5f5',
100: '#ffeaea',
200: '#ffc9c9',
300: '#ffa8a8',
400: '#ff6666',
500: '#e57469', // couleur principale
600: '#ce6860',
700: '#ad5650',
800: '#8b4440',
900: '#723836',
},
},
fontFamily: {
sans: ['Lato', 'sans-serif'],
},
},
plugins: [
require('@tailwindcss/forms'),
require('@tailwindcss/typography'),
],
}
}
}