🔥 Hugo website builder, Hugo themes & Hugo CMS. No code, build with widgets!

中文

Wowchemy Website Builder

Wowchemy: the website builder for Hugo

Join 750,000+ Sites. No Code. Easily Create Future-Proof Websites ✏️ 📰 🚀

🔥 1. Create any kind of website for free with widgets - from landing pages, knowledge bases, and courses to academic resumés, conferences, and tech blogs

🎨 2. Personalize a beautiful starter template with 50+ light/dark color themes, language packs, and widgets

🛋 3. Write from your sofa or on the go with the integrated open source Content Management System (CMS)

Check out the latest demos of what you'll get in less than 10 minutes, or get inspired by user stories.

Crowd-funded open-source software

To help us develop this template and software sustainably under the MIT license, we ask all individuals and businesses that use it to help support its ongoing maintenance and development via sponsorship.

❤️ Unlock rewards by supporting this open source software ❤️

Ecosystem

  • Hugo Academic CLI: Automatically import academic publications from BibTeX
  • Awesome Hugo: Scripts to help migrate content to new versions of Hugo

Features

Screenshot

Key features:

  • Page builder - Create anything with widgets and elements
  • Edit any type of content - Blog posts, publications, talks, slides, projects, and more!
  • Create content in Markdown, Jupyter, or RStudio
  • Plugin System - Fully customizable color and font themes
  • Display Code and Math - Code highlighting and LaTeX math supported
  • Integrations - Google Analytics, Disqus commenting, Maps, Contact Forms, and more!
  • Beautiful Site - Simple and refreshing one page design
  • Industry-Leading SEO - Help get your website found on search engines and social media
  • Media Galleries - Display your images and videos with captions in a customizable gallery
  • Mobile Friendly - Look amazing on every screen with a mobile friendly version of your site
  • Multi-language - 34+ language packs including English, 中文, and Português
  • Multi-user - Each author gets their own profile page
  • Privacy Pack - Assists with GDPR
  • Stand Out - Bring your site to life with animation, parallax backgrounds, and scroll effects
  • One-Click Deployment - No servers. No databases. Only files.

Themes

Wowchemy comes with automatic day (light) and night (dark) mode built-in. Alternatively, click the moon icon in the top right of one of the Demos to set your preferred mode!

Choose a stunning theme for your site and customize it to your liking:

Themes

Browse more templates and themes...

The Future of Technical Content Writing

Writing technical content

Join the community

Feel free to star the project on Github, join the community on Discord, and follow @wowchemy on Twitter to be the first to hear about new features.

License

Copyright 2016-present George Cushen.

The Wowchemy Hugo Themes repository is released under the MIT license.

Analytics

