Merge commit '460777b3f13ea5c90ffdeece63b33ef07b2c7b8a' as 'themes/juice'
This commit is contained in:
commit
dacb4bfd47
24 changed files with 1474 additions and 0 deletions
3
themes/juice/.gitignore
vendored
Normal file
3
themes/juice/.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
.idea
|
||||
.DS_Store
|
||||
public
|
21
themes/juice/LICENSE
Normal file
21
themes/juice/LICENSE
Normal file
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2020 Huhu
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
129
themes/juice/README.md
Normal file
129
themes/juice/README.md
Normal file
|
@ -0,0 +1,129 @@
|
|||
# Juice
|
||||
|
||||
<img align="right" width="150" height="150" src="/content/juice.svg">
|
||||
|
||||
**Juice** is an intuitive, elegant, and responsive Zola theme for product sites.
|
||||
|
||||
- Build for product sites
|
||||
- Simple and intuitive structure
|
||||
- Clean and elegant design
|
||||
- Responsive and mobile device compatible
|
||||
- Customize and extend friendly
|
||||
|
||||
https://juice.huhu.io
|
||||
|
||||
# Installation
|
||||
|
||||
First download this theme to your `themes` directory:
|
||||
|
||||
```bash
|
||||
$ cd themes
|
||||
$ git clone https://github.com/huhu/juice.git
|
||||
```
|
||||
|
||||
or add as a submodule
|
||||
```bash
|
||||
$ git submodule add https://github.com/huhu/juice themes/juice
|
||||
```
|
||||
|
||||
and then enable it in your `config.toml`:
|
||||
|
||||
```toml
|
||||
theme = "juice"
|
||||
```
|
||||
|
||||
# Structure
|
||||
|
||||
### Hero
|
||||
|
||||
**Juice** is designed for product websites, hence we let **hero** part fills whole of screen.
|
||||
You can customize your **hero** by using `hero` block in the `templates/index.html`.
|
||||
|
||||
```html
|
||||
{% extends "juice/templates/index.html" %}
|
||||
{% block hero %}
|
||||
<div>
|
||||
Your cool hero html...
|
||||
</div>
|
||||
{% endblock hero %}
|
||||
```
|
||||
|
||||
### Page
|
||||
|
||||
Every markdown file located in `content` directory will become a **Page**. There also will display as
|
||||
a navigate link on the top-right corner.
|
||||
You can change the frontmatter's `weight` value to sort the order (ascending order).
|
||||
|
||||
```
|
||||
+++
|
||||
title = "Changelog"
|
||||
description = "Changelog"
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
```
|
||||
|
||||
### CSS variables
|
||||
|
||||
You can override theme variable by creating a file named `_variables.html` in your `templates` directory.
|
||||
|
||||
See the default value [here](./templates/_variables.html)
|
||||
|
||||
### Favicon
|
||||
The same way as changing the `hero` block in the `templates/index.html`, you can change the **favicon**.
|
||||
|
||||
```html
|
||||
{% extends "juice/templates/index.html" %}
|
||||
{% block favicon %}
|
||||
<link rel="icon" type="image/png" href="/favicon.ico">
|
||||
{% endblock favicon %}
|
||||
```
|
||||
|
||||
### Fonts
|
||||
If you changed the `--xy-font-family`-variable in `_variables.html`, you have to load the mentioned fonts in the `templates/index.html`.
|
||||
|
||||
```html
|
||||
{% extends "juice/templates/index.html" %}
|
||||
{% block fonts %}
|
||||
<link href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" rel="stylesheet" crossorigin="anonymous">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Babylonica&display=swap" rel="stylesheet">
|
||||
{% endblock fonts %}
|
||||
```
|
||||
|
||||
# Configuration
|
||||
|
||||
You can customize some builtin property in `config.toml` file:
|
||||
|
||||
```toml
|
||||
[extra]
|
||||
juice_logo_name = "Juice"
|
||||
juice_logo_path = "juice.svg"
|
||||
juice_extra_menu = [
|
||||
{ title = "Github", link = "https://github.com/huhu/juice"}
|
||||
]
|
||||
juice_exclude_menu = [
|
||||
"exclude_from_nav"
|
||||
]
|
||||
repository_url = "https://github.com/huhu/juice"
|
||||
```
|
||||
|
||||
# Shortcodes
|
||||
|
||||
**Juice** have some builtin shortcodes available in `templates/shortcodes` directory.
|
||||
|
||||
- `issue(id)` - A shortcode to render issue url, e.g. `issue(id=1)` would render to the link `https://github.com/huhu/juice/issue/1`.
|
||||
|
||||
> The `repository_url` is required.
|
||||
|
||||
# Showcases
|
||||
|
||||
Please see the [showcases page](https://juice.huhu.io/showcases).
|
||||
|
||||
# Contributing
|
||||
|
||||
Thank you very much for considering contributing to this project!
|
||||
|
||||
We appreciate any form of contribution:
|
||||
|
||||
- New issues (feature requests, bug reports, questions, ideas, ...)
|
||||
- Pull requests (documentation improvements, code improvements, new features, ...)
|
30
themes/juice/config.toml
Normal file
30
themes/juice/config.toml
Normal file
|
@ -0,0 +1,30 @@
|
|||
# The URL the site will be built for
|
||||
base_url = "/"
|
||||
|
||||
title = "Juice - An intuitive, elegant, and lightweight Zola theme for product sites."
|
||||
# default_language = "en"
|
||||
|
||||
# Whether to automatically compile all Sass files in the sass directory
|
||||
compile_sass = true
|
||||
|
||||
# Whether to build a search index to be used later on by a JavaScript library
|
||||
build_search_index = false
|
||||
|
||||
# Configuration of the Markdown rendering
|
||||
[markdown]
|
||||
# Whether to do syntax highlighting
|
||||
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
|
||||
highlight_code = true
|
||||
highlight_theme = "inspired-github"
|
||||
|
||||
[extra]
|
||||
juice_logo_name = "Juice"
|
||||
juice_logo_path = "juice.svg"
|
||||
juice_extra_menu = [
|
||||
{ title = "Github", link = "https://github.com/huhu/juice" }
|
||||
]
|
||||
# Add page titles here to exclude them from the nav section (case sensitive)
|
||||
juice_exclude_menu = [
|
||||
"exclude_from_nav"
|
||||
]
|
||||
repository_url = "https://github.com/huhu/juice"
|
154
themes/juice/content/_index.md
Normal file
154
themes/juice/content/_index.md
Normal file
|
@ -0,0 +1,154 @@
|
|||
+++
|
||||
title = "Juice"
|
||||
sort_by = "weight"
|
||||
+++
|
||||
|
||||
# Juice
|
||||
|
||||
**Juice** is an intuitive, elegant, and responsive Zola theme for product sites.
|
||||
|
||||
- Build for product sites
|
||||
- Simple and intuitive structure
|
||||
- Clean and elegant design
|
||||
- Responsive and mobile device compatible
|
||||
- Customize and extend friendly
|
||||
|
||||
# Installation
|
||||
|
||||
> **Zola** is a prerequisite. Please refer to the [Zola installation](https://www.getzola.org/documentation/getting-started/installation/) docs.
|
||||
|
||||
First download this theme to your `themes` directory:
|
||||
|
||||
```bash
|
||||
$ cd themes
|
||||
$ git clone https://github.com/huhu/juice.git
|
||||
```
|
||||
|
||||
or add as a submodule
|
||||
```bash
|
||||
$ git submodule add https://github.com/huhu/juice themes/juice
|
||||
```
|
||||
|
||||
and then enable it in your `config.toml`:
|
||||
|
||||
```toml
|
||||
theme = "juice"
|
||||
```
|
||||
|
||||
# Structure
|
||||
|
||||
### Hero
|
||||
|
||||
**Juice** is designed for product websites, hence we let **hero** part fills whole of screen.
|
||||
You can customize your **hero** by using `hero` block in the `templates/index.html`.
|
||||
|
||||
```html
|
||||
{% extends "juice/templates/index.html" %}
|
||||
{% block hero %}
|
||||
<div>
|
||||
Your cool hero html...
|
||||
</div>
|
||||
{% endblock hero %}
|
||||
```
|
||||
|
||||
### Page
|
||||
|
||||
Every markdown file located in `content` directory will become a **Page**. There also will display as
|
||||
a navigate link on the top-right corner.
|
||||
You can change the frontmatter's `weight` value to sort the order (ascending order).
|
||||
|
||||
```
|
||||
+++
|
||||
title = "Changelog"
|
||||
description = "Changelog"
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
```
|
||||
|
||||
### CSS variables
|
||||
|
||||
You can override theme variable by creating a file named `_variables.html` in your `templates` directory.
|
||||
|
||||
```html
|
||||
<style>
|
||||
:root {
|
||||
/* Primary theme color */
|
||||
--primary-color: #FED43F;
|
||||
/* Primary theme text color */
|
||||
--primary-text-color: #543631;
|
||||
--primary-text-color-over: #000;
|
||||
/* Primary theme link color */
|
||||
--primary-link-color: #F9BB2D;
|
||||
/* Secondary color: the background body color */
|
||||
--secondary-color: #fcfaf6;
|
||||
--secondary-text-color: #303030;
|
||||
/* Highlight text color of table of content */
|
||||
--toc-highlight-text-color: #d46e13;
|
||||
--toc-background-color: white;
|
||||
--code-color: #4a4a4a;
|
||||
--code-background-color: white;
|
||||
--shadow-color: #ddd;
|
||||
/* Font used for headers (h1 & h2) */
|
||||
--header-font-family: "Fira Sans", sans-serif;
|
||||
/* Font used for text */
|
||||
--text-font-family: "Fira Sans", sans-serif;
|
||||
}
|
||||
</style>
|
||||
```
|
||||
|
||||
### Favicon
|
||||
The same way as changing the `hero` block in the `templates/index.html`, you can change the **favicon**.
|
||||
|
||||
```html
|
||||
{% extends "juice/templates/index.html" %}
|
||||
{% block favicon %}
|
||||
<link rel="icon" type="image/png" href="/favicon.ico">
|
||||
{% endblock favicon %}
|
||||
```
|
||||
|
||||
### Fonts
|
||||
If you changed the `--xy-font-family`-variable in `_variables.html`, you have to load the mentioned fonts in the `templates/index.html`.
|
||||
|
||||
```html
|
||||
{% extends "juice/templates/index.html" %}
|
||||
{% block fonts %}
|
||||
<link href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" rel="stylesheet" crossorigin="anonymous">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Babylonica&display=swap" rel="stylesheet">
|
||||
{% endblock fonts %}
|
||||
```
|
||||
|
||||
# Configuration
|
||||
|
||||
You can customize some builtin property in `config.toml` file:
|
||||
|
||||
```toml
|
||||
[extra]
|
||||
juice_logo_name = "Juice"
|
||||
juice_logo_path = "juice.svg"
|
||||
juice_extra_menu = [
|
||||
{ title = "Github", link = "https://github.com/huhu/juice"}
|
||||
]
|
||||
repository_url = "https://github.com/huhu/juice"
|
||||
```
|
||||
|
||||
# Shortcodes
|
||||
|
||||
**Juice** have some builtin shortcodes available in `templates/shortcodes` directory.
|
||||
|
||||
- `issue(id)` - A shortcode to render issue url, e.g. `issue(id=1)` would render to the link `https://github.com/huhu/juice/issue/1`.
|
||||
|
||||
> The `repository_url` is required.
|
||||
|
||||
# Showcases
|
||||
|
||||
Please see the [showcases page](/showcases).
|
||||
|
||||
# Contributing
|
||||
|
||||
Thank you very much for considering contributing to this project!
|
||||
|
||||
We appreciate any form of contribution:
|
||||
|
||||
- New issues (feature requests, bug reports, questions, ideas, ...)
|
||||
- Pull requests (documentation improvements, code improvements, new features, ...)
|
25
themes/juice/content/about.md
Normal file
25
themes/juice/content/about.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
+++
|
||||
title = "About"
|
||||
description = "About"
|
||||
weight = 3
|
||||
+++
|
||||
|
||||
# Juice
|
||||
|
||||
**Juice** is an intuitive, elegant, and responsive Zola theme for product sites.
|
||||
Built by [Huhu.io](https://huhu.io), adopted by a several product sites.
|
||||
|
||||
# Logo
|
||||
|
||||
![](/juice.svg)
|
||||
|
||||
# Zola
|
||||
|
||||
[Zola](https://www.getzola.org) is a fast static site generator in a single binary with everything built-in.
|
||||
|
||||
|
||||
# Huhu.io
|
||||
|
||||
[Huhu.io](https://huhu.io) is a global community of coders dedicated to making cool stuff coders need and want.
|
||||
We focus on enabling the developer community by curating, incubating, and launching tools based on great ideas,
|
||||
providing support and funding that allows our engineers to develop what they want, the way they want.
|
43
themes/juice/content/changelog.md
Normal file
43
themes/juice/content/changelog.md
Normal file
|
@ -0,0 +1,43 @@
|
|||
+++
|
||||
title = "Changelog"
|
||||
description = "Changelog"
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
# v0.6.0 - 2021-10-05
|
||||
|
||||
- Add `favicon` block.
|
||||
- Always align footer bottom. {{ issue(id=4) }}
|
||||
- Support config favicon. Fixes {{ issue(id=5) }}.
|
||||
- Table of Content supports auto-scroll if the list is too long.
|
||||
|
||||
# v0.5.0 - 2021-03-02
|
||||
|
||||
- Add `issue` shortcode.
|
||||
- Add `sidebar` block.
|
||||
- Adjust blockquote background color.
|
||||
- Fix explore-more class left align.
|
||||
|
||||
# v0.4.0 - 2020-11-18
|
||||
|
||||
- Prevent showcase images be included by downstream Zola project.
|
||||
- Fix TOC highlight in localhost mode. See {{ issue(id=1) }}.
|
||||
- Hide TOC for empty markdown content page.
|
||||
|
||||
# v0.3.0 - 2020-07-17
|
||||
|
||||
- Rename css filename to avoid conflicts.
|
||||
- Replace sass variables with css variable.
|
||||
- Add `--toc-highlight-text-color` variable.
|
||||
- Add normalize.css.
|
||||
|
||||
# v0.2.0 - 2020-06-28
|
||||
|
||||
- Add extra juice_extra_menu config.
|
||||
- Add color customization CSS variables.
|
||||
- Improve docs and blockquote style.
|
||||
- Support customize logo and name.
|
||||
|
||||
# v0.1.0 - 2020-06-21
|
||||
|
||||
- First release!
|
9
themes/juice/content/exclude_from_nav.md
Normal file
9
themes/juice/content/exclude_from_nav.md
Normal file
|
@ -0,0 +1,9 @@
|
|||
+++
|
||||
title = "exclude_from_nav"
|
||||
description = "Page without nav link"
|
||||
weight = 3
|
||||
+++
|
||||
|
||||
# Hidden page
|
||||
|
||||
This page will not be added to the nav links in the header.
|
BIN
themes/juice/content/favicon.ico
Normal file
BIN
themes/juice/content/favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
48
themes/juice/content/juice.svg
Normal file
48
themes/juice/content/juice.svg
Normal file
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1592727113403" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1137" width="100" height="100" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><style type="text/css">@font-face { font-family: "Leelawadee UI Web"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Leelawadee UI Web"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Leelawadee UI Web"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Leelawadee UI Web"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Arabic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Arabic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Arabic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Arabic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-arabic/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Cyrillic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Cyrillic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Cyrillic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Cyrillic)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-cyrillic/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (East European)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (East European)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (East European)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (East European)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-easteuropean/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Greek)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Greek)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Greek)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Greek)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-greek/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Hebrew)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Hebrew)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Hebrew)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Hebrew)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-hebrew/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Vietnamese)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Vietnamese)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Vietnamese)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Vietnamese)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-vietnamese/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (West European)"; src: local("Segoe UI Light"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (West European)"; src: local("Segoe UI SemiLight"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (West European)"; src: local("Segoe UI"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (West European)"; src: local("Segoe UI SemiBold"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-westeuropean/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/selawik/selawik-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Armenian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Armenian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Armenian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Armenian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-armenian/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Georgian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-light.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-light.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Georgian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-semilight.woff") format("woff"); font-weight: 300; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Georgian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-regular.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Segoe UI Web (Georgian)"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-semibold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/segoeui-georgian/segoeui-semibold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Leelawadee UI Web"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-semilight.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-semilight.woff") format("woff"); font-weight: 100; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: "Leelawadee UI Web"; src: url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-bold.woff2") format("woff2"), url("https://static2.sharepointonline.com/files/fabric/assets/fonts/leelawadeeui-thai/leelawadeeui-bold.woff") format("woff"); font-weight: 600; font-style: normal; font-display: swap; }
|
||||
@font-face { font-family: FabricMDL2Icons; src: url("fabric-icons.woff") format("woff"); }
|
||||
</style></defs><path d="M642.7 847.4l-79.2-31.3c-8-3.2-13.2-10.1-13.3-17.8L547 559.7h-70l-3.2 238.6c-0.1 7.7-5.3 14.7-13.3 17.8l-79.2 31.3c-18.7 7-22.7 26-7.1 37.5 34.6 25.5 85.8 33.6 137.7 33.4 51.9 0.2 103.1-7.9 137.7-33.4 15.7-11.5 11.8-30.5-6.9-37.5z" fill="#FFFFFF" p-id="1138"></path><path d="M513.9 928.3h-4c-62.1 0-109.8-11.9-141.7-35.3-10.1-7.4-15-18-13.5-28.9 1.6-11.5 10.1-21.2 22.9-26l79.1-31.3c4.2-1.7 6.9-5.1 7-8.7l3.2-238.6c0.1-5.5 4.5-9.9 10-9.9H547c5.5 0 9.9 4.4 10 9.9l3.2 238.6c0 3.6 2.8 7 7 8.7l79.1 31.3c12.7 4.8 21.3 14.5 22.9 26 1.5 10.9-3.4 21.5-13.5 28.9-31.9 23.4-79.6 35.3-141.8 35.3z m-1.9-20h1.9c57.9 0 101.6-10.6 129.9-31.4 4.1-3 6-6.6 5.5-10.1-0.6-4.1-4.4-7.9-10.2-10-0.1 0-0.1 0-0.2-0.1l-79.2-31.3c-11.8-4.6-19.5-15.2-19.6-27L537 569.7h-50.2l-3.1 228.7c-0.2 11.8-7.9 22.3-19.6 27L385 856.7c-0.1 0-0.1 0-0.2 0.1-5.8 2.2-9.6 5.9-10.2 10-0.5 3.5 1.5 7.1 5.5 10.1 28.7 21.1 73 31.7 131.9 31.4z" fill="#543630" p-id="1139"></path><path d="M521.9 675.2s-1.1 79.2-1.1 133.1c0 33 49 42.7 48.4 56.1-1.1 24.2-132 28.6-177.1 16.5-34-9.1-12.8 9.2 0.2 15 13 5.9 132 43 212.8 10.7 80.8-32.3 50.3-55.4 42.3-57.1-50.3-10.6-90.8-24.9-93.5-52.3-4.5-45-8.9-119.8-32-122z" fill="#EFE7DA" p-id="1140"></path><path d="M513.9 928.3h-4c-62.1 0-109.8-11.9-141.7-35.3-10.1-7.4-15-18-13.5-28.9 1.6-11.5 10.1-21.2 22.9-26l79.1-31.3c4.2-1.7 6.9-5.1 7-8.7l3.2-238.6c0.1-5.5 4.5-9.9 10-9.9H547c5.5 0 9.9 4.4 10 9.9l3.2 238.6c0 3.6 2.8 7 7 8.7l79.1 31.3c12.7 4.8 21.3 14.5 22.9 26 1.5 10.9-3.4 21.5-13.5 28.9-31.9 23.4-79.6 35.3-141.8 35.3z m-1.9-20h1.9c57.9 0 101.6-10.6 129.9-31.4 4.1-3 6-6.6 5.5-10.1-0.6-4.1-4.4-7.9-10.2-10-0.1 0-0.1 0-0.2-0.1l-79.2-31.3c-11.8-4.6-19.5-15.2-19.6-27L537 569.7h-50.2l-3.1 228.7c-0.2 11.8-7.9 22.3-19.6 27L385 856.7c-0.1 0-0.1 0-0.2 0.1-5.8 2.2-9.6 5.9-10.2 10-0.5 3.5 1.5 7.1 5.5 10.1 28.7 21.1 73 31.7 131.9 31.4z" fill="#543630" p-id="1141"></path><path d="M360 119.7c-21.7 0-41.4 12.8-50.3 32.7-31 69.4-84.3 221.3-84.3 289.7 0 152.2 120.5 238.2 286.6 238.2s286.6-86 286.6-238.2c0-69.3-53.3-220.2-84.3-289.7-8.9-19.8-28.5-32.7-50.3-32.7H360z" fill="#FFFFFF" p-id="1142"></path><path d="M512 690.2c-85.8 0-159.1-22.2-211.8-64.2-55.5-44.2-84.8-107.8-84.8-184 0-39.7 16.8-102 31-147.4 19-61 40.5-115.6 54.2-146.4 10.5-23.4 33.8-38.6 59.4-38.6h304c25.6 0 48.9 15.1 59.4 38.6 29.7 66.5 85.2 220.9 85.2 293.7 0 76.2-29.3 139.8-84.8 184-52.7 42.1-126 64.3-211.8 64.3zM360 129.7c-17.7 0-33.9 10.5-41.1 26.7-17 38-37.9 94.6-53.4 144.1-19.4 62.3-30.1 112.5-30.1 141.5 0 69.9 26.7 128.1 77.2 168.3 49.2 39.1 118.1 59.8 199.3 59.8s150.2-20.7 199.3-59.8c50.5-40.2 77.2-98.4 77.2-168.3 0-29.8-10.4-78.8-30.1-141.8-18.6-59.6-39.8-113.3-53.4-143.8-7.3-16.2-23.4-26.7-41.1-26.7H360z" fill="#543630" p-id="1143"></path><path d="M250.8 314.7c-14.6 49.3-25.3 96.7-25.3 127.3 0 152.2 120.5 238.2 286.6 238.2s286.6-86 286.6-238.2c0-31-10.7-78.3-25.2-127.3H250.8z" fill="#FFD527" p-id="1144"></path><path d="M512 690.2c-85.8 0-159.1-22.2-211.8-64.2-55.5-44.2-84.8-107.8-84.8-184 0-19.8 4.5-58.4 25.7-130.2 1.3-4.2 5.2-7.2 9.6-7.2h522.6c4.4 0 8.3 2.9 9.6 7.2 11.7 39.4 25.6 93.9 25.6 130.2 0 76.2-29.3 139.8-84.8 184-52.6 42-125.9 64.2-211.7 64.2zM258.3 324.7c-14.9 51.5-22.8 92-22.8 117.3 0 69.9 26.7 128.1 77.2 168.3 49.2 39.1 118.1 59.8 199.3 59.8s150.2-20.7 199.3-59.8c50.5-40.2 77.2-98.4 77.2-168.3 0-25.6-7.8-66.1-22.7-117.3H258.3z" fill="#543630" p-id="1145"></path><path d="M374 558.7c-3.1 0-6.3-1-9-3-33-24.6-50.3-60.8-50.2-104.5 0.1-32.1 9.7-57 10.2-58 3-7.7 11.7-11.5 19.4-8.5 7.7 3 11.5 11.7 8.5 19.4-0.1 0.3-8.2 21.6-8.1 48.2 0.1 33.9 12.9 60.6 38.1 79.4 6.6 5 8 14.4 3 21-2.8 3.9-7.3 6-11.9 6z" fill="#FFFFFF" p-id="1146"></path><path d="M768.3 324.4H254.6c-5.5 0-10-4.5-10-10s4.5-10 10-10h513.7c5.5 0 10 4.5 10 10s-4.5 10-10 10z" fill="#543630" p-id="1147"></path></svg>
|
After Width: | Height: | Size: 21 KiB |
127
themes/juice/content/showcases.md
Normal file
127
themes/juice/content/showcases.md
Normal file
|
@ -0,0 +1,127 @@
|
|||
+++
|
||||
title = "Showcases"
|
||||
description = "Showcases"
|
||||
weight = 1
|
||||
+++
|
||||
|
||||
# Pull request
|
||||
|
||||
If you use **Juice** as your theme, feel free to make Pull request.
|
||||
|
||||
Here are some steps to help you get started:
|
||||
|
||||
- Change the [content/showcases.md](https://github.com/huhu/juice/blob/master/content/showcases.md) file, add your product site. Make sure the lexicographical order.
|
||||
- Add a link to your product site.
|
||||
|
||||
# Gallery
|
||||
|
||||
Here are some product websites which use **Juice** as the theme.
|
||||
Sort by lexicographical order. For more showcases, please visit [here](https://github.com/search?l=&p=1&q=theme+%3D+%22juice%22+filename%3Aconfig.toml&ref=advsearch&type=Code).
|
||||
|
||||
## Acton Lang
|
||||
|
||||
[https://www.acton-lang.org/](https://www.acton-lang.org/)
|
||||
|
||||
## Arara
|
||||
|
||||
[https://islandoftex.gitlab.io/arara/](https://islandoftex.gitlab.io/arara/)
|
||||
|
||||
## Angular Rust
|
||||
|
||||
[https://angular-rust.github.io/](https://angular-rust.github.io/)
|
||||
|
||||
## Atlas Language
|
||||
|
||||
[https://atlas-language.github.io/](https://atlas-language.github.io/)
|
||||
|
||||
## Avatar CLI
|
||||
|
||||
[https://avatar-cli.dev/](https://avatar-cli.dev/)
|
||||
|
||||
## C/C++ Search Extension
|
||||
|
||||
[https://cpp.extension.sh/](https://cpp.extension.sh/)
|
||||
|
||||
## Crow Translate
|
||||
|
||||
[https://crow-translate.github.io/](https://crow-translate.github.io/)
|
||||
|
||||
## Drogue IOT
|
||||
|
||||
[https://www.drogue.io/](https://www.drogue.io/)
|
||||
|
||||
## El Monitorro
|
||||
|
||||
[https://elmonitorro.badykov.com/](https://elmonitorro.badykov.com/)
|
||||
|
||||
## Erg Lang
|
||||
|
||||
[https://erg-lang.org/](https://erg-lang.org/)
|
||||
|
||||
## Godot-rust
|
||||
|
||||
[https://godot-rust.github.io/](https://godot-rust.github.io/)
|
||||
|
||||
## GoToFix (JP)
|
||||
|
||||
[https://gotofix.kumassy.com/](https://gotofix.kumassy.com/)
|
||||
|
||||
## Go Search Extension
|
||||
|
||||
[https://go.extension.sh/](https://go.extension.sh/)
|
||||
|
||||
## Gradecoin
|
||||
|
||||
[https://gradecoin.xyz/](https://gradecoin.xyz/)
|
||||
|
||||
## Insta.rs
|
||||
|
||||
[https://insta.rs/](https://insta.rs/)
|
||||
|
||||
## Instant markdown
|
||||
|
||||
[https://instant-markdown.github.io/](https://instant-markdown.github.io/)
|
||||
|
||||
## ImpftHessen (DE)
|
||||
|
||||
[https://impft-hessen.de/](https://impft-hessen.de/)
|
||||
|
||||
## JS Search Extension
|
||||
|
||||
[https://js.extension.sh/](https://js.extension.sh/)
|
||||
|
||||
## Fun Notation
|
||||
|
||||
[https://www.notation.fun/](https://www.notation.fun/)
|
||||
|
||||
## PeopleForBike
|
||||
|
||||
[https://peopleforbikes.github.io/](https://peopleforbikes.github.io/)
|
||||
|
||||
## Rust Search Extension
|
||||
|
||||
[https://rust.extension.sh/](https://rust.extension.sh/)
|
||||
|
||||
## Stitcherd
|
||||
|
||||
[https://stitcherd.vhodges.dev/](https://stitcherd.vhodges.dev/)
|
||||
|
||||
## Streamson
|
||||
|
||||
[https://streamson.henek.name/](https://streamson.henek.name/)
|
||||
|
||||
## Tokay lang
|
||||
|
||||
[https://tokay.dev](https://tokay.dev)
|
||||
|
||||
## Trunk
|
||||
|
||||
[https://trunkrs.dev/](https://trunkrs.dev/)
|
||||
|
||||
## Vidar
|
||||
|
||||
[https://calebsacks.me/vidar/](https://calebsacks.me/vidar/)
|
||||
|
||||
## zDevelopers
|
||||
|
||||
[https://dev.zcraft.fr/](https://dev.zcraft.fr/)
|
45
themes/juice/sass/_markdown.scss
Normal file
45
themes/juice/sass/_markdown.scss
Normal file
|
@ -0,0 +1,45 @@
|
|||
.content {
|
||||
padding: 0 40px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
.content pre {
|
||||
overflow-x: auto;
|
||||
padding: 1.25em 1.5em;
|
||||
white-space: pre;
|
||||
word-wrap: normal;
|
||||
background-color: var(--code-background-color);
|
||||
color: var(--code-color);
|
||||
font-size: .875em;
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
.content code {
|
||||
background-color: var(--code-background-color);
|
||||
color: var(--code-color);
|
||||
font-size: .875em;
|
||||
font-weight: normal;
|
||||
padding: 0.25em 0.5em;
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
.content pre code {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.content a {
|
||||
color: var(--primary-link-color);
|
||||
|
||||
&:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
.content blockquote {
|
||||
border-left: #e2dede 8px solid;
|
||||
margin: 0;
|
||||
background-color: #f2f1f0;
|
||||
padding: 0 20px;
|
||||
}
|
39
themes/juice/sass/_text.scss
Normal file
39
themes/juice/sass/_text.scss
Normal file
|
@ -0,0 +1,39 @@
|
|||
.heading-text {
|
||||
font-family: var(--header-font-family);
|
||||
font-size: 32px;
|
||||
font-weight: 600;
|
||||
padding: 10px 0 25px 0;
|
||||
color: var(--primary-text-color);
|
||||
}
|
||||
|
||||
h1, .title-text {
|
||||
font-family: var(--header-font-family);
|
||||
font-size: 25px;
|
||||
font-weight: 500;
|
||||
color: var(--primary-text-color);
|
||||
border-left: var(--primary-color) 8px solid;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
h2, .subtitle-text {
|
||||
font-family: var(--header-font-family);
|
||||
font-size: 20px;
|
||||
font-weight: 500;
|
||||
color: var(--primary-text-color);
|
||||
}
|
||||
|
||||
.text {
|
||||
font-family: var(--text-font-family);
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
line-height: 26px;
|
||||
letter-spacing: 0.2px;
|
||||
color: var(--primary-text-color);
|
||||
}
|
||||
|
||||
.subtext {
|
||||
font-family: var(--text-font-family);
|
||||
font-size: 16px;
|
||||
font-weight: 400;
|
||||
letter-spacing: 0.1px;
|
||||
}
|
13
themes/juice/sass/_ultility.scss
Normal file
13
themes/juice/sass/_ultility.scss
Normal file
|
@ -0,0 +1,13 @@
|
|||
.text-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.pos-absolute {
|
||||
right: 0;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.box-shadow {
|
||||
box-shadow: 0 2px 10px 2px var(--shadow-color);
|
||||
}
|
194
themes/juice/sass/juice.scss
Normal file
194
themes/juice/sass/juice.scss
Normal file
|
@ -0,0 +1,194 @@
|
|||
@import "_ultility.scss";
|
||||
@import "_text.scss";
|
||||
@import "_markdown.scss";
|
||||
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
box-sizing: border-box;
|
||||
background-color: var(--secondary-color);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
ul {
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
|
||||
ul > li {
|
||||
padding: 0.3rem 0;
|
||||
}
|
||||
|
||||
p > img {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
header {
|
||||
background-color: var(--primary-color);
|
||||
color: var(--primary-text-color);
|
||||
padding: 20px 50px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.logo {
|
||||
font-family: "Alfa Slab One", serif;
|
||||
font-size: 32px;
|
||||
color: var(--primary-text-color);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin: 0 40px;
|
||||
|
||||
img {
|
||||
width: 60px;
|
||||
margin: 0 25px;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-item {
|
||||
margin: 0 10px;
|
||||
text-decoration: none;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
|
||||
&:hover {
|
||||
color: var(--primary-text-color-over);
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
.hero {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-evenly;
|
||||
height: 100vh;
|
||||
background-color: var(--primary-color);
|
||||
overflow-x: hidden;
|
||||
padding: 0 40px;
|
||||
|
||||
.explore-more {
|
||||
position: absolute;
|
||||
bottom: 20px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
main {
|
||||
display: flex;
|
||||
padding: 50px 100px;
|
||||
flex-grow: 1;
|
||||
|
||||
.toc {
|
||||
max-width: 260px;
|
||||
min-width: 240px;
|
||||
}
|
||||
|
||||
.toc-item {
|
||||
padding: 10px 20px;
|
||||
color: #424242;
|
||||
}
|
||||
|
||||
.toc-item a, .toc-item-child a {
|
||||
color: var(--secondary-text-color);
|
||||
|
||||
&:hover {
|
||||
cursor: pointer;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
.toc-item a.active, .toc-item-child a.active {
|
||||
color: var(--toc-highlight-text-color);
|
||||
}
|
||||
|
||||
.toc-item-child {
|
||||
padding: 0 30px 5px;
|
||||
color: #424242;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.toc-sticky {
|
||||
border-radius: 3px;
|
||||
border-top: 5px solid var(--primary-color);
|
||||
background-color: var(--toc-background-color);
|
||||
position: sticky;
|
||||
position: -webkit-sticky;
|
||||
position: -moz-sticky;
|
||||
position: -ms-sticky;
|
||||
position: -o-sticky;
|
||||
top: 10px;
|
||||
padding: 10px 0 20px;
|
||||
max-height: 100vh;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
footer {
|
||||
padding: 50px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background-color: #202020;
|
||||
color: #fcfcfc;
|
||||
|
||||
a {
|
||||
color: #fcfcfc;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1280px) {
|
||||
.content {
|
||||
max-width: 60%;
|
||||
min-width: 800px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
header {
|
||||
padding: 10px 30px;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.logo {
|
||||
font-size: 28px;
|
||||
margin: 10px;
|
||||
|
||||
img {
|
||||
width: 45px;
|
||||
margin: 0 10px 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-item {
|
||||
margin: 0 5px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.hero {
|
||||
padding: 40px 30px;
|
||||
}
|
||||
|
||||
main {
|
||||
padding: 30px;
|
||||
}
|
||||
|
||||
.content {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.explore-more, .toc {
|
||||
display: none;
|
||||
}
|
||||
|
||||
}
|
BIN
themes/juice/screenshot.png
Normal file
BIN
themes/juice/screenshot.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 150 KiB |
349
themes/juice/static/normalize.css
vendored
Normal file
349
themes/juice/static/normalize.css
vendored
Normal file
|
@ -0,0 +1,349 @@
|
|||
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
|
||||
|
||||
/* Document
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Correct the line height in all browsers.
|
||||
* 2. Prevent adjustments of font size after orientation changes in iOS.
|
||||
*/
|
||||
|
||||
html {
|
||||
line-height: 1.15; /* 1 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/* Sections
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the margin in all browsers.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Render the `main` element consistently in IE.
|
||||
*/
|
||||
|
||||
main {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the font size and margin on `h1` elements within `section` and
|
||||
* `article` contexts in Chrome, Firefox, and Safari.
|
||||
*/
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: 0.67em 0;
|
||||
}
|
||||
|
||||
/* Grouping content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Add the correct box sizing in Firefox.
|
||||
* 2. Show the overflow in Edge and IE.
|
||||
*/
|
||||
|
||||
hr {
|
||||
box-sizing: content-box; /* 1 */
|
||||
height: 0; /* 1 */
|
||||
overflow: visible; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||
* 2. Correct the odd `em` font sizing in all browsers.
|
||||
*/
|
||||
|
||||
pre {
|
||||
font-family: monospace, monospace; /* 1 */
|
||||
font-size: 1em; /* 2 */
|
||||
}
|
||||
|
||||
/* Text-level semantics
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the gray background on active links in IE 10.
|
||||
*/
|
||||
|
||||
a {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Remove the bottom border in Chrome 57-
|
||||
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
|
||||
*/
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: none; /* 1 */
|
||||
text-decoration: underline; /* 2 */
|
||||
text-decoration: underline dotted; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct font weight in Chrome, Edge, and Safari.
|
||||
*/
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bolder;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||
* 2. Correct the odd `em` font sizing in all browsers.
|
||||
*/
|
||||
|
||||
code,
|
||||
kbd,
|
||||
samp {
|
||||
font-family: monospace, monospace; /* 1 */
|
||||
font-size: 1em; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct font size in all browsers.
|
||||
*/
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent `sub` and `sup` elements from affecting the line height in
|
||||
* all browsers.
|
||||
*/
|
||||
|
||||
sub,
|
||||
sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
/* Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the border on images inside links in IE 10.
|
||||
*/
|
||||
|
||||
img {
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
/* Forms
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Change the font styles in all browsers.
|
||||
* 2. Remove the margin in Firefox and Safari.
|
||||
*/
|
||||
|
||||
button,
|
||||
input,
|
||||
optgroup,
|
||||
select,
|
||||
textarea {
|
||||
font-family: inherit; /* 1 */
|
||||
font-size: 100%; /* 1 */
|
||||
line-height: 1.15; /* 1 */
|
||||
margin: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the overflow in IE.
|
||||
* 1. Show the overflow in Edge.
|
||||
*/
|
||||
|
||||
button,
|
||||
input { /* 1 */
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inheritance of text transform in Edge, Firefox, and IE.
|
||||
* 1. Remove the inheritance of text transform in Firefox.
|
||||
*/
|
||||
|
||||
button,
|
||||
select { /* 1 */
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the inability to style clickable types in iOS and Safari.
|
||||
*/
|
||||
|
||||
button,
|
||||
[type="button"],
|
||||
[type="reset"],
|
||||
[type="submit"] {
|
||||
-webkit-appearance: button;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inner border and padding in Firefox.
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner,
|
||||
[type="button"]::-moz-focus-inner,
|
||||
[type="reset"]::-moz-focus-inner,
|
||||
[type="submit"]::-moz-focus-inner {
|
||||
border-style: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore the focus styles unset by the previous rule.
|
||||
*/
|
||||
|
||||
button:-moz-focusring,
|
||||
[type="button"]:-moz-focusring,
|
||||
[type="reset"]:-moz-focusring,
|
||||
[type="submit"]:-moz-focusring {
|
||||
outline: 1px dotted ButtonText;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the padding in Firefox.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
padding: 0.35em 0.75em 0.625em;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the text wrapping in Edge and IE.
|
||||
* 2. Correct the color inheritance from `fieldset` elements in IE.
|
||||
* 3. Remove the padding so developers are not caught out when they zero out
|
||||
* `fieldset` elements in all browsers.
|
||||
*/
|
||||
|
||||
legend {
|
||||
box-sizing: border-box; /* 1 */
|
||||
color: inherit; /* 2 */
|
||||
display: table; /* 1 */
|
||||
max-width: 100%; /* 1 */
|
||||
padding: 0; /* 3 */
|
||||
white-space: normal; /* 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
|
||||
*/
|
||||
|
||||
progress {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the default vertical scrollbar in IE 10+.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Add the correct box sizing in IE 10.
|
||||
* 2. Remove the padding in IE 10.
|
||||
*/
|
||||
|
||||
[type="checkbox"],
|
||||
[type="radio"] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the cursor style of increment and decrement buttons in Chrome.
|
||||
*/
|
||||
|
||||
[type="number"]::-webkit-inner-spin-button,
|
||||
[type="number"]::-webkit-outer-spin-button {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the odd appearance in Chrome and Safari.
|
||||
* 2. Correct the outline style in Safari.
|
||||
*/
|
||||
|
||||
[type="search"] {
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
outline-offset: -2px; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inner padding in Chrome and Safari on macOS.
|
||||
*/
|
||||
|
||||
[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inability to style clickable types in iOS and Safari.
|
||||
* 2. Change font properties to `inherit` in Safari.
|
||||
*/
|
||||
|
||||
::-webkit-file-upload-button {
|
||||
-webkit-appearance: button; /* 1 */
|
||||
font: inherit; /* 2 */
|
||||
}
|
||||
|
||||
/* Interactive
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Add the correct display in Edge, IE 10+, and Firefox.
|
||||
*/
|
||||
|
||||
details {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/*
|
||||
* Add the correct display in all browsers.
|
||||
*/
|
||||
|
||||
summary {
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/* Misc
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Add the correct display in IE 10+.
|
||||
*/
|
||||
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct display in IE 10.
|
||||
*/
|
||||
|
||||
[hidden] {
|
||||
display: none;
|
||||
}
|
23
themes/juice/templates/_macros.html
Normal file
23
themes/juice/templates/_macros.html
Normal file
|
@ -0,0 +1,23 @@
|
|||
{% macro render_header() %}
|
||||
{% set section = get_section(path="_index.md") %}
|
||||
<a href="{{ section.permalink | safe }}">
|
||||
<div class="logo">
|
||||
<img src="{{ get_url(path=config.extra.juice_logo_path) }}" alt="logo">
|
||||
{{ config.extra.juice_logo_name }}
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<nav>
|
||||
{% for page in section.pages %}
|
||||
{% set exclude_menu = config.extra.juice_exclude_menu | default(value=[]) %}
|
||||
{% if exclude_menu is not containing(page.title) %}
|
||||
<a class="nav-item subtitle-text" href="{{ page.permalink | safe }}">{{ page.title }}</a>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if config.extra.juice_extra_menu %}
|
||||
{% for menu in config.extra.juice_extra_menu %}
|
||||
<a class="nav-item subtitle-text" href="{{ menu.link | safe }}">{{ menu.title }}</a>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</nav>
|
||||
{% endmacro render_header %}
|
45
themes/juice/templates/_variables.html
Normal file
45
themes/juice/templates/_variables.html
Normal file
|
@ -0,0 +1,45 @@
|
|||
<style>
|
||||
:root {
|
||||
/* Primary theme color */
|
||||
--primary-color: #FED43F;
|
||||
/* Primary theme text color */
|
||||
--primary-text-color: #543631;
|
||||
--primary-text-color-over: #000;
|
||||
/* Primary theme link color */
|
||||
--primary-link-color: #F9BB2D;
|
||||
/* Secondary color: the background body color */
|
||||
--secondary-color: #fcfaf6;
|
||||
--secondary-text-color: #303030;
|
||||
/* Highlight text color of table of content */
|
||||
--toc-highlight-text-color: #d46e13;
|
||||
--toc-background-color: white;
|
||||
--code-color: #4a4a4a;
|
||||
--code-background-color: white;
|
||||
|
||||
--shadow-color: #ddd;
|
||||
|
||||
/* Font used for headers (h1 & h2) */
|
||||
--header-font-family: "Fira Sans", sans-serif;
|
||||
/* Font used for text */
|
||||
--text-font-family: "Fira Sans", sans-serif;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--primary-color: #382929;
|
||||
--primary-text-color: #d7d7d7;
|
||||
--primary-text-color-over: #FFF;
|
||||
--primary-link-color: #9b9b9b;
|
||||
--secondary-color: #282828;
|
||||
--secondary-text-color: #f2f2f2;
|
||||
--toc-highlight-text-color: #f2f2f2;
|
||||
--toc-background-color: #3a3a3a;
|
||||
--code-color: white;
|
||||
--code-background-color: #4a4a4a;
|
||||
|
||||
--shadow-color: #202020;
|
||||
--header-font-family: "Fira Sans", sans-serif;
|
||||
--text-font-family: "Fira Sans", sans-serif;
|
||||
}
|
||||
}
|
||||
</style>
|
144
themes/juice/templates/index.html
Normal file
144
themes/juice/templates/index.html
Normal file
|
@ -0,0 +1,144 @@
|
|||
{% import "_macros.html" as macros %}
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ lang }}">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}{{ config.title }}{% endblock title %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
{% block favicon %}
|
||||
<link rel="icon" type="image/png" href="/favicon.ico">
|
||||
{% endblock favicon %}
|
||||
{% include "_variables.html" %}
|
||||
{% block fonts %}
|
||||
<link href="https://fonts.googleapis.com/css?family=Alfa+Slab+One&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css?family=Fira+Sans:400,500,600&display=swap" rel="stylesheet">
|
||||
{% endblock fonts %}
|
||||
<link rel="stylesheet" href="/normalize.css">
|
||||
<link rel="stylesheet" href="{{ get_url(path="juice.css") }}">
|
||||
{% block head %}
|
||||
{% endblock head %}
|
||||
</head>
|
||||
|
||||
<body>
|
||||
{% block header %}
|
||||
|
||||
<header class="pos-absolute" style="background-color: transparent">
|
||||
{{ macros::render_header() }}
|
||||
</header>
|
||||
|
||||
<div class="hero">
|
||||
{% block hero %}
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
<section class="text-center">
|
||||
<h1 class="heading-text" style="font-size: 50px">
|
||||
Build your static website
|
||||
</h1>
|
||||
<h3 class="title-text">
|
||||
<b>Juice</b> is an intuitive, elegant, and lightweight Zola theme for product websites.
|
||||
</h3>
|
||||
<div>
|
||||
<a class="github-button" href="https://github.com/huhu/juice" data-size="large" data-show-count="true"
|
||||
aria-label="Star huhu/juice on GitHub">Star</a>
|
||||
<a class="github-button" href="https://github.com/huhu/juice/fork" data-size="large"
|
||||
data-show-count="true" aria-label="Fork huhu/juice on GitHub">Fork</a>
|
||||
</div>
|
||||
</section>
|
||||
<img class="hero-image" style="width: 50%" src="{{ get_url(path="juice.svg") }}">
|
||||
|
||||
<div class="explore-more text"
|
||||
onclick="document.getElementById('features').scrollIntoView({behavior: 'smooth'})">
|
||||
Explore More ⇩
|
||||
</div>
|
||||
<style>
|
||||
.hero section {
|
||||
padding: 0 5rem;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.hero section {
|
||||
padding: 0 2rem;
|
||||
}
|
||||
|
||||
.hero-image {
|
||||
display: none
|
||||
}
|
||||
}
|
||||
</style>
|
||||
{% endblock hero %}
|
||||
</div>
|
||||
|
||||
{% endblock header %}
|
||||
|
||||
<main>
|
||||
{% block toc %}
|
||||
{% if section.toc %}
|
||||
{% set toc = section.toc %}
|
||||
{% elif page.toc %}
|
||||
{% set toc = page.toc %}
|
||||
{% endif %}
|
||||
{% if toc %}
|
||||
<div class="toc">
|
||||
<div class="toc-sticky">
|
||||
{% for h in toc %}
|
||||
<div class="toc-item">
|
||||
<a class="subtext" href="{{h.permalink | safe}}">{{ h.title }}</a>
|
||||
</div>
|
||||
{% if h.children %}
|
||||
{% for h2 in h.children %}
|
||||
<div class="toc-item-child">
|
||||
<a class="subtext" href="{{h2.permalink | safe}}"><small>- {{ h2.title }}</small></a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endblock toc %}
|
||||
|
||||
<div class="content text">
|
||||
{% block content %}
|
||||
<div id="features" class="heading-text">Overview</div>
|
||||
{{ section.content | safe }}
|
||||
{% endblock content %}
|
||||
</div>
|
||||
|
||||
{% block sidebar %}
|
||||
{% endblock sidebar %}
|
||||
</main>
|
||||
|
||||
{% block footer %}
|
||||
<footer>
|
||||
<small class="subtext">
|
||||
<a href="https://huhu.io">Huhu.io</a> © 2021
|
||||
</small>
|
||||
</footer>
|
||||
{% endblock footer %}
|
||||
</body>
|
||||
<script>
|
||||
const scrollHandler = entries => {
|
||||
// Find the first entry which intersecting and ratio > 0.9 to highlight.
|
||||
let entry = entries.find(entry => {
|
||||
return entry.isIntersecting && entry.intersectionRatio > 0.9;
|
||||
});
|
||||
if (!entry) return;
|
||||
|
||||
document.querySelectorAll(".toc a").forEach((item) => {
|
||||
item.classList.remove("active");
|
||||
});
|
||||
|
||||
// let url = new URL(`#${entry.target.id}`);
|
||||
let link = document.querySelector(`.toc a[href$="${decodeURIComponent(`#${entry.target.id}`)}"]`)
|
||||
if (link) {
|
||||
link.classList.add("active");
|
||||
link.scrollIntoView({ behavior: "auto", block: "nearest" });
|
||||
}
|
||||
};
|
||||
// Set -100px root margin to improve highlight experience.
|
||||
const observer = new IntersectionObserver(scrollHandler, { threshold: 1 });
|
||||
let items = document.querySelectorAll('h1,h2,h3,h4,h5,h6');
|
||||
items.forEach(item => observer.observe(item));
|
||||
</script>
|
||||
|
||||
</html>
|
15
themes/juice/templates/page.html
Normal file
15
themes/juice/templates/page.html
Normal file
|
@ -0,0 +1,15 @@
|
|||
{% import "_macros.html" as macros %}
|
||||
{% extends "index.html" %}
|
||||
|
||||
{% block title %}{{ page.title }} | {{ super() }} {% endblock title %}
|
||||
|
||||
{% block header %}
|
||||
<header class="box-shadow">
|
||||
{{ macros::render_header() }}
|
||||
</header>
|
||||
{% endblock header %}
|
||||
|
||||
{% block content %}
|
||||
<div class="heading-text">{{ page.description }}</div>
|
||||
{{ page.content | safe }}
|
||||
{% endblock content %}
|
1
themes/juice/templates/shortcodes/issue.html
Normal file
1
themes/juice/templates/shortcodes/issue.html
Normal file
|
@ -0,0 +1 @@
|
|||
<a href="{{ config.extra.repository_url }}/issues/{{ id }}">#{{ id }}</a>
|
12
themes/juice/theme.toml
Normal file
12
themes/juice/theme.toml
Normal file
|
@ -0,0 +1,12 @@
|
|||
name = "juice"
|
||||
description = "An intuitive, elegant, and lightweight Zola theme for product sites."
|
||||
license = "MIT"
|
||||
homepage = "https://github.com/huhu/juice"
|
||||
min_version = "0.11.0"
|
||||
demo = "https://juice.huhu.io"
|
||||
|
||||
[extra]
|
||||
|
||||
[author]
|
||||
name = "Huhu teams"
|
||||
homepage = "https://huhu.io"
|
5
themes/juice/vercel.json
Normal file
5
themes/juice/vercel.json
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"github": {
|
||||
"silent": true
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue