Un générateur de site statique rapide et flexible construit avec amour par bep, spf13 et amis dans Go.
Site Web | Installation | Documents | Assistance | Contribuer | Mastodonte | X
Hugo est un générateur de sites statiques écrit en Go, optimisé pour la vitesse et conçu pour la flexibilité. Grâce à son système de modèles avancé et à ses pipelines d'actifs rapides, Hugo crée un site complet en quelques secondes, souvent moins.
Grâce à son cadre flexible, son support multilingue et son puissant système de taxonomie, Hugo est largement utilisé pour créer :
Sites d'entreprise, gouvernementaux, à but non lucratif, d'éducation, d'actualités, d'événements et de projets
Sites de documentation
Portefeuilles d'images
Pages de destination
Blogs d'affaires, professionnels et personnels
CV et CV
Utilisez le serveur Web intégré de Hugo pendant le développement pour voir instantanément les modifications apportées au contenu, à la structure, au comportement et à la présentation. Déployez ensuite le site sur votre hébergeur ou transmettez les modifications à votre fournisseur Git pour des builds et un déploiement automatisés.
Les pipelines d'actifs rapides de Hugo comprennent :
Traitement d'image – Convertissez, redimensionnez, recadrez, faites pivoter, ajustez les couleurs, appliquez des filtres, superposez du texte et des images et extrayez des données EXIF.
Regroupement JavaScript – Transpilez TypeScript et JSX en JavaScript, regroupez, secouez l'arborescence, réduisez, créez des cartes sources et effectuez un hachage SRI.
Traitement Sass – Transpilez Sass vers CSS, regroupez, secouez l'arbre, réduisez, créez des cartes sources, effectuez un hachage SRI et intégrez avec PostCSS
Traitement CSS Tailwind – Compilez les classes utilitaires CSS Tailwind en CSS standard, regroupez, secouez l'arbre, optimisez, réduisez, effectuez le hachage SRI et intégrez avec PostCSS
Et avec Hugo Modules, vous pouvez partager du contenu, des ressources, des données, des traductions, des thèmes, des modèles et une configuration avec d'autres projets via des référentiels Git publics ou privés.
Consultez la section fonctionnalités de la documentation pour un résumé complet des fonctionnalités de Hugo.
Installez Hugo à partir d'un binaire prédéfini, d'un gestionnaire de packages ou d'un référentiel de packages. Veuillez consulter les instructions d'installation correspondant à votre système d'exploitation :
macOS
Linux
Fenêtres
DragonFly BSD, FreeBSD, NetBSD et OpenBSD
Hugo est disponible en deux éditions : standard et étendue. Avec l'édition étendue, vous pouvez :
Encodez au format WebP lors du traitement des images. Vous pouvez décoder les images WebP avec l’une ou l’autre édition.
Transpilez Sass en CSS à l'aide du transpileur LibSass intégré. L'édition étendue n'est pas nécessaire pour utiliser le transpileur Dart Sass.
Conditions préalables pour construire Hugo à partir des sources :
Édition standard : Go 1.20 ou version ultérieure
Édition étendue : Go 1.20 ou version ultérieure et GCC
Créez l'édition standard :
go install github.com/gohugoio/hugo@latest
Créez l'édition étendue :
CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest
La documentation de Hugo comprend des instructions d'installation, un guide de démarrage rapide, des explications conceptuelles, des informations de référence et des exemples.
Veuillez soumettre les problèmes de documentation et les demandes d'extraction au référentiel de documentation.
Veuillez ne pas utiliser la file d'attente des problèmes pour des questions ou un dépannage. Sauf si vous êtes certain que votre problème est un défaut logiciel, utilisez le forum.
Le forum de Hugo est une communauté active d'utilisateurs et de développeurs qui répondent aux questions, partagent leurs connaissances et fournissent des exemples. Une recherche rapide parmi plus de 20 000 sujets répondra souvent à votre question. Assurez-vous de lire comment demander de l'aide avant de poser votre première question.
Vous pouvez contribuer au projet Hugo en :
Répondre aux questions sur le forum
Améliorer la documentation
Surveillance de la file d'attente des problèmes
Créer ou améliorer des thèmes
Écraser les bugs
Veuillez soumettre les problèmes de documentation et les demandes d'extraction au référentiel de documentation.
Si vous avez une idée d'amélioration ou de nouvelle fonctionnalité, créez un nouveau sujet sur le forum dans la catégorie "Fonctionnalité". Cela vous aidera à :
Déterminer si la fonctionnalité existe déjà
Mesurer l'intérêt
Affiner le concept
S'il y a suffisamment d'intérêt, créez une proposition. Ne soumettez pas de pull request tant que le chef de projet n'a pas accepté la proposition.
Pour un guide complet sur la contribution à Hugo, consultez le Guide de contribution.
Hugo s'appuie sur de grandes bibliothèques open source. Exécutez hugo env --logLevel info
pour afficher une liste de dépendances.
cloud.google.com/go/compute/metadata="v0.2.3"
cloud.google.com/go/iam="v1.1.5"
cloud.google.com/go/storage="v1.35.1"
cloud.google.com/go="v0.110.10"
github.com/Azure/azure-sdk-for-go/sdk/azcore="v1.9.0"
github.com/Azure/azure-sdk-for-go/sdk/azidentity="v1.4.0"
github.com/Azure/azure-sdk-for-go/sdk/internal="v1.5.0"
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob="v1.2.0"
github.com/Azure/go-autorest/autorest/to="v0.4.0"
github.com/AzureAD/microsoft-authentication-library-for-go="v1.2.0"
github.com/BurntSushi/locker="v0.0.0-20171006230638-a6e239ea1c69"
github.com/alecthomas/chroma/v2="v2.14.0"
github.com/armon/go-radix="v1.0.1-0.20221118154546-54df44f2176c"
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream="v1.5.4"
github.com/aws/aws-sdk-go-v2/config="v1.26.1"
github.com/aws/aws-sdk-go-v2/credentials="v1.16.12"
github.com/aws/aws-sdk-go-v2/feature/ec2/imds="v1.14.10"
github.com/aws/aws-sdk-go-v2/feature/s3/manager="v1.15.7"
github.com/aws/aws-sdk-go-v2/internal/configsources="v1.3.5"
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2="v2.6.5"
github.com/aws/aws-sdk-go-v2/internal/ini="v1.7.2"
github.com/aws/aws-sdk-go-v2/internal/v4a="v1.2.9"
github.com/aws/aws-sdk-go-v2/service/cloudfront="v1.35.4"
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding="v1.10.4"
github.com/aws/aws-sdk-go-v2/service/internal/checksum="v1.2.9"
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url="v1.10.9"
github.com/aws/aws-sdk-go-v2/service/internal/s3shared="v1.16.9"
github.com/aws/aws-sdk-go-v2/service/s3="v1.47.5"
github.com/aws/aws-sdk-go-v2/service/sso="v1.18.5"
github.com/aws/aws-sdk-go-v2/service/ssooidc="v1.21.5"
github.com/aws/aws-sdk-go-v2/service/sts="v1.26.5"
github.com/aws/aws-sdk-go-v2="v1.26.1"
github.com/aws/aws-sdk-go="v1.50.7"
github.com/aws/smithy-go="v1.20.2"
github.com/bep/clocks="v0.5.0"
github.com/bep/debounce="v1.2.0"
github.com/bep/gitmap="v1.1.2"
github.com/bep/goat="v0.5.0"
github.com/bep/godartsass/v2="v2.0.0"
github.com/bep/godartsass="v1.2.0"
github.com/bep/golibsass="v1.1.1"
github.com/bep/gowebp="v0.3.0"
github.com/bep/lazycache="v0.4.0"
github.com/bep/logg="v0.4.0"
github.com/bep/mclib="v1.20400.20402"
github.com/bep/overlayfs="v0.9.2"
github.com/bep/simplecobra="v0.4.0"
github.com/bep/tmc="v0.5.1"
github.com/clbanning/mxj/v2="v2.7.0"
github.com/cli/safeexec="v1.0.1"
github.com/cpuguy83/go-md2man/v2="v2.0.3"
github.com/disintegration/gift="v1.2.1"
github.com/dlclark/regexp2="v1.11.0"
github.com/dustin/go-humanize="v1.0.1"
github.com/evanw/esbuild="v0.21.4"
github.com/fatih/color="v1.16.0"
github.com/frankban/quicktest="v1.14.6"
github.com/fsnotify/fsnotify="v1.7.0"
github.com/getkin/kin-openapi="v0.123.0"
github.com/ghodss/yaml="v1.0.0"
github.com/go-openapi/jsonpointer="v0.20.2"
github.com/go-openapi/swag="v0.22.8"
github.com/gobuffalo/flect="v1.0.2"
github.com/gobwas/glob="v0.2.3"
github.com/gohugoio/go-i18n/v2="v2.1.3-0.20230805085216-e63c13218d0e"
github.com/gohugoio/httpcache="v0.7.0"
github.com/gohugoio/hugo-goldmark-extensions/extras="v0.2.0"
github.com/gohugoio/hugo-goldmark-extensions/passthrough="v0.2.0"
github.com/gohugoio/locales="v0.14.0"
github.com/gohugoio/localescompressed="v1.0.1"
github.com/golang-jwt/jwt/v5="v5.1.0"
github.com/golang/groupcache="v0.0.0-20210331224755-41bb18bfe9da"
github.com/golang/protobuf="v1.5.3"
github.com/google/go-cmp="v0.6.0"
github.com/google/s2a-go="v0.1.7"
github.com/google/uuid="v1.4.0"
github.com/google/wire="v0.5.0"
github.com/googleapis/enterprise-certificate-proxy="v0.3.2"
github.com/googleapis/gax-go/v2="v2.12.0"
github.com/gorilla/websocket="v1.5.1"
github.com/hairyhenderson/go-codeowners="v0.4.0"
github.com/hashicorp/golang-lru/v2="v2.0.7"
github.com/invopop/yaml="v0.2.0"
github.com/jdkato/prose="v1.2.1"
github.com/jmespath/go-jmespath="v0.4.0"
github.com/josharian/intern="v1.0.0"
github.com/kr/pretty="v0.3.1"
github.com/kr/text="v0.2.0"
github.com/kylelemons/godebug="v1.1.0"
github.com/kyokomi/emoji/v2="v2.2.12"
github.com/mailru/easyjson="v0.7.7"
github.com/makeworld-the-better-one/dither/v2="v2.4.0"
github.com/marekm4/color-extractor="v1.2.1"
github.com/mattn/go-colorable="v0.1.13"
github.com/mattn/go-isatty="v0.0.20"
github.com/mattn/go-runewidth="v0.0.9"
github.com/mitchellh/hashstructure="v1.1.0"
github.com/mitchellh/mapstructure="v1.5.1-0.20231216201459-8508981c8b6c"
github.com/mohae/deepcopy="v0.0.0-20170929034955-c48cc78d4826"
github.com/muesli/smartcrop="v0.3.0"
github.com/niklasfasching/go-org="v1.7.0"
github.com/olekukonko/tablewriter="v0.0.5"
github.com/pbnjay/memory="v0.0.0-20210728143218-7b4eea64cf58"
github.com/pelletier/go-toml/v2="v2.2.2"
github.com/perimeterx/marshmallow="v1.1.5"
github.com/pkg/browser="v0.0.0-20210911075715-681adbf594b8"
github.com/pkg/errors="v0.9.1"
github.com/rogpeppe/go-internal="v1.12.0"
github.com/russross/blackfriday/v2="v2.1.0"
github.com/rwcarlsen/goexif="v0.0.0-20190401172101-9e8deecbddbd"
github.com/sass/dart-sass/compiler="1.77.5"
github.com/sass/dart-sass/implementation="1.77.5"
github.com/sass/dart-sass/protocol="2.7.1"
github.com/sass/libsass="3.6.5"
github.com/spf13/afero="v1.11.0"
github.com/spf13/cast="v1.6.0"
github.com/spf13/cobra="v1.8.0"
github.com/spf13/fsync="v0.10.1"
github.com/spf13/pflag="v1.0.5"
github.com/tdewolff/minify/v2="v2.20.20"
github.com/tdewolff/parse/v2="v2.7.13"
github.com/webmproject/libwebp="v1.3.2"
github.com/yuin/goldmark-emoji="v1.0.3"
github.com/yuin/goldmark="v1.7.4"
go.opencensus.io="v0.24.0"
go.uber.org/automaxprocs="v1.5.3"
gocloud.dev="v0.36.0"
golang.org/x/crypto="v0.23.0"
golang.org/x/exp="v0.0.0-20221031165847-c99f073a8326"
golang.org/x/image="v0.16.0"
golang.org/x/mod="v0.17.0"
golang.org/x/net="v0.25.0"
golang.org/x/oauth2="v0.15.0"
golang.org/x/sync="v0.7.0"
golang.org/x/sys="v0.20.0"
golang.org/x/text="v0.15.0"
golang.org/x/time="v0.5.0"
golang.org/x/tools="v0.20.0"
golang.org/x/xerrors="v0.0.0-20231012003039-104605ab7028"
google.golang.org/api="v0.152.0"
google.golang.org/genproto/googleapis/api="v0.0.0-20231120223509-83a465c0220f"
google.golang.org/genproto/googleapis/rpc="v0.0.0-20231120223509-83a465c0220f"
google.golang.org/genproto="v0.0.0-20231120223509-83a465c0220f"
google.golang.org/grpc="v1.59.0"
google.golang.org/protobuf="v1.33.0"
gopkg.in/yaml.v2="v2.4.0"
gopkg.in/yaml.v3="v3.0.1"
software.sslmate.com/src/go-pkcs12="v0.2.0"