Owner
Wowchemy
For empowering scientific & technical content creators 🌱
Wowchemy
Comments
  • Updated reveal.js to v 4.10

    Updated reveal.js to v 4.10

    Purpose

    Update reveal.js to v4.10 and include some additional useful plugints, addresses #1802 Update also adds chalkboard and menu plugins.

    Documentation

    Please note while this update works, it requires the following: 1- testing that mathjax and speaker notes work (currently works on my setup, mac + safari) 2- I think it is possible to make presentations configurable from front matter of slides. I am not familiar with hugo templating to make this work, and hope someone can give guidance or assist with this.

  • Widgets: Add a People widget

    Widgets: Add a People widget

    Hi,

    I am currently trying to set up a new website for my lab, and I truly love the Academic theme for Hugo! Very, very good job! Perfect for what I'm looking for.

    One piece I am missing though would be a specific widget for people. I know I could use a custom widget, for instance based on Teaching, but what I want is a layout similar to the Projects widget: a grid of people with their portraits, and a toolbar to filter them (in my case: "All", "Current" and "Alumni").

    I have been able to work around it duplicating the project widget (and associated html page), as well as the CSS and JS pieces (into custom CSS and JS files), replacing every instance of project/projects by people. It almost works, with the same problem as #100, in which filtering in the toolbar seems to be global, and filters both Projects and People.

    In other words, this is redundant to #100 in the sense that the essential problem is to be able to reuse the filter toolbar, but I also think that a People widget makes a lot of sense for an academic website.

    Thanks!

  • = v0.65 < 0.69">

    "Homepage not found" error after upgrading Hugo >= v0.65 < 0.69

    After I upgrade my Hugo to 0.67.0 and Academics to 4.8, I began to get the following error message when I execute blogdown::build_site(): Homepage not found or duplicate homepages detected for a localization!.

    Before the upgrade, it was compiling without any problem, everything was good.

    The source code of my web site is found at https://gitlab.com/ogurcan/web-site/-/tree/upgradeHugo67Academic48

    Can anyone help me? What could be the problem? I did all the breaking changes of the Academics releases, but still getting the same error.

  • Import publication list from BibTeX

    Import publication list from BibTeX

    Unless I am mistaken users have to manually populate half a dozen fields for each new publication created in content/publication/. Most users will already have this data stored in other structured formats such as BibTeX. Would it be possible to...

    1. Parse publications from a user supplied .bib file, perhaps also allowing users to specify which @bibtexkeys are promoted?
    2. Grab such a list from the ORCID, Google Scholar or Mendeley handles given in config.toml ?
  • TOC for blog posts

    TOC for blog posts

    Feature Request

    some of my blog posts are very long. Is it possible to get a TOC for blog posts?

    It would be nice to have something like a floating TOC that can be done when rendering as html, or like with the "courses" page

  • Talks widget: Enable separating Upcoming and Past talks into two sections

    Talks widget: Enable separating Upcoming and Past talks into two sections

    I use Academic for a seminar webpage where we store upcoming and past talks. Currently, the talks widget displays every talks, upcoming or not, and is thus not really practical for this kind of usage.

    I've added these changes:

    • partials/widgets/talk: "Automatically" separate upcoming and past (automatically = at each building and not, obviously, dynamically)
    • partials/talk_li_simple and partials/talk_li_detailed: Display authors on homepage (if available)

    If you guys think this could be relevant for you too, I could send a PR. Proposed changes and options do not change the default behavior of Hugo Academic (= display every talks). I believe this can also be useful for a lab webpage if they hold a regular seminar.

    screenshot

    More precisly, I added some options to the widgets/talks.md:

    • order: ascending or descending order (usefull for what follows)
    • exclude_past (resp. exclude_upcoming): when true the widget will exclude the past (resp. upcoming) talks. As we are dealing with static website, the dates of talks are compared to the now function and hence to the last building date.

    These 2 last options allow me to re-use the talks widget: one for the past (descending order), one for the upcoming (ascending order), without having to move or change the talks/files.md. And if a talk has been given, I just have to rebuild the website to move it to the "past" part without having to move a file (and hence modify its URL).

    I also get rid of legacy scratch functions.

    PS : in the talk layout, there is a small error: "Event" is shown even if there is "no" event.

  • Add a teaching widget

    Add a teaching widget

    Teaching has some interesting meta-data, too, and I wonder whether other people might find such a widget useful as well. It might be quite similar to talks or publication, except with a different set of metadata:

    • University (where the class took place)
    • Kind: Section/Tutorial, Seminar, Lecture
    • Academic Year / Quarter etc.
    • Academic program the class is a part of
  •  failed to extract shortcode: template for shortcode

    failed to extract shortcode: template for shortcode "alert" not found

    Reproduction:

    Launched with netlify Git cloned github page from terminal ran $ hugo server -D --> Error building failed to extract shortcode: template for shortcode "alert" not found

  • external_link for author

    external_link for author

    Purpose

    To allow external_link to be added to an author page. This works like external_link for projects; it directly links to the external page.

    This was requested for at least in #1463, #1176, #1303, #928.

    Documentation

    No change required (though, it could possibly be mentioned in the list of page metadata here.)

    Further details

    The authors name now links to the external page directly from:

    • a list of authors in the page metadata (displayed underneath the title of post/publication etc)
    • the author card (mini user-profile at bottom of post/publication etc)
    • the archive list (/authors/)
    • the people widget
    • any instance of the about widget (e.g. the auto-created one in /author/name-of-author). In addition in the about widget, a new social link is added with this external_link.

    This is always done as the external_link for project is done, with target="_blank", rel="noopener" added for hyperlinks with external_link.

    Screenshots

    Screenshot 2020-04-15 at 12 52 17 Screenshot 2020-04-13 at 17 07 21

    In the about widget there's the new social link: Screenshot 2020-04-13 at 17 22 50

  • Issues with preview for projects

    Issues with preview for projects

    I followed the thread #633, but since the last update, it seems that we have to have the same image for the featured image and the preview image ? I personally do not use a featured image but I had a preview image and I cannot make it work.

  • Simple Option to Disable Author Links

    Simple Option to Disable Author Links

    It appears a recent update added a feature to have the names of authors on publications as hyperlinks which take you to a page listing their publications. I don't think this behaviour should be enabled by default, and at least should have an obvious way to disable it.

    My reasoning is that myself and others use this template for a personal academic website, not a homepage for a group. While this feature may be useful for research groups, it is strange to have on a personal site.

    Further, within markdown I indicate first authorship with an * and also bold my own name in the author list. The current implementation of this feature does not respect either of these. If I put an * after a first author's name, the author hyperlink directs to an internal page with authorsname* which is distinct from the pages directed to from other publications just containing authorsname not first authored. Likewise, the markdown bolding on my name in the authors list takes me to a author page, for myself, which is already undesirable behaviour for a personal website. Further, the markdown bolding in the author's list is not respected in the title of the target author page, so that has a title **myname**.

    Again, I think this feature should be disabled by default, and have the option to enable it easily with a boolean option in the publications widget configuration.

  • Order (date) of publications

    Order (date) of publications

    Prerequisites

    • [X] I have searched for duplicate or closed feature requests
    • [X] I am mindful of the project scope

    Proposal

    Hi,

    I noticed that the order of the publications usually is based on the 'date' item in the index.md. But the academic import usually adds date: 20**-01-01 automatically. This is quite inconvenient when we have many papers within one year. It would be great if we could use the correct dates when calling academic.

    I noticed now there are several date-related items in the publication/index.md, maybe it is better to use those instead of date. 'lastnod': the date of run academic import *** --overwrite 'PublishDate': the date of run academic import

    and possible data information 'publication: '*arXiv preprint arXiv:xxxx.xxxxxx' if it is arxiv paper.

    Thanks!

    Motivation and context

    We can see publications in the more correct order. latest papers can show first.

    Thanks!

  • SEO omits second author

    SEO omits second author

    Preliminary Checks

    • [X] This issue is not a duplicate. Before opening a new issue, please search existing issues: https://github.com/wowchemy/wowchemy-hugo-themes/issues?q=is%3Aissue
    • [X] This issue is not a question, feature request, or anything other than a bug report directly related to Wowchemy. Please post those things on Discord: https://discord.gg/z8wNYzb

    Description

    The current Schema.org template only grabs the first author on multi-author posts.

    Reproduction Link

    https://github.com/wowchemy/wowchemy-hugo-themes/blob/769ac0e624b6f817d3846309da154f65837a8ea6/modules/wowchemy-seo/layouts/partials/jsonld/article.html#L31

    Steps to Reproduce

    1. put two authors in an array in a note or article
    2. render site
    3. look at markup ...

    Expected Result

    All authors should be written to their own @Person type like:

          "author": [{
              "@type": "Person",
              "name": "Jane Doe",
              "url": "http://example.com/profile/janedoe123"
            },{
              "@type": "Person",
              "name": "John Doe",
              "url": "http://example.com/profile/johndoe123"
          }]
    
    

    Actual Result

    only first author is put into json-ld format.

    What operating system(s) are you seeing the problem on?

    Linux

    What browser(s) are you seeing the problem on?

    Chrome

    Which Wowchemy template are you using?

    its in the code.. I read the code here https://github.com/wowchemy/wowchemy-hugo-themes/blob/769ac0e624b6f817d3846309da154f65837a8ea6/modules/wowchemy-seo/layouts/partials/jsonld/article.html#L31

  • Only load Chroma syntax highlighter CSS styles when a page has code blocks

    Only load Chroma syntax highlighter CSS styles when a page has code blocks

    This should be performed in the Hugo template rather than via JS.

    Has Hugo added functionality to easily detect if a page has code blocks and needs to load Chroma styles?

    Might be worth potential contributors asking the Hugo maintainers on the Hugo forum if unsure...

    See https://github.com/wowchemy/wowchemy-hugo-themes/blob/3349024c90f8502c7b1fac7d8575211690279ce3/modules/wowchemy/layouts/partials/site_head.html#L176

  • Create a Tailwind-based Wowchemy module

    Create a Tailwind-based Wowchemy module

    Motivations

    • Users and contributors Most startups/teams now use Tailwind and want to be using a Tailwind-based website builder. That also helps with contributions and maintenance, below, as that is the framework that those frontend devs prefer to code with.
    • Maintenance Make it easier for the community to contribute. We currently have such a highly modified version of Bootstrap and its components that it increases the barrier to entry and onboarding potential new contributors.
    • Customisation Tailwind is better suited to advanced customisation - Bootstrap does not surface enough customisation parameters, leading to us having such a heavily modified Bootstrap
    • Dark mode Tailwind has full support for dark mode and theming, whereas we have had to heavily modify Bootstrap for this purpose, making it harder to maintain the Wowchemy styles and there being some limitations
    • Faster page load With the new compiled Tailwind mode, we should be able to significantly reduce the size of the CSS bundle whilst also removing JQuery
    • Modern best practices PostCSS is now preferred over SCSS for extending the capabilities of CSS
    • Remove the JQuery dependency required by Bootstrap 4, and simplify related code
    • Community Tailwind also has a large community and many Hugo users are now preferring Tailwind-based templates
    • Hugo Bep recommends Tailwind as the CSS framework for Hugo and is busy adding tighter integration for Tailwind in Hugo

    Approach

    • Create a new experimental module named wowchemy-tailwind initially scoped just for blogging. This may form a first step towards more widely migrating other Wowchemy layouts from Bootstrap 4 to Tailwind 3.
    • Move the slides feature to its own module since it has its own Reveal layout system and is not dependent on Bootstrap or Tailwind
  • 👩‍💻 Collaborators wanted!

    👩‍💻 Collaborators wanted!

    We have an exciting roadmap ahead and want to keep the pulse of the project beating fast and steady.

    Are you someone who wants to take an active role in improving the Wowchemy website builder and templates?

    Look at the areas we need help with:

    • Community - help users on Discord and GitHub Discussions
    • Community - create Wowchemy tutorials and raise awareness of new features on your blog or Youtube etc.
    • Development - contribute a Pull Request to help resolve issues, especially those tagged with help wanted
    • Development - review Issues and Pull Requests
    • Development - further refactor, modularise, and optimise code according to the latest best practices for Hugo, JS, etc.
    • Development - maintaining the starter templates to keep them in-sync with the latest Hugo Modules

    Where can you start?

  • Upgrade FuseJS from 3.2 to latest

    Upgrade FuseJS from 3.2 to latest

    May be breaking changes and improved setup - see https://fusejs.io/ along with its release notes since v3.2

    May affect files including assets.toml and wowchemy-search.

    Thanks to @rodrigoalcarazdelaosa for tracking the (optional) dependencies at https://github.com/wowchemy/wowchemy-hugo-modules/discussions/1860 🙏

Vela plugin designed for generating a static documentation website with Hugo.

Vela plugin designed for generating a static documentation website with Hugo.

Jul 22, 2022
A user-friendly CMS written in Go (golang)

Fragmenta CMS Fragmenta CMS is a user-friendly Content Management System built with Go. For more information and a demo of the CMS in action, see the

Dec 24, 2022
notion-md-gen allows you to use Notion as a CMS for pages built with any static site generators

notion-md-gen allows you to use Notion as a CMS for pages built with any static site generators

Dec 12, 2022
A small site builder for the Gemini protocol

?? Flounder A lightweight platform to help users build simple Gemini sites over http(s) and serve those sites over http(s) and Gemini Flounder is in A

Dec 7, 2021
:construction: Closed. A website and user system (Gin/Backbone).

A website and user system starter. Implemented with gin and Backbone. Gowall is port of Drywall Go Node.js Repository here Drywall Site Gowall Drywall

Jul 6, 2020
导航网站生成器(Navigation website generator)
导航网站生成器(Navigation website generator)

gena 导航网站生成器 | English Document 安装 一键生成(推荐) 从 gena-template 自动生成并自动部署到 GitHub Pages 源码安装 go1.16 required go get -u github.com/x1ah/gena/cmd/gena > gen

Nov 20, 2022
Collection of tools to interact with Intigriti website
Collection of tools to interact with Intigriti website

Small tool, written in Go, that constantly monitors Activity feed on https://app.intigriti.com Dashboard page and sends Slack/Discord notifications on

Dec 23, 2022
Self-hosted video-hosting website and video archival manager for Niconico, Bilibili, and Youtube
Self-hosted video-hosting website and video archival manager for Niconico, Bilibili, and Youtube

Self-hosted video-hosting website and video archival manager for Niconico, Bilibili, and Youtube

Jan 1, 2023
API from AnonURL website, an anonymous URL shortener

API from AnonURL website, an anonymous URL shortener

Jan 23, 2022
This is my personal website, hosted on GitHub Pages

astrophena.name This is my personal website, hosted on GitHub Pages. Serving locally You need the latest Go and Node.js installed.

Nov 16, 2022
Community system build using GoFrame.
Community system build using GoFrame.

Focus聚焦社区是GoFrame社区项目,采用了简洁强大的GoFrame作为后端WEB框架, 由于前台系统需要SEO因此使用了GF自带template模板引擎,数据库用MySQL,前端使用jQuery/bootstrap框架。

Dec 7, 2022
A golang framework helps gopher to build a data visualization and admin panel in ten minutes
A golang framework helps gopher to build a data visualization and admin panel in ten minutes

the missing golang data admin panel builder tool. Documentation | 中文介绍 | DEMO | 中文DEMO | Twitter | Forum Inspired by laravel-admin Preface GoAdmin is

Dec 30, 2022
GraphJin - Build APIs in 5 minutes with GraphQL. An instant GraphQL to SQL compiler.
GraphJin - Build APIs in 5 minutes with GraphQL. An instant GraphQL to SQL compiler.

GraphJin gives you a high performance GraphQL API without you having to write any code. GraphQL is automagically compiled into an efficient SQL query. Use it either as a library or a standalone service.

Dec 29, 2022
Soong is the replacement for the old Android make-based build system

Soong Soong is the replacement for the old Android make-based build system. It replaces Android.mk files with Android.bp files, which are JSON-like si

Oct 10, 2021
REST server to build and install multicloud environments based on shared.configV2

builder A REST server to build and install multicloud environments based on shared.configV2 json For configuration, please see the Documentation Below

Nov 2, 2021
Build a TodoList with Go Design and implement a backend RESTful service in golang with CRUD

May we ask Igor to do a little project in leu of sample code? If there is a hire, the hours spent should be invoiced, so please keep track of that. Th

May 5, 2022
REST-API specifically build to support online store system of Zahir
REST-API specifically build to support online store system of Zahir

Rest Test. • From Above ERD please create Rest full API. Create register API(Include Generate password). • Acceptance o Phone number and email is uniq

Nov 15, 2021
GoAdmin is a toolkit to help you build a data visualization admin panel for your golang app.
GoAdmin is a toolkit to help you build a data visualization admin panel for your golang app.

the missing golang data admin panel builder tool. Documentation | 中文文档 | 中文介绍 | DEMO | 中文DEMO | Twitter | Forum Inspired by laravel-admin Preface GoAd

Nov 25, 2021
A dataviz framework help gopher to build a admin panel in ten minutes
A dataviz framework help gopher to build a admin panel in ten minutes

the missing golang data admin panel builder tool. Documentation | 中文文档 | DEMO Inspired by laravel-admin Preface GoAdmin is a toolkit to help you build

Oct 17, 2022