Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
db372c11eb | ||
|
|
6a1da19e73 | ||
|
|
816fd25a6c | ||
|
|
c03bb01bca | ||
|
|
bed189c715 | ||
|
|
80a4bcbcff | ||
|
|
f420383882 | ||
|
|
fac508c7e0 | ||
|
|
64a82747a9 | ||
|
|
5f9e54bbeb | ||
|
|
8d6b33258d | ||
|
|
be84a864fb | ||
|
|
dff34b08e9 | ||
|
|
1e6b7a4fc8 | ||
|
|
eed3018458 | ||
|
|
fa810e6f80 | ||
|
|
b1483e5e78 | ||
|
|
43fea01bd9 | ||
|
|
49169e672d | ||
|
|
140b132c8e | ||
|
|
36008f28d8 | ||
|
|
8fc1bf4bc1 | ||
|
|
2247d3118a | ||
|
|
04531850d5 | ||
|
|
13a58e715d | ||
|
|
b2678783b6 | ||
|
|
da820186f0 | ||
|
|
7bb397dfee | ||
|
|
8a097abf9b | ||
|
|
6d0ebfd881 | ||
|
|
310183a944 | ||
|
|
8fc3479428 | ||
|
|
b2883a30de | ||
|
|
8b40ad0b33 | ||
|
|
74e05ba3a1 | ||
|
|
e77a3946d7 | ||
|
|
bcf04b1a6c | ||
|
|
d8844ab13c | ||
|
|
2e63787b96 | ||
|
|
de19a42b8b | ||
|
|
da07b35a96 | ||
|
|
9694ba4fd1 | ||
|
|
3644760f19 | ||
|
|
b89576ff7d | ||
|
|
d4b4385596 | ||
|
|
b8eb27d276 | ||
|
|
a63b8b372f | ||
|
|
380b7d1bcd | ||
|
|
5f14b9b0ae | ||
|
|
746c51901d | ||
|
|
439e7d4535 | ||
|
|
8abb0005f6 | ||
|
|
c8f4647373 | ||
|
|
5c47073518 | ||
|
|
fd1461cc98 | ||
|
|
a25c167d23 | ||
|
|
e4d42797e6 | ||
|
|
6a394889f6 | ||
|
|
59c18693fa | ||
|
|
0537c4b805 | ||
|
|
6734bfbf7b | ||
|
|
557c2ee6fc | ||
|
|
52c77c5bf5 | ||
|
|
63a2cbb417 | ||
|
|
d2f4be7a44 | ||
|
|
33f967b61b | ||
|
|
3f58247b59 | ||
|
|
45756363bc | ||
|
|
e587eca08f | ||
|
|
a720377f3c | ||
|
|
42819ba362 | ||
|
|
e56e6482b3 | ||
|
|
0d252fabcd | ||
|
|
dedeef7077 | ||
|
|
7bd3f20ad6 | ||
|
|
dc1ffa859d | ||
|
|
c63a427ca3 | ||
|
|
e4a4ec4bff | ||
|
|
7190661360 | ||
|
|
67c38f2f29 | ||
|
|
23e20115da | ||
|
|
5072a13c7c | ||
|
|
9d8a46e847 | ||
|
|
dca2915a7e | ||
|
|
bc02d159f3 | ||
|
|
dc50ebb889 | ||
|
|
e68872ba84 | ||
|
|
4287d14000 | ||
|
|
787396e904 | ||
|
|
e7c8e5418b | ||
|
|
951468006d | ||
|
|
98c2a0863f | ||
|
|
12d3ad44ce | ||
|
|
04eef11fce | ||
|
|
12fce0baa5 | ||
|
|
cd73f3c6bb | ||
|
|
373716269b | ||
|
|
cb861e72a9 | ||
|
|
f2a9f8a938 | ||
|
|
3a0ebdd93b | ||
|
|
0b1b663f98 | ||
|
|
d590dcf4ef | ||
|
|
f2091d0d80 | ||
|
|
9d7bd49338 | ||
|
|
45c766061a | ||
|
|
6142ac3648 | ||
|
|
1b9fa5bc30 | ||
|
|
8d103fa35b | ||
|
|
9d1b096bac | ||
|
|
d83c89df69 | ||
|
|
c03f1a6d9c | ||
|
|
4fc55b3b3c | ||
|
|
6f017cf400 | ||
|
|
b19be5c0a3 | ||
|
|
9920008916 | ||
|
|
68ab7efcd4 | ||
|
|
3693082004 | ||
|
|
dd6bfd73e2 | ||
|
|
fe9f200606 | ||
|
|
3165fe7719 | ||
|
|
a4124abeb2 | ||
|
|
789a7d25ce | ||
|
|
31f94dbc12 | ||
|
|
6bca24a3f5 | ||
|
|
961ee069ed | ||
|
|
b5e3e4e625 | ||
|
|
00a8430a24 | ||
|
|
f79d44156b | ||
|
|
a52425a31d | ||
|
|
45f3095fb1 | ||
|
|
96ae2d3d86 | ||
|
|
6f8a2e4789 | ||
|
|
00c2883235 | ||
|
|
42261d8810 | ||
|
|
7d83f5713a | ||
|
|
e238776bf7 | ||
|
|
37aa266a4d | ||
|
|
85983c91cd | ||
|
|
a8fc7a7029 | ||
|
|
2036d80778 | ||
|
|
46ff55ab49 | ||
|
|
51c84f3cfc | ||
|
|
fe4015fab2 | ||
|
|
22e0c10d07 |
@@ -10,3 +10,4 @@ environments/php7/vendor/
|
||||
*~
|
||||
|
||||
vendor/
|
||||
local/
|
||||
@@ -1,20 +1,41 @@
|
||||
sudo: required
|
||||
|
||||
dist: trusty
|
||||
|
||||
language: go
|
||||
|
||||
go:
|
||||
- 1.8
|
||||
- tip
|
||||
- 1.8
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/google-cloud-sdk/
|
||||
- $HOME/k8scli
|
||||
|
||||
services:
|
||||
- docker
|
||||
|
||||
before_install:
|
||||
- sudo apt-get update
|
||||
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
|
||||
|
||||
install:
|
||||
- go get github.com/Masterminds/glide
|
||||
- curl -L https://github.com/coreos/etcd/releases/download/v3.0.15/etcd-v3.0.15-linux-amd64.tar.gz -o /tmp/etcd-v3.0.15-linux-amd64.tar.gz && mkdir -p /tmp/test-etcd && tar xzvf /tmp/etcd-v3.0.15-linux-amd64.tar.gz -C /tmp/test-etcd --strip-components=1
|
||||
- go get github.com/Masterminds/glide
|
||||
- hack/travis-kube-setup.sh
|
||||
|
||||
env:
|
||||
- KUBECONFIG=${HOME}/.kube/config PATH=$HOME/k8scli:${PATH}
|
||||
|
||||
script:
|
||||
- cd ${TRAVIS_BUILD_DIR}
|
||||
- glide install
|
||||
- ./fission-bundle/build.sh
|
||||
- hack/verify-gofmt.sh
|
||||
- /tmp/test-etcd/etcd &
|
||||
- go test -v -i $(go list ./... | grep -v '/vendor/' | grep -v 'examples/go')
|
||||
- go test -v $(go list ./... | grep -v '/vendor/' | grep -v 'examples/go')
|
||||
- cd ${TRAVIS_BUILD_DIR}
|
||||
- glide install
|
||||
- ./fission-bundle/build.sh
|
||||
- hack/verify-gofmt.sh
|
||||
- hack/runtests.sh
|
||||
- test/build_and_test.sh
|
||||
|
||||
notifications:
|
||||
slack:
|
||||
secure: YZ34vsfw1TtftJypg1MyP4+ihONI4gaxeS3FghBQli6+EezjzcxOXyj5VD+x0ucXfDeTaDrFfmVN0SAGObOoZUE+ea9KAoTo50tRLaD9kwOTACiekZalC4uuBguH0D1/A6vlbU8dchsr9mvIhbisG6mTncdPtqGYYHtyBQme6ngmmHbVAQFZcIBHmNuDb/HWhSr8KMEuyB6+mBXLYELHnXnf26cOhdGNaagqCOJTiemX85RGwIuOPxyBhKDFMLyHohDT7FJMH/qijveE6YgOYTQC5nYc2Np1KvC7hQkIu4nuyczyYlrNQl/TWv+SVI8PjIs0PYuCuD3gUqoVEi8d94HbrOPzFEpbwDS9P4qL39DGmco1Q56Vqxe6sRI0vDWPb5gCP1lSgs3PMECVn7Wor/pTvcL+C+U2jLwWJUl0vbyWCL7ngl/3iTssV7qBpUrI7Oclwp8LrQo9fPj0DL4gE9rNanpEWjQ6yPGaysIL1zLHtRghhm52A22NJGp71jkS2KEpLi6ZWFYjMeuXw5eOQFhqFlzyRJOmLYa3B607TLWuyo2L2CxAfMmq0FGfemvrkLZIWtlQKK4y9ImpsURwaGT2XCtThFtHl77wEss913nC+T2dX3O5Bl0UmxFd5S3mVM109I8c4lDosxnAjRfS9MheFlrG0gjSJSBCw57x7f0=
|
||||
on_success: change
|
||||
on_failure: always
|
||||
|
||||
@@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at soamvasani@platform9.com. All
|
||||
reported by contacting the project team at codeofconduct@platform9.com. All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
|
||||
@@ -38,13 +38,10 @@ minikube and its built-in docker daemon:
|
||||
$ docker build -t minikube/fission-bundle .
|
||||
```
|
||||
|
||||
Next, install fission on your kubernetes cluster:
|
||||
Next, install fission with this image on your kubernetes cluster using the helm chart:
|
||||
|
||||
```
|
||||
# To install, update fission.yaml to point to the image you just made: "minikube/fission-bundle"
|
||||
$ $EDITOR fission.yaml
|
||||
$ kubectl create -f fission.yaml
|
||||
$ kubectl create -f fission-nodeport.yaml
|
||||
$ helm install --set "image=minikube/fission-bundle,pullPolicy=IfNotPresent,analytics=false" charts/fission-all
|
||||
```
|
||||
|
||||
And if you're changing the CLI too, you can build it with:
|
||||
|
||||
@@ -24,7 +24,7 @@ Language-neutral components:
|
||||
|
||||
Language-specific components:
|
||||
|
||||
* Environment container
|
||||
* Environment container(s)
|
||||
|
||||
|
||||
Controller
|
||||
@@ -112,13 +112,13 @@ Environment Container
|
||||
---------------------
|
||||
|
||||
Environment containers run user-defined functions. Environment
|
||||
containers are language specific. They must contain an HTTP server
|
||||
and a loader for functions.
|
||||
containers are language specific. Each environment container must
|
||||
contain an HTTP server and a loader for functions.
|
||||
|
||||
Poolmgr deploys the environment container into a pod with fetcher
|
||||
(fetcher is a simple utility that can fetch an HTTP url to a file at a
|
||||
configured location). This pod forms a "generic pod", because it can
|
||||
be loaded with any function.
|
||||
be loaded with any function in that language.
|
||||
|
||||
When poolmgr needs to create a service for a function, it calls
|
||||
fetcher to fetch the function. Fetcher downloads the function into a
|
||||
@@ -134,7 +134,7 @@ Following is a diagram describe how log service works:
|
||||
|
||||

|
||||
|
||||
1. Pool manager choose a pod from pool to execute user function
|
||||
1. Pool manager chooses a pod from the pool to execute user function
|
||||
2. Pool manager makes a HTTP POST to logger helper, once helper receives
|
||||
the request it creates a symlink to container log for fluentd.
|
||||
3. Fluentd reads log from symlink and pipes to influxdb
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
## Fission API ([area-api](https://github.com/fission/fission/labels/area-api))
|
||||
|
||||
- TPR-based controller
|
||||
- CRD-based controller
|
||||
- API authentication
|
||||
- Aggregated API server
|
||||
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
baseURL = "http://fission.io/docs/0.3.0"
|
||||
languageCode = "en-us"
|
||||
title = "Fission: Serverless Functions for Kubernetes"
|
||||
theme = "docdock"
|
||||
@@ -0,0 +1 @@
|
||||

|
||||
@@ -0,0 +1,6 @@
|
||||
## Fission Documentation
|
||||
|
||||
* [Installation guide](install)
|
||||
|
||||
* [Upgrade guide for v0.3 to v0.4](upgrade-from-v0.3)
|
||||
|
||||
@@ -0,0 +1,180 @@
|
||||
---
|
||||
title: "Fission Installation Guide"
|
||||
date: 2017-09-07T20:10:05-07:00
|
||||
draft: false
|
||||
---
|
||||
|
||||
Welcome! This guide will get you up and running with Fission on a
|
||||
Kubernetes cluster.
|
||||
|
||||
### Cluster preliminaries
|
||||
|
||||
If you don't have a Kubernetes cluster, [here's a quick guide to set
|
||||
one up](../kubernetessetup).
|
||||
|
||||
Let's ensure you have the Kubernetes CLI and Helm installed and
|
||||
ready. If you already have helm, [skip ahead to the fission install](#install-fission).
|
||||
|
||||
#### Kubernetes CLI
|
||||
|
||||
Ensure you have the Kubernetes CLI.
|
||||
|
||||
You can get the Kubernetes CLI for OSX like this:
|
||||
```
|
||||
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin
|
||||
```
|
||||
|
||||
Or, for Linux:
|
||||
```
|
||||
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin
|
||||
```
|
||||
|
||||
Ensure you have access to a cluster; use kubectl to check your
|
||||
Kubernetes version:
|
||||
|
||||
```
|
||||
$ kubectl version
|
||||
```
|
||||
|
||||
We need at least Kubernetes 1.6 (older versions may work, but we don't
|
||||
test them).
|
||||
|
||||
#### Helm
|
||||
|
||||
Helm is an installer for Kubernetes. If you already use helm, [skip to
|
||||
the next section](#install-fission).
|
||||
|
||||
First, you'll need the helm CLI:
|
||||
|
||||
On __OS X__:
|
||||
```
|
||||
$ curl -LO https://storage.googleapis.com/kubernetes-helm/helm-v2.7.0-darwin-amd64.tar.gz
|
||||
|
||||
$ tar xzf helm-v2.7.0-darwin-amd64.tar.gz
|
||||
|
||||
$ mv darwin-amd64/helm /usr/local/bin
|
||||
```
|
||||
|
||||
On __Linux__:
|
||||
```
|
||||
$ curl -LO https://storage.googleapis.com/kubernetes-helm/helm-v2.7.0-linux-amd64.tar.gz
|
||||
|
||||
$ tar xzf helm-v2.7.0-linux-amd64.tar.gz
|
||||
|
||||
$ mv linux-amd64/helm /usr/local/bin
|
||||
```
|
||||
|
||||
Next, install the Helm server on your Kubernetes cluster:
|
||||
|
||||
```
|
||||
$ helm init
|
||||
```
|
||||
|
||||
### Install Fission
|
||||
|
||||
#### Minikube
|
||||
|
||||
```
|
||||
$ helm install --namespace fission --set serviceType=NodePort https://github.com/fission/fission/releases/download/0.4.1/fission-all-0.4.1.tgz
|
||||
```
|
||||
|
||||
The serviceType variable allows configuring the type of Kubernetes
|
||||
service outside the cluster. You can use `ClusterIP` if you don't
|
||||
want to expose anything outside the cluster.
|
||||
|
||||
#### Cloud hosted clusters (GKE, AWS, Azure etc.)
|
||||
|
||||
```
|
||||
$ helm install --namespace fission https://github.com/fission/fission/releases/download/0.4.1/fission-all-0.4.1.tgz
|
||||
```
|
||||
|
||||
#### Minimal version
|
||||
|
||||
The fission-all helm chart installs a full set of services including
|
||||
the NATS message queue, influxDB for logs, etc. If you want a more
|
||||
minimal setup, you can install the fission-core chart instead:
|
||||
|
||||
```
|
||||
$ helm install --namespace fission https://github.com/fission/fission/releases/download/0.4.1/fission-core-0.4.1.tgz
|
||||
```
|
||||
|
||||
### Install the Fission CLI
|
||||
|
||||
#### OS X
|
||||
|
||||
Get the CLI binary for Mac:
|
||||
|
||||
```
|
||||
$ curl -Lo fission https://github.com/fission/fission/releases/download/0.4.1/fission-cli-osx && chmod +x fission && sudo mv fission /usr/local/bin/
|
||||
```
|
||||
|
||||
#### Linux
|
||||
|
||||
```
|
||||
$ curl -Lo fission https://github.com/fission/fission/releases/download/0.4.1/fission-cli-linux && chmod +x fission && sudo mv fission /usr/local/bin/
|
||||
```
|
||||
|
||||
#### Windows
|
||||
|
||||
For Windows, you can use the linux binary on WSL. Or you can download
|
||||
this windows executable: [fission.exe](https://github.com/fission/fission/releases/download/0.4.1/fission-cli-windows.exe)
|
||||
|
||||
### Set environment vars
|
||||
|
||||
Set the FISSION_URL and FISSION_ROUTER environment variables.
|
||||
FISSION_URL is used by the fission CLI to find the server.
|
||||
(FISSION_ROUTER is only needed for the examples below to work.)
|
||||
|
||||
#### Minikube
|
||||
|
||||
If you're using minikube, use these commands:
|
||||
|
||||
```
|
||||
$ export FISSION_URL=http://$(minikube ip):31313
|
||||
$ export FISSION_ROUTER=$(minikube ip):31314
|
||||
```
|
||||
#### Cloud setups
|
||||
|
||||
Save the external IP addresses of controller and router services in
|
||||
FISSION_URL and FISSION_ROUTER, respectively. Wait for services to
|
||||
get IP addresses (check this with ```kubectl --namespace fission get
|
||||
svc```). Then:
|
||||
|
||||
##### AWS
|
||||
```
|
||||
$ export FISSION_URL=http://$(kubectl --namespace fission get svc controller -o=jsonpath='{..hostname}')
|
||||
$ export FISSION_ROUTER=$(kubectl --namespace fission get svc router -o=jsonpath='{..hostname}')
|
||||
```
|
||||
|
||||
##### GCP
|
||||
```
|
||||
$ export FISSION_URL=http://$(kubectl --namespace fission get svc controller -o=jsonpath='{..ip}')
|
||||
$ export FISSION_ROUTER=$(kubectl --namespace fission get svc router -o=jsonpath='{..ip}')
|
||||
```
|
||||
|
||||
### Run an example
|
||||
|
||||
Finally, you're ready to use Fission!
|
||||
|
||||
```
|
||||
$ fission env create --name nodejs --image fission/node-env:0.4.1
|
||||
|
||||
$ curl -LO https://raw.githubusercontent.com/fission/fission/master/examples/nodejs/hello.js
|
||||
|
||||
$ fission function create --name hello --env nodejs --code hello.js
|
||||
|
||||
$ fission route create --method GET --url /hello --function hello
|
||||
|
||||
$ curl http://$FISSION_ROUTER/hello
|
||||
Hello, world!
|
||||
```
|
||||
|
||||
### What's next?
|
||||
|
||||
If something went wrong, we'd love to help -- please [drop by the
|
||||
slack channel](http://slack.fission.io) and ask for help.
|
||||
|
||||
Check out the
|
||||
[examples](https://github.com/fission/fission/tree/master/examples)
|
||||
for some example functions.
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
---
|
||||
title: "Kubernetes Quick Install"
|
||||
date: 2017-09-07T20:10:05-07:00
|
||||
draft: false
|
||||
---
|
||||
|
||||
This is a quick guide to help you get started running Kubernetes on
|
||||
your laptop (or on the cloud).
|
||||
|
||||
(This isn't meant as a production Kuberenetes guide; it's merely
|
||||
intended to give you something quickly so you can try Fission on it.)
|
||||
|
||||
## Minikube
|
||||
|
||||
Minikube is the usual way to run Kubernetes on your laptop:
|
||||
|
||||
### Install and start Kubernetes on OSX:
|
||||
|
||||
```
|
||||
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin
|
||||
|
||||
$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.16.0/minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
|
||||
|
||||
$ minikube start
|
||||
```
|
||||
|
||||
### Or, install and start Kubernetes on Linux:
|
||||
|
||||
```
|
||||
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin
|
||||
|
||||
$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.16.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
|
||||
|
||||
$ minikube start
|
||||
```
|
||||
|
||||
## Google Container Engine
|
||||
|
||||
Alternatively, you can use [Google Container Engine's](https://cloud.google.com/container-engine/) free trial to
|
||||
get a 3-node cluster. Hop over to [Google Cloud](https://cloud.google.com/container-engine/) to set that up.
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
---
|
||||
title: "Upgrading from Fission v0.1 to v0.2.x"
|
||||
date: 2017-09-08T16:26:29-07:00
|
||||
draft: false
|
||||
---
|
||||
|
||||
## TL;DR
|
||||
|
||||
The Fission API has changed significantly in this version. The new API is incompatible with the
|
||||
old one. The CLI is compatible; if you wrote scripts using it, those should still work.
|
||||
|
||||
Below we describe a tool for migrating your state from your old install to the new one.
|
||||
|
||||
While this upgrade is going to be disruptive, we're going to do our best to make sure future
|
||||
upgrades aren't as bad.
|
||||
|
||||
## Why is this so complicated?
|
||||
|
||||
For a couple of reasons, we wanted to switch to using Kubernetes resources (ThirdPartyResources
|
||||
now, CustomResources in the next release) for storing Fission state: (a) it would allow users to
|
||||
avoid management of another database and (b) Fission would fit better into the Kubernetes
|
||||
ecosystem.
|
||||
|
||||
Concurrently with this change, we were also trying to make our versioning approach less
|
||||
opinionated, so it would work with other tools.
|
||||
|
||||
Thirdly, we were also enabling build pipelines (v2 Environments).
|
||||
|
||||
These changes, especially the difference in versioning approach, made maintaining compatiblity not
|
||||
worth the effort at this early stage of the project.
|
||||
|
||||
All that said, we want you to know that we care a lot about compatiblity, and we'll be more
|
||||
rigorous about it from the beta release onwards.
|
||||
|
||||
## How to Upgrade
|
||||
|
||||
1. Get the v0.2.1 CLI
|
||||
1. Get the Fission state from your old install
|
||||
1. Install Fission v0.2.1
|
||||
1. Restore Fission state into your new install
|
||||
1. Destroy your old install
|
||||
|
||||
### Get the new CLI
|
||||
|
||||
#### OS X
|
||||
|
||||
```
|
||||
$ curl -Lo fission https://github.com/fission/fission/releases/download/v0.2.1-rc/fission-cli-osx && chmod +x fission && sudo mv fission /usr/local/bin/
|
||||
```
|
||||
|
||||
#### Linux
|
||||
|
||||
```
|
||||
$ curl -Lo fission https://github.com/fission/fission/releases/download/v0.2.1-rc/fission-cli-linux && chmod +x fission && sudo mv fission /usr/local/bin/
|
||||
```
|
||||
|
||||
#### Windows
|
||||
|
||||
For Windows, you can use the linux binary on WSL. Or you can download
|
||||
this windows executable: [fission.exe](https://github.com/fission/fission/releases/download/v0.2.1-rc/fission-cli-windows.exe)
|
||||
|
||||
### Get Fission state from v0.1 install
|
||||
|
||||
```
|
||||
fission --server <your V1 server> upgrade dump --file state.json
|
||||
```
|
||||
|
||||
You can skip the --server argument if you have the environment
|
||||
variable `$FISSION_URL` set to point at a v0.1 Fission server.
|
||||
|
||||
This will create a JSON file with all your fission state in the
|
||||
current directory.
|
||||
|
||||
### Install the new version
|
||||
|
||||
Read the [install guide](../install). You can follow all of it, except that you will need to
|
||||
ensure your two installs don't conflict. To do that, use separate namespaces and ensure nodeports
|
||||
don't conflict. Install with a command similar to this:
|
||||
|
||||
```
|
||||
helm install fission-all --namespace fission2 --set controllerPort=31303,routerPort=31304,natsStreamingPort=31305,functionNamespace=fission2-function
|
||||
```
|
||||
|
||||
This installs fission in the `fission2` namespace and runs functions
|
||||
in the `fission2-function` namespace.
|
||||
|
||||
### Restore your Fission state into Fission v0.2.1
|
||||
|
||||
```
|
||||
fission upgrade restore --file state.json
|
||||
```
|
||||
|
||||
This commands needs $FISSION_URL set to point to new fission installation.
|
||||
|
||||
It uses the file created in the first step. It doesn't modify state.json.
|
||||
|
||||
(Note that you can run this restore on any cluster; it doesn't have the be the same kubernetes
|
||||
cluster as your old install.)
|
||||
|
||||
### Verify
|
||||
|
||||
How exactly you do this is up to you! But, at a minimum, run `fission
|
||||
fn list` to check that all the functions you expect are there.
|
||||
|
||||
### Switch over
|
||||
|
||||
If you had exposed fission's router to the outside world, switch over to using the new install's router.
|
||||
|
||||
### Destroy your old install
|
||||
|
||||
Once you're no longer using the old install, you can destroy it by
|
||||
deleting the namespaces that was installed in.
|
||||
|
||||
```
|
||||
kubectl delete namespace fission fission-function
|
||||
```
|
||||
|
||||
@@ -0,0 +1,131 @@
|
||||
---
|
||||
title: "Upgrading from Fission v0.3 to v0.4.x"
|
||||
date: 2017-11-04T03:38:29+08:00
|
||||
draft: false
|
||||
---
|
||||
|
||||
## Introduction
|
||||
|
||||
Kubernetes ThirdPartyResources ("TPR") are replaced by
|
||||
CustomResourceDefinitions ("CRD"). TPRs have been deprecated and are
|
||||
removed in Kubernetes 1.8.
|
||||
|
||||
Since Fission stores state in TPRs, we need to migrate this state from
|
||||
TPRs to CRDs while upgrading.
|
||||
|
||||
Follow the instructions below if you're upgrading a Fission 0.2.1 or
|
||||
0.3.0 cluster to 0.4. If you're using a pre-0.2 Fission cluster, use
|
||||
the [upgrade guide from 0.1 to 0.2]() and then upgrade to 0.4.0.
|
||||
|
||||
## How to Upgrade
|
||||
|
||||
1. Get the 0.4.0 CLI
|
||||
2. Get the Fission state from v0.3 install
|
||||
3. Upgrade to Fission 0.4.0
|
||||
4. Upgrade Kubernetes cluster version to 1.7.x or higher
|
||||
5. Remove all TPR definition (for Kubernetes 1.7.x)
|
||||
6. Restore Fission state into CRDs
|
||||
|
||||
### Get the new CLI
|
||||
|
||||
#### OS X
|
||||
|
||||
```
|
||||
$ curl -Lo fission https://github.com/fission/fission/releases/download/0.4.0/fission-cli-osx && chmod +x fission && sudo mv fission /usr/local/bin/
|
||||
```
|
||||
|
||||
#### Linux
|
||||
|
||||
```
|
||||
$ curl -Lo fission https://github.com/fission/fission/releases/download/0.4.0/fission-cli-linux && chmod +x fission && sudo mv fission /usr/local/bin/
|
||||
```
|
||||
|
||||
#### Windows
|
||||
|
||||
For Windows, you can use the linux binary on WSL. Or you can download
|
||||
this windows executable: [fission.exe](https://github.com/fission/fission/releases/download/0.4.0/fission-cli-windows.exe)
|
||||
|
||||
### Get Fission state from v0.3 install
|
||||
|
||||
```
|
||||
fission --server <your v0.3 server> tpr2crd dump --file state.json
|
||||
```
|
||||
|
||||
You can skip the --server argument if you have the environment
|
||||
variable `$FISSION_URL` set to point at a v0.3 Fission server.
|
||||
|
||||
This will create a JSON file with all your fission state in the
|
||||
current directory.
|
||||
|
||||
### Upgrade to Fission 0.4.0
|
||||
|
||||
Upgrade fission with a command similar to this:
|
||||
|
||||
```
|
||||
helm upgrade fission-all --namespace fission
|
||||
```
|
||||
|
||||
### Upgrade Kubernetes cluster version
|
||||
|
||||
Since CustomResource is only supported on Kubernetes v1.7+ and higher, please make sure
|
||||
that you upgrade to the right version that supports CustomResource.
|
||||
|
||||
### Remove all TPR definition (for Kubernetes 1.7.x)
|
||||
|
||||
** NOTICE **: This step will remove TPR definition from your kubernetes cluster. Please make sure that you dump all TPRs at the second step!
|
||||
|
||||
Though Kubernetes will migrate TPRs to CRDs automatically when TPR definition is deleted if the same name CRD exists. We still need to make sure that there is no resource gets lost during the migration. Also, since we changed the capitalization of some CRDs to CamelCase (e.g. Httptrigger -> HTTPTrigger), we need to recreate those resources by ourselves.
|
||||
|
||||
```
|
||||
fission tpr2crd delete
|
||||
```
|
||||
|
||||
### Restore your Fission state into Fission 0.4.0
|
||||
|
||||
```
|
||||
fission tpr2crd restore --file state.json
|
||||
```
|
||||
|
||||
This commands needs `$FISSION_URL` set to point to new fission installation.
|
||||
|
||||
It uses the file created in the first step. It doesn't modify state.json.
|
||||
|
||||
(Note that you can run this restore on any cluster; it doesn't have the be the same kubernetes
|
||||
cluster as your old install.)
|
||||
|
||||
### Verify
|
||||
|
||||
Let's check the migration result, first run following command to check CRD established state.
|
||||
|
||||
```
|
||||
kubectl get crd -o 'custom-columns=NAME:{.metadata.name},ESTABLISHED:{.status.conditions[?(@.type=="Established")].status}'
|
||||
```
|
||||
|
||||
The output should be like this
|
||||
|
||||
```
|
||||
NAME ESTABLISHED
|
||||
environments.fission.io True
|
||||
functions.fission.io True
|
||||
httptriggers.fission.io True
|
||||
kuberneteswatchtriggers.fission.io True
|
||||
messagequeuetriggers.fission.io True
|
||||
packages.fission.io True
|
||||
timetriggers.fission.io True
|
||||
```
|
||||
|
||||
And check that CRD resources you expect are there.
|
||||
|
||||
```
|
||||
COMMAND:
|
||||
fission [resource] list
|
||||
|
||||
RESOURCES:
|
||||
environments
|
||||
functions
|
||||
httptriggers
|
||||
kuberneteswatchtriggers
|
||||
messagequeuetriggers
|
||||
packages
|
||||
timetriggers
|
||||
```
|
||||
@@ -0,0 +1,2 @@
|
||||
.DS_Store
|
||||
public/
|
||||
@@ -0,0 +1,22 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2014 Grav
|
||||
Copyright (c) 2016 MATHIEU CORNIC
|
||||
Copyright (c) 2017 Valere JEANTET
|
||||
|
||||
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.
|
||||
@@ -0,0 +1,34 @@
|
||||
# Hugo docDock Theme
|
||||
|
||||
This repository contains a theme for [Hugo](https://gohugo.io/), based on great [Matcornic Learn theme](https://github.com/matcornic/hugo-theme-learn/).
|
||||
|
||||
Visit the [theme documentation](http://docdock.netlify.com/) to see what is going on. It is actually built with this theme.
|
||||
|
||||
# Main features
|
||||
|
||||
- Search
|
||||
- **Unlimited menu levels**
|
||||
- RevealJS presentation from markdown (embededed or fullscreen page)
|
||||
- Attachments files
|
||||
- List child pages
|
||||
- Include segment of content from one page in another (Excerpt)
|
||||
- Automatic next/prev buttons to navigate through menu entries
|
||||
- Mermaid diagram
|
||||
- Icons, Buttons, Alerts, Panels, Tip/Note/Info/Warning boxes
|
||||
- Image resizing, shadow...
|
||||
- Customizable look and feel
|
||||
|
||||
## Installation
|
||||
Navigate to your themes folder in your Hugo site and use the following commands:
|
||||
```
|
||||
$ cd themes
|
||||
$ git clone https://github.com/vjeantet/hugo-theme-docdock.git docdock
|
||||
```
|
||||
|
||||
Check that your Hugo version is minimum `0.25` with `hugo version`.
|
||||
|
||||

|
||||
|
||||
## Usage
|
||||
|
||||
- [Visit the documentation](http://docdock.netlify.com/)
|
||||
@@ -0,0 +1,9 @@
|
||||
+++
|
||||
title= "{{ replace .TranslationBaseName "-" " " | title }}"
|
||||
date= {{ .Date }}
|
||||
description = ""
|
||||
draft= true
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
||||
Notice `draft` is set to true.
|
||||
@@ -0,0 +1,46 @@
|
||||
+++
|
||||
title = "Slide title"
|
||||
type="slide"
|
||||
|
||||
theme = "league"
|
||||
[revealOptions]
|
||||
transition= 'concave'
|
||||
controls= true
|
||||
progress= true
|
||||
history= true
|
||||
center= true
|
||||
+++
|
||||
|
||||
# Slide 1
|
||||
|
||||
___
|
||||
|
||||
## Slide 1.1
|
||||
|
||||
- Turn off alarm
|
||||
- Get out of bed
|
||||
|
||||
___
|
||||
|
||||
## Slide 1.2
|
||||
|
||||
- Eat eggs
|
||||
- Drink coffee
|
||||
|
||||
---
|
||||
|
||||
# Slide 2
|
||||
|
||||
___
|
||||
|
||||
## Slide 2.1
|
||||
|
||||
- Eat spaghetti
|
||||
- Drink wine
|
||||
|
||||
___
|
||||
|
||||
## Slide 2.2
|
||||
|
||||
- Get in bed
|
||||
- Count sheep
|
||||
@@ -0,0 +1,43 @@
|
||||
baseURL = "/"
|
||||
languageCode = "en-us"
|
||||
DefaultContentLanguage = "en"
|
||||
|
||||
title = "Docdock"
|
||||
theme = "hugo-theme-docdock"
|
||||
themesdir = "../.."
|
||||
|
||||
[params]
|
||||
editURL = "https://github.com/vjeantet/hugo-theme-docdock/edit/master/exampleSite/content/"
|
||||
noHomeIcon = false # default is false
|
||||
noSearch = false # default is false
|
||||
showVisitedLinks = true # default is false
|
||||
# themeStyle = "theme" # overide base css
|
||||
themeVariant = "" # choose theme variant "green", "gold" , "gray", "blue" (default)
|
||||
ordersectionsby = "weight" # ordersectionsby = "title"
|
||||
|
||||
[outputs]
|
||||
home = [ "HTML", "RSS", "JSON"]
|
||||
|
||||
|
||||
[[menu.shortcuts]]
|
||||
pre = "<h3>More</h3>"
|
||||
name = "<i class='fa fa-github'></i> Github repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/vjeantet/hugo-theme-docdock"
|
||||
weight = 10
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fa fa-camera'></i> Showcases"
|
||||
url = "/showcase"
|
||||
weight = 11
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fa fa-bookmark'></i> Hugo Documentation"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 20
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fa fa-bullhorn'></i> Credits"
|
||||
url = "/credits"
|
||||
weight = 30
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "header"
|
||||
description = ""
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
+++
|
||||
DocDock Documentation
|
||||
@@ -0,0 +1,47 @@
|
||||
+++
|
||||
title = "DocDock Theme for Hugo"
|
||||
description = ""
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
|
||||
+++
|
||||
|
||||
# Hugo docDock theme
|
||||
[Hugo-theme-docdock {{%icon fa-github%}}](https://github.com/vjeantet/hugo-theme-docdock) is a theme for Hugo, a fast and modern static website engine written in Go. Hugo is often used for blogs, **this theme is fully designed for documentation.**
|
||||
|
||||
This theme is a partial porting of the [Learn theme of matcornic {{%icon fa-github%}}](https://github.com/matcornic/hugo-theme-learn).
|
||||
|
||||
{{%panel%}}docDock works with a "page tree structure" to organize content : All contents are pages, which belong to other pages. [read more about this]({{%relref "content-organisation/_index.md"%}}) {{%/panel%}}
|
||||
|
||||
## Main features
|
||||
|
||||
* [Search]({{%relref "search/_index.md" %}})
|
||||
* **Unlimited menu levels**
|
||||
* [Generate RevealJS presentation]({{%relref "page-slide.md"%}}) from markdown (embededed or fullscreen page)
|
||||
* Automatic next/prev buttons to navigate through menu entries
|
||||
* [Image resizing, shadow...]({{%relref "create-page/page-images.md" %}})
|
||||
* [Attachments files]({{%relref "shortcodes/attachments.md" %}})
|
||||
* [List child pages]({{%relref "shortcodes/children/_index.md" %}})
|
||||
* [Excerpt]({{%relref "shortcodes/excerpt.md"%}}) ! Include segment of content from one page in another
|
||||
* [Mermaid diagram]({{%relref "shortcodes/mermaid.md" %}}) (flowchart, sequence, gantt)
|
||||
* [Icons]({{%relref "shortcodes/icon.md" %}}), [Buttons]({{%relref "shortcodes/button.md" %}}), [Alerts]({{%relref "shortcodes/alert.md" %}}), [Panels]({{%relref "shortcodes/panel.md" %}}), [Tip/Note/Info/Warning boxes]({{%relref "shortcodes/notice.md" %}}), [Expand]({{%relref "shortcodes/expand.md" %}})
|
||||
* [customizable look and feel]({{%relref "content-organisation/customize-style/_index.md"%}}), [theme variants]({{%relref "content-organisation/customize-style/theme-variants.md"%}})
|
||||
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
## Contribute to this documentation
|
||||
Feel free to update this content, just click the **Edit this page** link displayed on top right of each page, and pullrequest it
|
||||
{{%alert%}}Your modification will be deployed automatically when merged.{{%/alert%}}
|
||||
|
||||
|
||||
## Documentation website
|
||||
This current documentation has been statically generated with Hugo with a simple command : `hugo -t docdock` -- source code is [available here at GitHub {{%icon fa-github%}}](https://github.com/vjeantet/hugo-theme-docDock)
|
||||
|
||||
{{% panel theme="success" header="Automated deployments" footer="Netlify builds, deploys, and hosts frontends." %}}
|
||||
Automatically published and hosted thanks to [Netlify](https://www.netlify.com/).
|
||||
|
||||
Read more about [Automated HUGO deployments with Netlify](https://www.netlify.com/blog/2015/07/30/hosting-hugo-on-netlifyinsanely-fast-deploys/)
|
||||
{{% /panel %}}
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
+++
|
||||
title = "Content Organisation"
|
||||
description = ""
|
||||
weight = 20
|
||||
+++
|
||||
|
||||
With **Hugo**, pages are the core of your site. Organize your site like any other Hugo project. **Magic occurs with the nested sections implemention done in v0.22 of hugo (congrats @bep)**.
|
||||
|
||||
With docdock, **Each content page composes the menu**, they shape the structure of your website.
|
||||
|
||||
To link pages to each other, place them in a folders hierarchy
|
||||
|
||||
```
|
||||
content
|
||||
├── level-one
|
||||
│ ├── level-two
|
||||
│ │ ├── level-three
|
||||
│ │ │ ├── level-four
|
||||
│ │ │ │ ├── _index.md
|
||||
│ │ │ │ ├── page-4-a.md
|
||||
│ │ │ │ ├── page-4-b.md
|
||||
│ │ │ │ └── page-4-c.md
|
||||
│ │ │ ├── _index.md
|
||||
│ │ │ ├── page-3-a.md
|
||||
│ │ │ ├── page-3-b.md
|
||||
│ │ │ └── page-3-c.md
|
||||
│ │ ├── _index.md
|
||||
│ │ ├── page-2-a.md
|
||||
│ │ ├── page-2-b.md
|
||||
│ │ └── page-2-c.md
|
||||
│ ├── _index.md
|
||||
│ ├── page-1-a.md
|
||||
│ ├── page-1-b.md
|
||||
│ └── page-1-c.md
|
||||
├── _index.md
|
||||
└── page-top.md
|
||||
```
|
||||
|
||||
|
||||
{{%alert info %}} **_index.md** is required in each folder, it's your "folder home page"{{%/alert%}}
|
||||
|
||||
### Add header to a menu entry
|
||||
|
||||
in the page frontmatter, add a `head` param to insert any HTML code before the menu entry:
|
||||
|
||||
example to display a "Hello"
|
||||
|
||||
+++
|
||||
title = "Github repo"
|
||||
head ="<label>Hello</label> "
|
||||
+++
|
||||
|
||||
|
||||
|
||||
### Add icon to a menu entry
|
||||
|
||||
in the page frontmatter, add a `pre` param to insert any HTML code before the menu label:
|
||||
|
||||
example to display a github icon
|
||||
|
||||
+++
|
||||
title = "Github repo"
|
||||
pre ="<i class='fa fa-github'></i> "
|
||||
+++
|
||||
|
||||

|
||||
|
||||
<!-- ### Customize menu entry label
|
||||
|
||||
Add a `name` param next to `[menu.main]`
|
||||
|
||||
+++
|
||||
[menu.main]
|
||||
parent = ""
|
||||
identifier = "repo"
|
||||
pre ="<i class='fa fa-github'></i> "
|
||||
name = "Github repo"
|
||||
+++ -->
|
||||
|
||||
<!-- ### Create a page redirector
|
||||
Add a `url` param next to `[menu.main]`
|
||||
|
||||
+++
|
||||
[menu.main]
|
||||
parent = "page"
|
||||
identifier = "page-images"
|
||||
weight = 23
|
||||
url = "/shortcode/image/"
|
||||
+++
|
||||
|
||||
{{%alert info%}}Look at the menu "Create Page/About images" which redirects to "Shortcodes/image{{%/alert%}}
|
||||
-->
|
||||
### Order sibling menu/page entries
|
||||
|
||||
in your frontmatter add `weight` param with a number to order.
|
||||
|
||||
+++
|
||||
title="My page"
|
||||
weight = 4
|
||||
+++
|
||||
|
||||
{{%info%}}add `ordersectionsby = "title"` in your config.toml to order menu entries by title{{%/info%}}
|
||||
|
||||
|
||||
### Hide a menu entry
|
||||
|
||||
in your frontmatter add `hidden=true` param.
|
||||
|
||||
+++
|
||||
title="My page"
|
||||
hidden = true
|
||||
+++
|
||||
|
||||
|
||||
### Unfolded menu entry by default
|
||||
|
||||
One or more menuentries can be displayed unfolded by default. (like the "Getting start" menu entry in this website)
|
||||
|
||||
in your frontmatter add `alwaysopen=true` param.
|
||||
example :
|
||||
|
||||
```
|
||||
title = "Getting start"
|
||||
description = ""
|
||||
weight = 1
|
||||
alwaysopen = true
|
||||
```
|
||||
|
||||
### Folder structure and file name
|
||||
|
||||
Content organization **is** your `content` folder structure.
|
||||
|
||||
### Homepage
|
||||
|
||||
Find out how to [customize homepage]({{%relref "homepage.md"%}})
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
+++
|
||||
title = "Customize website look and feel"
|
||||
Weight=3
|
||||
+++
|
||||
|
||||
You can change the style and behavior of the theme without touching it.
|
||||
|
||||
* inject your own html, css or js into the page
|
||||
* overide existing css or js with your own files
|
||||
|
||||
## Inject your HTML
|
||||
|
||||
### into the \<head\> part of each page :
|
||||
|
||||
Create a `custom-head.html` into a `layouts/partials` folder next to the content folder
|
||||
|
||||
> * content/
|
||||
> * layouts/
|
||||
> * partials/
|
||||
> * custom-head.html
|
||||
|
||||
now feel free to add the JS, CSS, HTML code you want :)
|
||||
|
||||
### at the end of the body part of each page :
|
||||
|
||||
Create a `custom-footer.html` into a `layouts/partials` folder next to the content folder
|
||||
|
||||
> * content/
|
||||
> * layouts/
|
||||
> * partials/
|
||||
> * custom-footer.html
|
||||
|
||||
now feel free to add the JS, CSS, HTML code you want :)
|
||||
|
||||
## overide existing CSS or JS
|
||||
|
||||
Create the matching file in your static folder, hugo will use yours instead of the theme's one.
|
||||
Example :
|
||||
|
||||
create a theme.css and place it into `static/css/` to fully overide docdock's theme.css
|
||||
@@ -0,0 +1,35 @@
|
||||
+++
|
||||
title = "Theme variants"
|
||||
description = "change theme style/colors"
|
||||
+++
|
||||
|
||||
In site configuration file, you can set a variant name of this theme to load a specific css, with different color specifications.
|
||||
|
||||
add a param `themeVariant = "VARIANT_NAME"` in the `[params]` part of config.toml file.
|
||||
|
||||
{{%info%}}Available variants change only colors at this moment{{%/info%}}
|
||||
|
||||
|
||||
## Variant "gray"
|
||||
```
|
||||
[params]
|
||||
themeVariant = "gray"
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Variant "gold"
|
||||
```
|
||||
[params]
|
||||
themeVariant = "gold"
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Variant "green"
|
||||
```
|
||||
[params]
|
||||
themeVariant = "green"`
|
||||
```
|
||||
|
||||

|
||||
@@ -0,0 +1,28 @@
|
||||
+++
|
||||
title = "Extra menu entries"
|
||||
date = "2017-04-29T18:36:24+02:00"
|
||||
Weight=2
|
||||
+++
|
||||
|
||||
You can define additional menu entries in the navigation menu without any link to content.
|
||||
|
||||
Edit the website configuration `config.toml` and add a `[[menu.shortcuts]]` entry for each link your want to add.
|
||||
|
||||
|
||||
Example from the current website, **note the `pre` param** which allows you to insert HTML code and used here to separate content's menu from this "static" menu
|
||||
|
||||
[[menu.shortcuts]]
|
||||
pre = "<h3>More</h3>"
|
||||
name = "<i class='fa fa-github'></i> Github repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/vjeantet/hugo-theme-docdock"
|
||||
weight = 1
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fa fa-bookmark'></i> Hugo Documentation"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 2
|
||||
|
||||
|
||||
[{{%icon circle-arrow-right%}} Read more about hugo and menu here](https://gohugo.io/extras/menus/)
|
||||
@@ -0,0 +1,12 @@
|
||||
+++
|
||||
title = "Logo placeholder"
|
||||
description = ""
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
Weight=1
|
||||
+++
|
||||
|
||||
Create a `_header.md` page in content folder. Its content is what you get in the logo placeholder (top left of the screen).
|
||||
|
||||
{{%alert info%}}**Tip :** you can add a image, a combobox with links to other documentation....{{%/alert%}}
|
||||
|
||||
{{%alert info%}}**Tip 2 :** look at [ extra static menu]({{%relref "extramenu.md"%}}) if you want to add links to other website in this sidebar{{%/alert%}}
|
||||
@@ -0,0 +1,54 @@
|
||||
+++
|
||||
title = "Create Page"
|
||||
description = ""
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
creatordisplayname = "Valere JEANTET"
|
||||
creatoremail = "valere.jeantet@gmail.com"
|
||||
lastmodifierdisplayname = "Valere JEANTET"
|
||||
lastmodifieremail = "valere.jeantet@gmail.com"
|
||||
tags = ["tag1","tag2"]
|
||||
weight = 10
|
||||
pre ="<i class='fa fa-edit'></i> "
|
||||
|
||||
+++
|
||||
|
||||
|
||||
Hugo-theme-docdock defines two types of pages. _Default_ and _Slide_.
|
||||
|
||||
* **Default** is the common page like the current one you are reading.
|
||||
* **Slide** is a page that use the full screen to display its markdown content as a [reveals.js presentation](http://lab.hakim.se/reveal-js/).
|
||||
* **HomePage** is a special content that will be displayed as home page content.
|
||||
|
||||
To tell Hugo-theme-docdock to consider a page as a slide, just add a `type="slide"`in then frontmatter of your file. [{{%icon circle-arrow-right%}}read more on page as slide]({{%relref "page-slide.md"%}})
|
||||
|
||||
|
||||
Hugo-theme-docdock provides archetypes to help you create this kind of pages.
|
||||
|
||||
|
||||
## Front Matter
|
||||
Each Hugo page has to define a Front Matter in yaml, toml or json.
|
||||
|
||||
Hugo-theme-docdock uses the following parameters on top of the existing ones :
|
||||
|
||||
+++
|
||||
# Type of content, set "slide" to display it fullscreen with reveal.js
|
||||
type="page"
|
||||
|
||||
# Creator's Display name
|
||||
creatordisplayname = "Valere JEANTET"
|
||||
# Creator's Email
|
||||
creatoremail = "valere.jeantet@gmail.com"
|
||||
# LastModifier's Display name
|
||||
lastmodifierdisplayname = "Valere JEANTET"
|
||||
# LastModifier's Email
|
||||
lastmodifieremail = "valere.jeantet@gmail.com"
|
||||
+++
|
||||
|
||||
|
||||
## Ordering
|
||||
|
||||
Hugo provides a flexible way to handle order for your pages.
|
||||
|
||||
The simplest way is to use `weight` parameter in the front matter of your page.
|
||||
|
||||
[{{%icon circle-arrow-right%}}Read more on content organization]({{%relref "content-organisation/_index.md"%}})
|
||||
@@ -0,0 +1,8 @@
|
||||
+++
|
||||
title = "Home page"
|
||||
description = ""
|
||||
date = "2017-04-28T18:36:24+02:00"
|
||||
tags = ["tag1","tag2"]
|
||||
+++
|
||||
|
||||
To tell Hugo-theme-docdock to consider a page as homepage's content, just create a content file named `_index.md` in content folder.
|
||||
@@ -0,0 +1,48 @@
|
||||
+++
|
||||
title = "My Slide ! fullscreen"
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
type="slide"
|
||||
hidden=true
|
||||
|
||||
theme = "league"
|
||||
[revealOptions]
|
||||
transition= 'concave'
|
||||
controls= true
|
||||
progress= true
|
||||
history= false
|
||||
center= true
|
||||
+++
|
||||
|
||||
# In the morning
|
||||
|
||||
___
|
||||
|
||||
## Getting up
|
||||
|
||||
- Turn off alarm
|
||||
- Get out of bed
|
||||
|
||||
___
|
||||
|
||||
## Breakfast
|
||||
|
||||
- Eat eggs
|
||||
- Drink coffee
|
||||
|
||||
---
|
||||
|
||||
# In the evening
|
||||
|
||||
___
|
||||
|
||||
## Dinner
|
||||
|
||||
- Eat spaghetti
|
||||
- Drink wine
|
||||
|
||||
___
|
||||
|
||||
## Going to sleep
|
||||
|
||||
- Get in bed
|
||||
- Count sheep
|
||||
@@ -0,0 +1,28 @@
|
||||
+++
|
||||
title = "About images"
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
+++
|
||||
|
||||
Images have a similar syntax to links but include a preceding exclamation point.
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## Resizing image
|
||||
|
||||
Add HTTP parameters `width` and/or `height` to the link image to resize the image. Values are CSS values (default is `auto`).
|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
## Add CSS classes
|
||||
|
||||
Add a HTTP `classes` parameter to the link image to add CSS classes. `shadow` and `border` are available but you could define other ones.
|
||||
|
||||

|
||||
|
||||

|
||||
@@ -0,0 +1,114 @@
|
||||
+++
|
||||
title = "Present a Slide"
|
||||
description = ""
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
+++
|
||||
|
||||
A basic md content page can be rendered as a reveal.js presentation full screen.
|
||||
|
||||
{{%alert info%}}You can, also, **embed presentation in a page** as a small box, using the [revealjs]({{% relref "shortcodes/revealjs.md"%}}) shortcode in your md file.{{%/alert%}}
|
||||
|
||||
|
||||
## Formating
|
||||
Use your common Markdown syntax you use in Hugo, don't forget, you can put html tags too.
|
||||
|
||||
{{%notice info %}} Special syntax (in html comment) is available for adding attributes to Markdown elements. This is useful for fragments, amongst other things.
|
||||
{{%/notice%}}
|
||||
|
||||
Please read the [{{%icon book%}} doc from hakimel](https://github.com/hakimel/reveal.js/#instructions)
|
||||
|
||||
|
||||
## Options
|
||||
In the frontmatter of your page file, set **type** and **revealOptions** params
|
||||
|
||||
Your content will be served as a fullscreen revealjs presentation and revealOptions will be used to ajust its behaviour.
|
||||
|
||||
+++
|
||||
title = "Test slide"
|
||||
type="slide"
|
||||
|
||||
theme = "league"
|
||||
[revealOptions]
|
||||
transition= 'concave'
|
||||
controls= true
|
||||
progress= true
|
||||
history= true
|
||||
center= true
|
||||
+++
|
||||
|
||||
[read more about reveal options here](https://github.com/hakimel/reveal.js/#configuration)
|
||||
|
||||
|
||||
## Slide Delimiters
|
||||
When creating the content for your slideshow presentation within content markdown file you need to be able to distinguish between one slide and the next. This is achieved very simply using a convention within Markdown that indicates the start of each new slide.
|
||||
|
||||
As both horizontal and vertical slides are supported by reveal.js each has it's own unique delimiter.
|
||||
|
||||
To denote the start of a horizontal slide simply add the following delimiter in your Markdown:
|
||||
|
||||
---
|
||||
|
||||
|
||||
To denote the start of a vertical slide simply add the following delimiter in your Markdown:
|
||||
|
||||
___
|
||||
|
||||
By using a combination of horizontal and vertical slides you can customize the navigation within your slideshow presentation. Typically vertical slides are used to present information below a top-level horizontal slide.
|
||||
|
||||
|
||||
|
||||
For example, a very simple slideshow presentation can be created as follows
|
||||
|
||||
```
|
||||
+++
|
||||
|
||||
title = "test"
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
type="slide"
|
||||
|
||||
theme = "league"
|
||||
[revealOptions]
|
||||
transition= 'concave'
|
||||
controls= true
|
||||
progress= true
|
||||
history= true
|
||||
center= true
|
||||
+++
|
||||
|
||||
# In the morning
|
||||
|
||||
___
|
||||
|
||||
## Getting up
|
||||
|
||||
- Turn off alarm
|
||||
- Get out of bed
|
||||
|
||||
___
|
||||
|
||||
## Breakfast
|
||||
|
||||
- Eat eggs
|
||||
- Drink coffee
|
||||
|
||||
---
|
||||
|
||||
# In the evening
|
||||
|
||||
___
|
||||
|
||||
## Dinner
|
||||
|
||||
- Eat spaghetti
|
||||
- Drink wine
|
||||
|
||||
___
|
||||
|
||||
## Going to sleep
|
||||
|
||||
- Get in bed
|
||||
- Count sheep
|
||||
|
||||
```
|
||||
|
||||
[{{%icon expand%}}click here to view this page rendered]({{%relref "myslide.md"%}})
|
||||
@@ -0,0 +1,34 @@
|
||||
+++
|
||||
title = "Credits"
|
||||
description = "contributors and packages used by hugo-theme-docdock"
|
||||
+++
|
||||
|
||||
|
||||
## github contributors
|
||||
{{%ghcontributors "https://api.github.com/repos/vjeantet/hugo-theme-docdock/contributors?per_page=100" %}}
|
||||
|
||||
### Other contributors
|
||||
<div class="ghContributors">
|
||||
<div>
|
||||
<img src="https://avatars2.githubusercontent.com/u/394382?v=3" class="inline" width="32" height="32" style="height: 32px;height: 32px;margin-bottom:.25em; vertical-align:middle; ">
|
||||
<label>@<a href="https://github.com/bep">bep</a></label>
|
||||
<span class="contributions">supports and advices</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
## Packages and libraries
|
||||
* [Bootstrap](http://getbootstrap.com) - front-end framework
|
||||
* [mermaid](https://knsv.github.io/mermaid) - generation of diagram and flowchart from text in a similar manner as markdown
|
||||
* [font awesome](http://fontawesome.io/) - the iconic font and CSS framework
|
||||
* [jQuery](https://jquery.com) - The Write Less, Do More, JavaScript Library
|
||||
* [lunr](https://lunrjs.com) - Lunr enables you to provide a great search experience without the need for external, server-side, search services...
|
||||
* [horsey](https://bevacqua.github.io/horsey/) - Progressive and customizable autocomplete component
|
||||
* [clipboard.js](https://zenorocha.github.io/clipboard.js) - copy text to clipboard
|
||||
* [highlight.js](https://highlightjs.org) - Javascript syntax highlighter
|
||||
* [modernizr](https://modernizr.com) - A JavaScript toolkit that allows web developers to use new CSS3 and HTML5 features while maintaining a fine level of control over browsers that don't support
|
||||
* [reveal-js](http://lab.hakim.se/reveal-js) - The HTML Presentation Framework
|
||||
|
||||
## Tooling
|
||||
|
||||
* [Netlify](https://www.netlify.com) - Continuous deployement and hosting of this documentation
|
||||
* [Hugo](https://gohugo.io/) {{%icon "fa-smile-o"%}}
|
||||
@@ -0,0 +1,12 @@
|
||||
+++
|
||||
title = "Getting start"
|
||||
description = ""
|
||||
weight = 1
|
||||
alwaysopen = true
|
||||
+++
|
||||
|
||||
## Requirements
|
||||
|
||||
Download [Hugo binary](https://gohugo.io/overview/installing/) for your OS (Windows, Linux, Mac) : it’s that simple
|
||||
|
||||
{{%children style="h2" description="true"%}}
|
||||
@@ -0,0 +1,26 @@
|
||||
+++
|
||||
title = "Configuration"
|
||||
description = ""
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
When building the website, you can set a theme by using `--theme` option. We suggest you to edit your configuration file and set the theme by default. Example with `config.toml` format.
|
||||
<!--more-->
|
||||
```
|
||||
theme = "docdock"
|
||||
```
|
||||
|
||||
## Search index generation
|
||||
|
||||
Add the follow line in the same `config.toml` file.
|
||||
|
||||
```
|
||||
[outputs]
|
||||
home = [ "HTML", "RSS", "JSON"]
|
||||
```
|
||||
|
||||
LUNRJS search index file will be generated on content changes.
|
||||
|
||||
## Your website's content
|
||||
|
||||
Find out how to [create]({{%relref "create-page/_index.md"%}}) and [organize your content]({{%relref "content-organisation/_index.md"%}}) quickly and intuitively.
|
||||
@@ -0,0 +1,31 @@
|
||||
+++
|
||||
title = "Installation"
|
||||
description = ""
|
||||
weight = 1
|
||||
+++
|
||||
|
||||
{{% alert theme="warning" %}}HUGO **v0.25** minimum required to use this theme{{%/alert%}}
|
||||
|
||||
The following steps are here to help you initialize your new website. If you don’t know Hugo at all, we strongly suggest you to train by following this [great documentation for beginners](https://gohugo.io/overview/quickstart/).
|
||||
<!--more-->
|
||||
|
||||
## Create Your Documentation
|
||||
|
||||
Hugo provides a `new` command to create a new website.
|
||||
|
||||
$ hugo new site <new_website>
|
||||
|
||||
## Install The Theme
|
||||
|
||||
Install the **Hugo-theme-docdock** theme by following this
|
||||
|
||||
Switch into the themes directory and download the theme
|
||||
|
||||
$ cd themes
|
||||
$ git clone https://github.com/vjeantet/hugo-theme-docdock.git docdock
|
||||
|
||||
Alternatively, you can [{{%icon download%}} download the theme as .zip](https://github.com/vjeantet/hugo-theme-docdock/archive/master.zip) file and extract it in the themes directory
|
||||
|
||||
## Basic Configuration
|
||||
|
||||
[Follow instructions here]({{%relref "configuration.md"%}})
|
||||
@@ -0,0 +1,11 @@
|
||||
+++
|
||||
title = "About the Search Engine"
|
||||
description = ""
|
||||
weight = 40
|
||||
+++
|
||||
|
||||
**Nothing to do on your side. :-)**
|
||||
|
||||
Docdock theme uses the last improvement available in hugo version 20+ to generate a json index file ready to be consumed by lunr.js javascript search engine.
|
||||
|
||||
{{%note%}}hugo generate lunrjs index.json at the root of `public` folder. <br/>When you build the site with `hugo server`, hugo generates it internally and of course it don't show up in the filesystem{{%/note%}}
|
||||
@@ -0,0 +1,10 @@
|
||||
+++
|
||||
title = "Shortcodes"
|
||||
description = ""
|
||||
date = "2017-04-24T18:36:24+02:00"
|
||||
weight = 30
|
||||
+++
|
||||
|
||||
A bunch of Shortcodes are available with this theme :
|
||||
|
||||
{{%children style="h2" description="true" %}}
|
||||
@@ -0,0 +1,30 @@
|
||||
+++
|
||||
title = "alert"
|
||||
description = "The alert shortcode allows you to highlight information in your page."
|
||||
+++
|
||||
|
||||
The `alert` shortcode allow you to highlight information in your page. They create a colored box surrounding your text, like this:
|
||||
|
||||
{{%alert%}}**This is** an alert !{{%/alert%}}
|
||||
## Usage
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| theme | `info` | `success`, `info`,`warning`,`danger` |
|
||||
|
||||
{{%alert info%}}
|
||||
**Tips :** setting only the theme as argument works too :
|
||||
`{{%/*alert warning*/%}}` instead of `{{%/*alert theme="warning"*/%}}`
|
||||
{{%/alert%}}
|
||||
|
||||
## Basic examples
|
||||
|
||||
{{%/* alert theme="info" */%}}**this** is a text{{%/* /alert */%}}
|
||||
{{%/* alert theme="success" */%}}**Yeahhh !** is a text{{%/* /alert */%}}
|
||||
{{%/* alert theme="warning" */%}}**Be carefull** is a text{{%/* /alert */%}}
|
||||
{{%/* alert theme="danger" */%}}**Beware !** is a text{{%/* /alert */%}}
|
||||
|
||||
{{% alert theme="info"%}}**this** is an info{{% /alert %}}
|
||||
{{% alert theme="success" %}}**Yeahhh !** is an success{{% /alert %}}
|
||||
{{% alert theme="warning" %}}**Be carefull** is a warning{{% /alert %}}
|
||||
{{% alert theme="danger" %}}**Beware !** is a danger{{% /alert %}}
|
||||
|
After Width: | Height: | Size: 18 KiB |
@@ -0,0 +1,59 @@
|
||||
+++
|
||||
title = "attachments"
|
||||
description = "The Attachments shortcode displays a list of files attached to a page."
|
||||
+++
|
||||
|
||||
The Attachments shortcode displays a list of files attached to a page.
|
||||
Example :
|
||||
{{%alert success%}}{{%attachments /%}}{{%/alert%}}
|
||||
|
||||
## Usage
|
||||
|
||||
The shortcurt lists files found in a **specific folder**.
|
||||
Currently, it support two implementations for pages
|
||||
|
||||
1. If your page is a markdown file, attachements must be place in a **folder** named like your page and ending with **.files**.
|
||||
|
||||
> * content
|
||||
> * _index.md
|
||||
> * page.files
|
||||
> * attachment.pdf
|
||||
> * page.md
|
||||
|
||||
2. If your page is a **folder**, attachements must be place in a nested **'files'** folder.
|
||||
|
||||
> * content
|
||||
> * _index.md
|
||||
> * page
|
||||
> * index.md
|
||||
> * files
|
||||
> * attachment.pdf
|
||||
|
||||
That's all !
|
||||
|
||||
{{%alert info%}}**Tip** : Look at this documentation source code on github{{%/alert%}}
|
||||
|
||||
### parameters
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| title | "Attachments" | List's title |
|
||||
| pattern | ".*" | A regular expressions, used to filter the attachments by file name. <br/><br/>{{%alert warning%}}The **pattern** parameter value must be [regular expressions](https://en.wikipedia.org/wiki/Regular_expression).
|
||||
|
||||
For example:
|
||||
|
||||
* To match a file suffix of 'jpg', use **.*jpg** (not *.jpg).
|
||||
* To match file names ending in 'jpg' or 'png', use **.*(jpg|png)**
|
||||
|
||||
{{%/alert%}}|
|
||||
|
||||
|
||||
## Demo
|
||||
### List of attachments ending in pdf or mp4
|
||||
|
||||
{{%/*attachments title="Related files" pattern=".*(pdf|mp4)"/*/%}}
|
||||
|
||||
renders as
|
||||
|
||||
{{%attachments title="Related files" pattern=".*(pdf|mp4)"/%}}
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
+++
|
||||
title = "button"
|
||||
description = "Display an actionable button in your page."
|
||||
+++
|
||||
|
||||
Display an actionable button in your page.
|
||||
|
||||
{{<button align="center" href="#" theme="warning" >}} This is a warning button {{< /button >}}
|
||||
|
||||
## Usage
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| href | "" | The location href to link to |
|
||||
| align | "center" | horizontal align button on page |
|
||||
| theme | `primary` | `default`, `primary` , `success`,`info`,`warning`,`danger` |
|
||||
|
||||
The inner text you place in short code will be displayed as the _button text_
|
||||
|
||||
## Demo
|
||||
|
||||
{{</* button href="https://google.com" */>}} go to google {{</* /button */>}}
|
||||
{{</* button href="https://google.com" theme="success" */>}} Success {{</* /button */>}}
|
||||
{{</* button href="https://google.com" theme="info" */>}} Info {{</* /button */>}}
|
||||
{{</* button href="https://google.com" theme="warning" */>}} Warning {{</* /button */>}}
|
||||
{{</* button href="https://google.com" theme="danger" */>}} Danger ! {{</* /button */>}}
|
||||
{{</* button href="https://google.com" theme="default" */>}} Danger ! {{</* /button */>}}
|
||||
|
||||
{{<button href="https://google.com" >}} go to google {{< /button >}}
|
||||
{{<button href="https://google.com" theme="success">}} Success {{< /button >}}
|
||||
{{<button href="https://google.com" theme="info">}} Info {{< /button >}}
|
||||
{{<button href="https://google.com" theme="warning">}} Warning {{< /button >}}
|
||||
{{<button href="https://google.com" theme="danger">}} Danger ! {{< /button >}}
|
||||
{{<button href="https://google.com" theme="default">}} Danger ! {{< /button >}}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
+++
|
||||
title = "children"
|
||||
description = "List the child pages of a page"
|
||||
+++
|
||||
|
||||
|
||||
Use the children shortcode to list the child pages of a page and the further descendants (children's children). By default, the shortcode displays links to the child pages.
|
||||
|
||||
## Usage
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| page | _current_ | Specify the page name (section name) to display children for |
|
||||
| style | "li" | Choose the style used to display descendants. It could be any HTML tag name |
|
||||
| showhidden | "false" | When true, child pages hidden from the menu will be displayed |
|
||||
| description | "false" | Allows you to include a short text under each page in the list.<br/>when no description exists for the page, children shortcode takes the first 70 words of your content. [read more info about summaries on gohugo.io](https://gohugo.io/content/summaries/) |
|
||||
| depth | 1 | Enter a number to specify the depth of descendants to display. For example, if the value is 2, the shortcode will display 2 levels of child pages. {{%alert success%}}**Tips:** set 999 to get all descendants{{%/alert%}}|
|
||||
| sort | none | Sort Children By<br><li><strong>Weight</strong> - to sort on menu order</li><li><strong>Name</strong> - to sort alphabetically on menu label</li><li><strong>Identifier</strong> - to sort alphabetically on identifier set in frontmatter</li><li><strong>URL</strong> - URL</li> |
|
||||
|
||||
|
||||
|
||||
## Demo
|
||||
|
||||
{{%/* children */%}}
|
||||
|
||||
{{%children %}}
|
||||
|
||||
{{%/* children description="true" */%}}
|
||||
|
||||
{{%children description="true" %}}
|
||||
|
||||
{{%/* children depth="3" showhidden="true" */%}}
|
||||
|
||||
{{% children depth="3" showhidden="true" %}}
|
||||
|
||||
{{%/* children style="h2" depth="3" description="true" */%}}
|
||||
|
||||
{{% children style="h2" depth="3" description="true" %}}
|
||||
|
||||
{{%/* children style="div" depth="999" */%}}
|
||||
|
||||
{{% children style="div" depth="999" %}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page 1"
|
||||
description = "This is a demo child page"
|
||||
+++
|
||||
|
||||
This is a demo child page
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page 1-1"
|
||||
description = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod"
|
||||
+++
|
||||
|
||||
This is a demo child page
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page 1-1-1"
|
||||
description = "This is a demo child page"
|
||||
+++
|
||||
|
||||
This is a demo child page
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page 1-1-1-1"
|
||||
description = "This is a demo child page"
|
||||
+++
|
||||
|
||||
This is a demo child page
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page 1-1-1-1-1"
|
||||
description = "This is a demo child page"
|
||||
+++
|
||||
|
||||
This is a demo child page
|
||||
@@ -0,0 +1,11 @@
|
||||
+++
|
||||
title = "page 2"
|
||||
description = ""
|
||||
+++
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page test 3"
|
||||
description = "This is a page test"
|
||||
+++
|
||||
|
||||
This is a test 3 demo child page
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page 3"
|
||||
description = "This is a demo child page"
|
||||
+++
|
||||
|
||||
This is a demo child page
|
||||
@@ -0,0 +1,7 @@
|
||||
+++
|
||||
title = "page 4"
|
||||
description = "This is a demo child page"
|
||||
hidden=true
|
||||
+++
|
||||
|
||||
This is a demo child page, not displayed in the menu
|
||||
@@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "page test"
|
||||
description = "This is a page test"
|
||||
+++
|
||||
|
||||
This is a test demo child page
|
||||
@@ -0,0 +1,22 @@
|
||||
+++
|
||||
title = "excerpt-include"
|
||||
description = ""
|
||||
+++
|
||||
|
||||
The Excerpt Include shortcode is used to display 'excerpted' (that is, a segment of) content from one page in another.
|
||||
Before you can use this shortcode, the excerpt must have been defined using the Excerpt shortcode. {{%alert info%}}Note that you can have more than one Excerpt Include shortcode on a page (although you can have only one Excerpt shortcode on a page).{{%/alert%}}
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| filename | **required** | Type the filename of the page that contains the excerpt to be displayed.<br/>Path is relative to the content folder|
|
||||
| panel | none | Determines whether docDock will display a panel around the excerpted content. The panel includes the given panel's value and the border of the panel. By default, the panel and title are not shown.|
|
||||
|
||||
## Demo
|
||||
The paragraph below shows an example of an Excerpt Include shortcode, containing content from an excerpt which we have defined on the Excerpt shortcode page. On the Excerpt Include shortcode below, we have set the options to show both the title of the page and the panel surrounding the content.
|
||||
|
||||
{{%/*excerpt-include filename="shortcodes/excerpt.md" panel="From excerpt page" /*/%}}
|
||||
|
||||
{{%excerpt-include filename="shortcodes/excerpt.md" panel="From excerpt page" /%}}
|
||||
@@ -0,0 +1,39 @@
|
||||
+++
|
||||
title = "excerpt"
|
||||
description = "The Excerpt shortcode is used to mark a part of a page's content for re-use."
|
||||
+++
|
||||
|
||||
The Excerpt shortcode is used to mark a part of a page's content for re-use. Defining an excerpt enables other shortcodes, such as the excerpt-include shortcode, to display the marked content elsewhere.
|
||||
|
||||
{{%alert warning%}}You can only define one excerpt per page. In other words, you can only add the Excerpt shortcode once to a page.{{%/alert%}}
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| hidden | "false" | Controls whether the page content contained in the Excerpt shortcode placeholder is displayed on the page.{{%alert warning%}}Note that this option affects only the page that contains the Excerpt shortcode. It does not affect any pages where the content is reused.{{%/alert%}} |
|
||||
|
||||
## Demo
|
||||
|
||||
{{%/*excerpt*/%}}
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation **ullamco** laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in _reprehenderit in voluptate_
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
||||
{{%/* /excerpt*/%}}
|
||||
|
||||
{{%excerpt%}}
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation **ullamco** laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in _reprehenderit in voluptate_
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
||||
{{% /excerpt%}}
|
||||
|
||||
|
||||
|
||||
{{%alert info%}}See re use example with [excerpt-include shortcode]({{%relref "shortcodes/excerpt-include.md"%}}){{%/alert%}}
|
||||
@@ -0,0 +1,41 @@
|
||||
+++
|
||||
title = "expand"
|
||||
description = "Displays an expandable/collapsible section of text on your page"
|
||||
+++
|
||||
|
||||
The Expand shortcode displays an expandable/collapsible section of text on your page.
|
||||
Here is an example
|
||||
|
||||
{{%expand%}}Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.{{%/expand%}}
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
|
||||
this shortcode takes exactly one optional parameter to define the text that appears next to the expand/collapse icon. (default is "Expand me...")
|
||||
|
||||
{{%/*expand "Is this docdock theme rocks ?" */%}}Yes !.{{%/* /expand*/%}}
|
||||
|
||||
{{%expand "Is this docdock theme rocks ?" %}}Yes !{{% /expand%}}
|
||||
|
||||
# Demo
|
||||
|
||||
{{%/*expand*/%}}Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.{{%/* /expand*/%}}
|
||||
|
||||
|
||||
{{%expand%}}Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.{{% /expand%}}
|
||||
@@ -0,0 +1,98 @@
|
||||
+++
|
||||
title = "mermaid"
|
||||
description = ""
|
||||
+++
|
||||
|
||||
## Flowchart example
|
||||
{{%expand "Show code ..."%}}
|
||||
{{</*mermaid align="left"*/>}}
|
||||
graph LR;
|
||||
A[Hard edge] -->|Link text| B(Round edge)
|
||||
B --> C{Decision}
|
||||
C -->|One| D[Result one]
|
||||
C -->|Two| E[Result two]
|
||||
{{</* /mermaid */>}}
|
||||
{{%/expand%}}
|
||||
|
||||
{{<mermaid align="left">}}
|
||||
graph LR;
|
||||
A[Hard edge] -->|Link text| B(Round edge)
|
||||
B --> C{Decision}
|
||||
C -->|One| D[Result one]
|
||||
C -->|Two| E[Result two]
|
||||
{{< /mermaid >}}
|
||||
|
||||
## Sequence example
|
||||
{{%expand "Show code ..."%}}
|
||||
{{</*mermaid*/>}}
|
||||
sequenceDiagram
|
||||
participant Alice
|
||||
participant Bob
|
||||
Alice->>John: Hello John, how are you?
|
||||
loop Healthcheck
|
||||
John->John: Fight against hypochondria
|
||||
end
|
||||
Note right of John: Rational thoughts <br/>prevail...
|
||||
John-->Alice: Great!
|
||||
John->Bob: How about you?
|
||||
Bob-->John: Jolly good!
|
||||
{{</* /mermaid */>}}
|
||||
{{%/expand%}}
|
||||
|
||||
{{<mermaid>}}
|
||||
sequenceDiagram
|
||||
participant Alice
|
||||
participant Bob
|
||||
Alice->>John: Hello John, how are you?
|
||||
loop Healthcheck
|
||||
John->John: Fight against hypochondria
|
||||
end
|
||||
Note right of John: Rational thoughts <br/>prevail...
|
||||
John-->Alice: Great!
|
||||
John->Bob: How about you?
|
||||
Bob-->John: Jolly good!
|
||||
{{< /mermaid >}}
|
||||
|
||||
|
||||
|
||||
## GANTT Example
|
||||
{{%expand "Show code ..."%}}
|
||||
{{</*mermaid*/>}}
|
||||
gantt
|
||||
dateFormat YYYY-MM-DD
|
||||
title Adding GANTT diagram functionality to mermaid
|
||||
section A section
|
||||
Completed task :done, des1, 2014-01-06,2014-01-08
|
||||
Active task :active, des2, 2014-01-09, 3d
|
||||
Future task : des3, after des2, 5d
|
||||
Future task2 : des4, after des3, 5d
|
||||
section Critical tasks
|
||||
Completed task in the critical line :crit, done, 2014-01-06,24h
|
||||
Implement parser and jison :crit, done, after des1, 2d
|
||||
Create tests for parser :crit, active, 3d
|
||||
Future task in critical line :crit, 5d
|
||||
Create tests for renderer :2d
|
||||
Add to mermaid :1d
|
||||
{{</* /mermaid */>}}
|
||||
{{%/expand%}}
|
||||
|
||||
{{<mermaid>}}
|
||||
gantt
|
||||
dateFormat YYYY-MM-DD
|
||||
title Adding GANTT diagram functionality to mermaid
|
||||
section A section
|
||||
Completed task :done, des1, 2014-01-06,2014-01-08
|
||||
Active task :active, des2, 2014-01-09, 3d
|
||||
Future task : des3, after des2, 5d
|
||||
Future task2 : des4, after des3, 5d
|
||||
section Critical tasks
|
||||
Completed task in the critical line :crit, done, 2014-01-06,24h
|
||||
Implement parser and jison :crit, done, after des1, 2d
|
||||
Create tests for parser :crit, active, 3d
|
||||
Future task in critical line :crit, 5d
|
||||
Create tests for renderer :2d
|
||||
Add to mermaid :1d
|
||||
{{</mermaid>}}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
+++
|
||||
title = "notice"
|
||||
description = "Disclaimers to help you structure your page"
|
||||
+++
|
||||
|
||||
The notice shortcode shows 4 types of disclaimers to help you structure your page.
|
||||
|
||||
|
||||
## Note
|
||||
|
||||
{{%/* notice note */%}}
|
||||
A notice disclaimer
|
||||
{{%/* /notice */%}}
|
||||
|
||||
renders as
|
||||
|
||||
{{% notice note %}}
|
||||
A notice disclaimer
|
||||
{{% /notice %}}
|
||||
|
||||
|
||||
## Info
|
||||
|
||||
{{%/* notice info */%}}
|
||||
An information disclaimer
|
||||
{{%/* /notice */%}}
|
||||
|
||||
renders as
|
||||
|
||||
{{% notice info %}}
|
||||
An information disclaimer
|
||||
{{% /notice %}}
|
||||
|
||||
|
||||
|
||||
## Tip
|
||||
|
||||
{{%/* notice tip */%}}
|
||||
A tip disclaimer
|
||||
{{%/* /notice */%}}
|
||||
|
||||
renders as
|
||||
|
||||
{{% notice tip %}}
|
||||
A tip disclaimer
|
||||
{{% /notice %}}
|
||||
|
||||
|
||||
|
||||
## Warning
|
||||
|
||||
{{%/* notice warning */%}}
|
||||
An warning disclaimer
|
||||
{{%/* /notice */%}}
|
||||
|
||||
renders as
|
||||
|
||||
{{% notice warning %}}
|
||||
An warning disclaimer
|
||||
{{% /notice %}}
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
+++
|
||||
title = "panel"
|
||||
description = "Allow you to highlight information or put it in a box."
|
||||
+++
|
||||
|
||||
|
||||
|
||||
{{% panel theme="success" header="The panel shortcode" %}}Allow you to highlight information or put it in a box. They create a colored box surrounding your text{{% /panel %}}
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
| Parameter | Default | Description |
|
||||
|:--|:--|:--|
|
||||
| header | none | The title of the panel. If specified, this title will be displayed in its own header row. |
|
||||
| footer | none | the footer of the panel. If specified, this text will be displayed in its own row |
|
||||
| theme | `primary` | `default`,`primary`,`info`,`success`,`warning`,`danger` |
|
||||
|
||||
## Basic example
|
||||
|
||||
By default :
|
||||
|
||||
{{%/* panel */%}}this is a panel text{{%/* /panel */%}}
|
||||
|
||||
{{%panel%}}this is a panel text{{%/panel%}}
|
||||
|
||||
## Panel with heading
|
||||
|
||||
Easily add a heading container to your panel with `header` parameter. You may apply any theme.
|
||||
|
||||
{{%/* panel theme="danger" header="panel title" */%}}this is a panel text{{%/* /panel */%}}
|
||||
|
||||
{{% panel theme="danger" header="panel title" %}}this is a panel text{{% /panel %}}
|
||||
|
||||
{{%/* panel theme="success" header="panel title" */%}}this is a panel text{{%/* /panel */%}}
|
||||
|
||||
{{% panel theme="success" header="panel title" %}}this is a panel text{{% /panel %}}
|
||||
|
||||
## Panel with footer
|
||||
Wrap a secondary text in footer.
|
||||
|
||||
{{%/* panel footer="panel footer" */%}}Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.{{%/* /panel */%}}
|
||||
|
||||
{{% panel footer="panel footer" %}}
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
||||
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
|
||||
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
||||
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
|
||||
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
|
||||
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
||||
{{% /panel %}}
|
||||
|
||||
## Themes
|
||||
|
||||
{{% panel theme="success" header="Success theme" %}}this is a panel text{{% /panel %}}
|
||||
{{% panel theme="default" header="default theme" %}}this is a panel text{{% /panel %}}
|
||||
{{% panel theme="primary" header="primary theme" %}}this is a panel text{{% /panel %}}
|
||||
{{% panel theme="info" header="info theme" %}}this is a panel text{{% /panel %}}
|
||||
{{% panel theme="warning" header="warning theme" %}}this is a panel text{{% /panel %}}
|
||||
{{% panel theme="danger" header="danger theme" %}}this is a panel text{{% /panel %}}
|
||||
@@ -0,0 +1,74 @@
|
||||
+++
|
||||
title = "revealjs"
|
||||
slug = "revealjs"
|
||||
description = "present content as a reveal.js slide"
|
||||
+++
|
||||
|
||||
This shortcode will format the enclosed markdow to render it with [reveal.js](http://lab.hakim.se/reveal-js/) at runtime (client-side)
|
||||
|
||||
Read more on [revealjs github repo](https://github.com/hakimel/reveal.js/#markdown).
|
||||
|
||||
## Usage
|
||||
|
||||
`revealjs` can use the following named parameters :
|
||||
|
||||
* theme
|
||||
* transition
|
||||
* controls
|
||||
* progress
|
||||
* history
|
||||
* center
|
||||
|
||||
|
||||
{{%warning title="Important" %}}Even if the enclosed content is a mardown, use `<` shortcode notation instead of the `%` notation {{%/warning %}}
|
||||
|
||||
### Content formating and slide delimiters
|
||||
|
||||
[read more on this here]({{% relref "page-slide.md"%}})
|
||||
|
||||
## Demo
|
||||
|
||||
{{<revealjs theme="moon" progress="true">}}
|
||||
|
||||
# In the morning
|
||||
|
||||
___
|
||||
|
||||
|
||||
## Getting up
|
||||
|
||||
- Turn off alarm
|
||||
- Get out of bed
|
||||
|
||||
___
|
||||
|
||||
## Breakfast
|
||||
|
||||
- Eat eggs
|
||||
- Drink coffee
|
||||
|
||||
---
|
||||
|
||||
# In the evening
|
||||
|
||||
___
|
||||
|
||||
## Dinner
|
||||
|
||||
- Eat spaghetti
|
||||
- Drink wine
|
||||
|
||||
___
|
||||
|
||||
## Going to sleep
|
||||
|
||||
- Get in bed
|
||||
- Count sheep
|
||||
|
||||
{{</revealjs>}}
|
||||
|
||||
## Source :
|
||||
|
||||
* [{{%icon "sunglasses" %}} click here to view raw content](https://raw.githubusercontent.com/vjeantet/hugo-theme-docdock/master/exampleSite/content/shortcodes/revealjs.md)
|
||||
editURL
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
+++
|
||||
title = "Docdock-built Sites"
|
||||
description = "Hugo-built Sites with docdock theme"
|
||||
+++
|
||||
|
||||
|
||||
|
||||
|
||||
#### [https://invincible.site/](https://invincible.site/) by [@shazic](https://github.com/shazic)
|
||||

|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-79101-13', 'auto');
|
||||
ga('send', 'pageview');
|
||||
|
||||
</script>
|
||||
@@ -0,0 +1,13 @@
|
||||
<center>
|
||||
<!-- Place this tag where you want the button to render. -->
|
||||
<a class="github-button" href="https://github.com/vjeantet/hugo-theme-docdock/archive/master.zip" data-icon="octicon-cloud-download" aria-label="Download vjeantet/hugo-theme-docdock on GitHub">Download</a>
|
||||
|
||||
<!-- Place this tag where you want the button to render. -->
|
||||
<a class="github-button" href="https://github.com/vjeantet/hugo-theme-docdock" data-icon="octicon-star" data-show-count="false" aria-label="Star vjeantet/hugo-theme-docdock on GitHub">Star</a>
|
||||
|
||||
<!-- Place this tag where you want the button to render. -->
|
||||
<a class="github-button" href="https://github.com/vjeantet/hugo-theme-docdock/fork" data-icon="octicon-repo-forked" data-show-count="true" aria-label="Fork vjeantet/hugo-theme-docdock on GitHub">Fork</a>
|
||||
|
||||
</center>
|
||||
<!-- Place this tag in your head or just before your close body tag. -->
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
@@ -0,0 +1,31 @@
|
||||
<style type="text/css">
|
||||
.ghContributors{
|
||||
display:flex;
|
||||
flex-flow: wrap;
|
||||
align-content: flex-start
|
||||
}
|
||||
|
||||
.ghContributors > div{
|
||||
width: 50% ;
|
||||
display: inline-flex;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
.ghContributors > div label{
|
||||
padding-left: 4px ;
|
||||
}
|
||||
.ghContributors > div span{
|
||||
font-size: x-small;
|
||||
padding-left: 4px ;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="ghContributors">
|
||||
{{ $url := .Get 0 }}
|
||||
{{ range getJSON $url }}
|
||||
<div>
|
||||
<img src="{{.avatar_url}}" class="inline" width="32" height="32" style="height: 32px;height: 32px;margin-bottom:.25em; vertical-align:middle; ">
|
||||
<label><a href="{{.html_url}}">@{{.login}}</a></label>
|
||||
<span class="contributions">{{.contributions}} commits</span>
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
|
After Width: | Height: | Size: 9.0 KiB |
|
After Width: | Height: | Size: 1.3 MiB |
|
After Width: | Height: | Size: 185 KiB |
|
After Width: | Height: | Size: 140 KiB |
|
After Width: | Height: | Size: 173 KiB |
@@ -0,0 +1,35 @@
|
||||
[create-header-md]
|
||||
other = "Create a _header.md to customize this"
|
||||
|
||||
[Search-placeholder]
|
||||
other = "Search..."
|
||||
|
||||
[Clear-History]
|
||||
other = "Clear History"
|
||||
|
||||
[Page]
|
||||
other = "Page"
|
||||
|
||||
[Next-Pages]
|
||||
other = "Next Pages"
|
||||
|
||||
[Previous-Pages]
|
||||
other = "Previous Pages"
|
||||
|
||||
[pagination-on]
|
||||
other = "of"
|
||||
|
||||
[Attachments-label]
|
||||
other = "Attachments"
|
||||
|
||||
[title-404]
|
||||
other = "Error"
|
||||
|
||||
[message-404]
|
||||
other = "Woops. Looks like this page doesn't exist."
|
||||
|
||||
[Go-to-homepage]
|
||||
other = "Go to homepage"
|
||||
|
||||
[Edit-this-page]
|
||||
other = "Edit page"
|
||||
@@ -0,0 +1,35 @@
|
||||
[create-header-md]
|
||||
other = "Créez un fichier _header.md pour personaliser cet encart"
|
||||
|
||||
[Search-placeholder]
|
||||
other = "Rechercher..."
|
||||
|
||||
[Clear-History]
|
||||
other = "Supprimer historique"
|
||||
|
||||
[Page]
|
||||
other = "Page"
|
||||
|
||||
[Next-Pages]
|
||||
other = "Pages suivantes"
|
||||
|
||||
[Previous-Pages]
|
||||
other = "Pages précédentes"
|
||||
|
||||
[pagination-on]
|
||||
other = "sur"
|
||||
|
||||
[Attachments-label]
|
||||
other = "Documents attachés"
|
||||
|
||||
[title-404]
|
||||
other = "Erreur"
|
||||
|
||||
[message-404]
|
||||
other = "Woops. Looks like this page doesn't exist."
|
||||
|
||||
[Go-to-homepage]
|
||||
other = "Vers la page d'accueil"
|
||||
|
||||
[Edit-this-page]
|
||||
other = "Modifier"
|
||||
@@ -0,0 +1,35 @@
|
||||
[create-header-md]
|
||||
other = "Opprett en _header.md for å tilpasse denne"
|
||||
|
||||
[Search-placeholder]
|
||||
other = "Søk..."
|
||||
|
||||
[Clear-History]
|
||||
other = "Fjern historikk"
|
||||
|
||||
[Page]
|
||||
other = "Side"
|
||||
|
||||
[Next-Pages]
|
||||
other = "Neste"
|
||||
|
||||
[Previous-Pages]
|
||||
other = "Forrige"
|
||||
|
||||
[pagination-on]
|
||||
other = "av"
|
||||
|
||||
[Attachments-label]
|
||||
other = "Vedlegg"
|
||||
|
||||
[title-404]
|
||||
other = "Feil"
|
||||
|
||||
[message-404]
|
||||
other = "Ups... Ser ikke ut som denne siden eksisterer."
|
||||
|
||||
[Go-to-homepage]
|
||||
other = "Gå til hovedsiden"
|
||||
|
||||
[Edit-this-page]
|
||||
other = "Editer"
|
||||
|
After Width: | Height: | Size: 345 KiB |
|
After Width: | Height: | Size: 137 KiB |
@@ -0,0 +1,53 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en" class="js csstransforms3d">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8"> {{ partial "meta.html" . }}
|
||||
<link rel="shortcut icon" href="{{"images/favicon.png" | relURL}}" type="image/x-icon" />
|
||||
{{ .Scratch.Add "title" "" }}{{ if eq .Site.Data.titles .Title }}{{ .Scratch.Set "title" (index .Site.Data.titles .Title).title }}{{ else }}{{ .Scratch.Set "title" .Title}}{{end}}
|
||||
<title>{{ .Scratch.Get "title" }}</title>
|
||||
<link href="{{"css/nucleus.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/font-awesome.min.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/hybrid.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/featherlight.min.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/theme.css" | relURL}}" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
:root #header + #content > #left > #rlblock_left {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
p,
|
||||
li,
|
||||
ul {
|
||||
text-align: center
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
</style>
|
||||
{{ partial "custom-head.html" . }}
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<body class="" data-url="/">
|
||||
|
||||
<section id="body" style="margin-left:0px;">
|
||||
<div id="overlay"></div>
|
||||
<div id="chapter">
|
||||
<div id="body-inner">
|
||||
<h1>{{T "title-404"}}</h1>
|
||||
<p>
|
||||
</p>
|
||||
<p>{{T "message-404"}}</p>
|
||||
<p></p>
|
||||
<p><a href="{{.Site.BaseURL}}">{{T "Go-to-homepage"}}</a></p>
|
||||
<p><img src="{{"images/gopher-404.jpg" | relURL}}" style="width:50%"></img></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,25 @@
|
||||
<article class="post {{ .Section }}">
|
||||
<header class="post-header">
|
||||
<h2 class="post-title"><a href="{{ .RelPermalink }}">{{ .Title }}</a></h2>
|
||||
</header>
|
||||
<section class="post-excerpt">
|
||||
<p>{{ .Summary }} <a class="read-more" href="{{.RelPermalink}}">»</a></p>
|
||||
</section>
|
||||
<footer class=" footline" >
|
||||
|
||||
{{with .Params.LastModifierDisplayName}}
|
||||
<i class='fa fa-user'></i> <a href="mailto:{{ $.Params.LastModifierEmail }}">{{ . }}</a> {{with $.Date}} <i class='fa fa-calendar'></i> {{ .Format "02/01/2006" }}{{end}}
|
||||
{{end}}
|
||||
|
||||
|
||||
{{if .Params.tags }}
|
||||
{{ range $index, $tag := .Params.tags }}
|
||||
<a class="label label-default" href="{{$.Site.BaseURL}}tags/{{ $tag | urlize }}/">{{ $tag }}</a>
|
||||
{{ end }}
|
||||
{{end}}
|
||||
|
||||
</footer>
|
||||
</article>
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
{{ partial "header.html" . }}
|
||||
|
||||
{{ .Content }}
|
||||
|
||||
<footer class=" footline" >
|
||||
{{with .Params.LastModifierDisplayName}}
|
||||
<i class='fa fa-user'></i> <a href="mailto:{{ $.Params.LastModifierEmail }}">{{ . }}</a> {{with $.Date}} <i class='fa fa-calendar'></i> {{ .Format "02/01/2006" }}{{end}}
|
||||
</div>
|
||||
{{end}}
|
||||
</footer>
|
||||
|
||||
|
||||
{{if not .Content }}
|
||||
{{ $paginator := .Paginator }}
|
||||
|
||||
<div class="extra-pagination inner">
|
||||
{{ partial "pagination.html" $paginator }}
|
||||
</div>
|
||||
|
||||
{{ range $index, $page := $paginator.Pages }}
|
||||
{{ .Render "li" }}
|
||||
{{ end }}
|
||||
|
||||
<div style="margin-bottom:2rem"></div>
|
||||
|
||||
{{ partial "pagination.html" $paginator }}
|
||||
{{end}}
|
||||
|
||||
{{ partial "footer.html" . }}
|
||||
@@ -0,0 +1,13 @@
|
||||
{{ partial "header.html" . }}
|
||||
|
||||
{{ .Content }}
|
||||
|
||||
<footer class=" footline" >
|
||||
{{with .Params.LastModifierDisplayName}}
|
||||
<i class='fa fa-user'></i> <a href="mailto:{{ $.Params.LastModifierEmail }}">{{ . }}</a> {{with $.Date}} <i class='fa fa-calendar'></i> {{ .Format "02/01/2006" }}{{end}}
|
||||
</div>
|
||||
{{end}}
|
||||
</footer>
|
||||
|
||||
|
||||
{{ partial "footer.html" . }}
|
||||
@@ -0,0 +1,30 @@
|
||||
{{ partial "header.html" . }}
|
||||
<span id="sidebar-toggle-span">
|
||||
<a href="#" id="sidebar-toggle" data-sidebar-toggle=""><i class="fa fa-bars"></i> navigation</a>
|
||||
</span>
|
||||
|
||||
{{if .Site.Home.Content }}
|
||||
{{.Site.Home.Content}}
|
||||
{{else}}
|
||||
{{if eq .Site.Language.Lang "fr"}}
|
||||
<h1>Personaliser la page d'accueil</h1>
|
||||
<p>
|
||||
Le site fonctionne. Ne pas oublier de personaliser cette page avec votre propre contenu. 2 façons de faire :
|
||||
</p>
|
||||
<ul>
|
||||
<li><b>1. </b> Créer un fichier _index.md dans le dossier content</li>
|
||||
<li><b>2. </b> Configurer le serveur http pour rediriger automatiquement la homepage vers la page de votre choix dans le site</li>
|
||||
</ul>
|
||||
{{else}}
|
||||
<h1>Customize your own home page</h1>
|
||||
<p>
|
||||
The site is working. Don't forget to customize this homepage with your own. You typically have 2 choices :
|
||||
</p>
|
||||
<ul>
|
||||
<li><b>1. </b> Create an _index.md document in the content folder</li>
|
||||
<li><b>2. </b> Configure your server to automatically redirect this home page to one of your documentation pages</li>
|
||||
</ul>
|
||||
{{end}}
|
||||
<p><i class="fa fa-heart fa-4x"></i></p>
|
||||
{{ end }}
|
||||
{{ partial "footer.html" . }}
|
||||
@@ -0,0 +1,12 @@
|
||||
[{{ range $index, $page := .Site.Pages }}
|
||||
{{- if ne $page.Type "json" -}}
|
||||
{{- if and $index (gt $index 0) -}},{{- end }}
|
||||
{
|
||||
"uri": "{{ $page.Permalink }}",
|
||||
"title": "{{ htmlEscape $page.Title}}",
|
||||
"tags": [{{ range $tindex, $tag := $page.Params.tags }}{{ if $tindex }}, {{ end }}"{{ $tag| htmlEscape }}"{{ end }}],
|
||||
"description": "{{ htmlEscape .Description}}",
|
||||
"content": {{$page.Plain | jsonify}}
|
||||
}
|
||||
{{- end -}}
|
||||
{{- end -}}]
|
||||
@@ -0,0 +1 @@
|
||||
<!-- Partial intended to be overwritten for content footers like commenting systems -->
|
||||
@@ -0,0 +1 @@
|
||||
<!-- Partial intended to be overwritten to add javacript -->
|
||||
@@ -0,0 +1 @@
|
||||
<!-- Partial intended to be overwritten to add CSS -->
|
||||
@@ -0,0 +1,62 @@
|
||||
|
||||
|
||||
{{ partial "custom-content-footer.html" . }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div id="navigation">
|
||||
<!-- Next prev page -->
|
||||
{{ $currentNode := . }}
|
||||
|
||||
{{ template "menu-nextprev" dict "menu" .Site.Home "currentnode" $currentNode }}
|
||||
|
||||
{{ define "menu-nextprev" }}
|
||||
{{$currentNode := .currentnode }}
|
||||
{{ if ne .menu.Params.hidden true}}
|
||||
{{if hasPrefix $currentNode.URL .menu.URL }}
|
||||
{{ $currentNode.Scratch.Set "NextPageOK" "OK" }}
|
||||
{{ $currentNode.Scratch.Set "prevPage" ($currentNode.Scratch.Get "prevPageTmp") }}
|
||||
{{else}}
|
||||
{{if eq ($currentNode.Scratch.Get "NextPageOK") "OK"}}
|
||||
{{ $currentNode.Scratch.Set "NextPageOK" nil }}
|
||||
{{ $currentNode.Scratch.Set "nextPage" .menu }}
|
||||
{{end}}
|
||||
{{end}}
|
||||
{{ $currentNode.Scratch.Set "prevPageTmp" .menu }}
|
||||
|
||||
{{ $currentNode.Scratch.Set "pages" .menu.Pages }}
|
||||
{{ if .menu.IsHome}}
|
||||
{{ $currentNode.Scratch.Set "pages" .menu.Sections }}
|
||||
{{ else if .menu.Sections}}
|
||||
{{ $currentNode.Scratch.Set "pages" (.menu.Pages | union .menu.Sections) }}
|
||||
{{end}}
|
||||
{{ $pages := ($currentNode.Scratch.Get "pages") }}
|
||||
|
||||
{{ range $pages.ByWeight }}
|
||||
{{ template "menu-nextprev" dict "menu" . "currentnode" $currentNode }}
|
||||
{{end}}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
|
||||
{{with ($.Scratch.Get "prevPage")}}
|
||||
<a class="nav nav-prev" href="{{.URL}}" title="{{.Title}}"> <i class="fa fa-chevron-left"></i></a>
|
||||
{{end}}
|
||||
{{with ($.Scratch.Get "nextPage")}}
|
||||
<a class="nav nav-next" href="{{.URL}}" title="{{.Title}}" style="margin-right: 0px;"><i class="fa fa-chevron-right"></i></a>
|
||||
{{end}}
|
||||
</div>
|
||||
|
||||
</section>
|
||||
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
|
||||
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
|
||||
</div>
|
||||
|
||||
{{ partial "scripts.html" . }}
|
||||
{{ partial "custom-footer.html" . }}
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,88 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ .Page.Language | default "en" }}" class="js csstransforms3d">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
||||
{{ .Hugo.Generator }}
|
||||
{{ partial "meta.html" . }}
|
||||
<title>{{ .Title }} :: {{ .Site.Title }}</title>
|
||||
<link rel="shortcut icon" href="{{"images/favicon.png" | relURL}}" type="image/x-icon" />
|
||||
<link href="{{"css/nucleus.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/font-awesome.min.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/hybrid.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/featherlight.min.css" | relURL}}" rel="stylesheet">
|
||||
<link href="{{"css/horsey.css" | relURL}}" rel="stylesheet">
|
||||
{{with .Site.Params.themeStyle}}
|
||||
<link href="{{(printf "css/%s.css" .) | relURL}}" rel="stylesheet">
|
||||
{{else}}
|
||||
<link href="{{"css/theme.css" | relURL}}" rel="stylesheet">
|
||||
{{end}}
|
||||
{{with .Site.Params.themeVariant}}
|
||||
<link href="{{(printf "css/theme-%s.css" .) | relURL}}" rel="stylesheet">
|
||||
{{end}}
|
||||
<link rel="stylesheet" href="{{"css/bootstrap.min.css" | relURL}}">
|
||||
<script src="{{"js/jquery-2.x.min.js" | relURL}}"></script>
|
||||
<style type="text/css">
|
||||
:root #header + #content > #left > #rlblock_left {
|
||||
display:none !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
|
||||
{{ partial "custom-head.html" . }}
|
||||
</head>
|
||||
<body class="" data-url="{{ .RelPermalink }}">
|
||||
{{ partial "menu.html" . }}
|
||||
<section id="body">
|
||||
<div id="overlay"></div>
|
||||
<div class="padding highlightable">
|
||||
{{if not .IsHome}}
|
||||
<div id="top-bar">
|
||||
{{ if and (or .IsPage .IsSection) .Site.Params.editURL }}
|
||||
{{ $File := .File }}
|
||||
{{ $Site := .Site }}
|
||||
{{with $File.Path }}
|
||||
<div id="top-github-link">
|
||||
<a class="github-link" href="{{ $Site.Params.editURL }}{{ replace $File.Dir "\\" "/" }}{{ $File.LogicalName }}" target="blank">
|
||||
<i class="fa fa-code-fork"></i>
|
||||
{{T "Edit-this-page"}}
|
||||
</a>
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
|
||||
<span id="sidebar-toggle-span">
|
||||
<a href="#" id="sidebar-toggle" data-sidebar-toggle="">
|
||||
<i class="fa fa-bars"></i>
|
||||
</a>
|
||||
</span>
|
||||
<span id="toc-menu"><i class="fa fa-list-alt"></i></span>
|
||||
<span class="links">
|
||||
{{ template "breadcrumb" dict "page" . "value" .Title }}
|
||||
</span>
|
||||
</div>
|
||||
{{ partial "toc.html" . }}
|
||||
</div>
|
||||
{{end}}
|
||||
{{if .Params.tags }}
|
||||
<div id="tags">
|
||||
{{ range $index, $tag := .Params.tags }}
|
||||
<a class="label label-default" href="{{$.Site.BaseURL}}/tags/{{ $tag | urlize }}">{{ $tag }}</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
{{end}}
|
||||
<div id="body-inner">
|
||||
{{if not .IsHome}}
|
||||
<h1>{{.Title}}</h1>
|
||||
{{end}}
|
||||
|
||||
{{define "breadcrumb"}}
|
||||
{{ if .page.Parent}}
|
||||
{{$value := (printf "<a href='%s'>%s</a> > %s" .page.Parent.URL .page.Parent.Title .value)}}
|
||||
{{ template "breadcrumb" dict "page" .page.Parent "value" $value }}
|
||||
{{else}}
|
||||
{{.value|safeHTML}}
|
||||
{{end}}
|
||||
{{end}}
|
||||
@@ -0,0 +1,10 @@
|
||||
{{ range where .Site.Pages "Source.BaseFileName" "_header" }}
|
||||
{{ .Content }}
|
||||
{{else}}
|
||||
<span style="font-size:smaller">
|
||||
<a id="logo" href="{{.Site.BaseURL}}">
|
||||
<span class="fa fa-gears" style="font-size:large"></span>
|
||||
</a>
|
||||
{{ T "create-header-md" }}
|
||||
</small>
|
||||
{{end}}
|
||||
@@ -0,0 +1,126 @@
|
||||
<nav id="sidebar" class="{{if $.Site.Params.showVisitedLinks }}showVisitedLinks{{end}}">
|
||||
|
||||
|
||||
|
||||
{{ $currentNode := . }}
|
||||
{{ $showvisitedlinks := .Site.Params.showVisitedLinks }}
|
||||
<div class="highlightable">
|
||||
<div id="header-wrapper">
|
||||
<div id="header">
|
||||
{{ partial "logo.html" . }}
|
||||
</div>
|
||||
{{if not .Site.Params.noSearch}}
|
||||
{{ partial "search.html" . }}
|
||||
{{end}}
|
||||
</div>
|
||||
|
||||
|
||||
<ul class="topics">
|
||||
{{if not .Site.Params.noHomeIcon}}
|
||||
<li data-nav-id="{{"/" | relURL}}" class="dd-item">
|
||||
<a href="{{"/" | relURL}}"><i class="fa fa-fw fa-home"></i></a>
|
||||
</li>
|
||||
{{end}}
|
||||
|
||||
{{if eq .Site.Params.ordersectionsby "title"}}
|
||||
{{range .Site.Home.Sections.ByTitle}}
|
||||
{{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks}}
|
||||
{{end}}
|
||||
{{else}}
|
||||
{{range .Site.Home.Sections.ByWeight}}
|
||||
{{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks}}
|
||||
{{end}}
|
||||
{{end}}
|
||||
|
||||
{{with .Site.Menus.shortcuts}}
|
||||
<section id="shortcuts">
|
||||
{{ range sort . "Weight"}}
|
||||
<li class="" role="">
|
||||
{{.Pre}}
|
||||
<a href="{{.URL}}">{{safeHTML .Name}}</a>
|
||||
{{.Post}}
|
||||
</li>
|
||||
{{end}}
|
||||
</section>
|
||||
|
||||
{{ if $.Site.Params.showVisitedLinks}}
|
||||
<a class="" href="#" data-clear-history-toggle=""><i class="fa fa-history"></i> {{T "Clear-History"}}</a>
|
||||
{{ end }}
|
||||
|
||||
{{end}}
|
||||
</ul>
|
||||
|
||||
|
||||
<section id="footer">
|
||||
{{ partial "menu-footer.html" . }}
|
||||
</section>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<!-- templates -->
|
||||
{{ define "section-tree-nav" }}
|
||||
{{ $showvisitedlinks := .showvisitedlinks }}
|
||||
{{ $currentNode := .currentnode }}
|
||||
{{with .sect}}
|
||||
{{if .IsSection}}
|
||||
{{safeHTML .Params.head}}
|
||||
<li data-nav-id="{{.URL}}" class="dd-item
|
||||
{{if .IsAncestor $currentNode }}parent{{end}}
|
||||
{{if eq .UniqueID $currentNode.UniqueID}}active{{end}}
|
||||
{{if .Params.alwaysopen}}parent{{end}}
|
||||
">
|
||||
<a href="{{ .RelPermalink}}">
|
||||
<span>{{safeHTML .Params.Pre}}{{.Title}}{{safeHTML .Params.Post}}</span>
|
||||
|
||||
{{ $numberOfPages := (add (len .Pages) (len .Sections)) }}
|
||||
{{ if ne $numberOfPages 0 }}
|
||||
|
||||
{{if or (.IsAncestor $currentNode) (.Params.alwaysopen) }}
|
||||
<i class="fa fa-angle-down fa-lg category-icon"></i>
|
||||
{{else}}
|
||||
<i class="fa fa-angle-right fa-lg category-icon"></i>
|
||||
{{end}}
|
||||
|
||||
{{ end }}
|
||||
|
||||
{{ if $showvisitedlinks}}<i style="color:grey" class="fa fa-circle-thin read-icon"></i>{{end}}
|
||||
</a>
|
||||
{{ if ne $numberOfPages 0 }}
|
||||
<ul>
|
||||
{{ .Scratch.Set "pages" .Pages }}
|
||||
{{ if .Sections}}
|
||||
{{ .Scratch.Set "pages" (.Pages | union .Sections) }}
|
||||
{{end}}
|
||||
{{ $pages := (.Scratch.Get "pages") }}
|
||||
|
||||
{{if eq .Site.Params.ordersectionsby "title"}}
|
||||
{{ range $pages.ByTitle }}
|
||||
{{ if and .Params.hidden (not $.showhidden) }}
|
||||
{{else}}
|
||||
{{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks }}
|
||||
{{end}}
|
||||
{{ end }}
|
||||
{{else}}
|
||||
{{ range $pages.ByWeight }}
|
||||
{{ if and .Params.hidden (not $.showhidden) }}
|
||||
{{else}}
|
||||
{{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks }}
|
||||
{{end}}
|
||||
{{ end }}
|
||||
{{end}}
|
||||
</ul>
|
||||
{{ end }}
|
||||
</li>
|
||||
{{else}}
|
||||
{{ if not .Params.Hidden }}
|
||||
<li data-nav-id="{{.URL}}" class="dd-item
|
||||
{{if eq .UniqueID $currentNode.UniqueID}}active{{end}}
|
||||
">
|
||||
<a href="{{ .RelPermalink}}">
|
||||
<span>{{safeHTML .Params.Pre}}{{.Title}}{{safeHTML .Params.Post}}</span>
|
||||
{{ if $showvisitedlinks}}<i style="color:grey" class="fa fa-circle-thin read-icon"></i>{{end}}
|
||||
</a></li>
|
||||
{{ end }}
|
||||
{{end}}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
@@ -0,0 +1,2 @@
|
||||
<meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}">
|
||||
{{ with .Site.Params.author }}<meta name="author" content="{{ . }}">{{ end }}
|
||||
@@ -0,0 +1,9 @@
|
||||
<nav class="pagination" role="navigation">
|
||||
{{if .HasPrev}}
|
||||
<a class="newer-posts" href="{{ .Prev.URL }}">← {{T "Previous-Pages"}}</a>
|
||||
{{end}}
|
||||
<span class="page-number">{{T "Page"}} {{ .PageNumber }} {{T "pagination-on"}} {{.TotalPages}}</span>
|
||||
{{if .HasNext}}
|
||||
<a class="older-posts" href="{{ .Next.URL }}">{{T "Next-Pages"}} →</a>
|
||||
{{end}}
|
||||
</nav>
|
||||
@@ -0,0 +1,13 @@
|
||||
<script src="{{"js/clipboard.min.js" | relURL}}"></script>
|
||||
<script src="{{"js/featherlight.min.js" | relURL}}"></script>
|
||||
<script src="{{"js/html5shiv-printshiv.min.js" | relURL}}"></script>
|
||||
<script src="{{"js/highlight.pack.js" | relURL}}"></script>
|
||||
<!--<script>hljs.initHighlightingOnLoad();</script>-->
|
||||
<script src="{{"js/modernizr.custom.71422.js" | relURL}}"></script>
|
||||
<script src="{{"js/learn.js" | relURL}}"></script>
|
||||
<script src="{{"js/hugo-learn.js" | relURL}}"></script>
|
||||
|
||||
|
||||
<link href="{{"mermaid/mermaid.css" | relURL}}" type="text/css" rel="stylesheet"/>
|
||||
<script src="{{"mermaid/mermaid.js" | relURL}}"></script>
|
||||
<script>mermaid.initialize({startOnLoad:true});</script>
|
||||
@@ -0,0 +1,11 @@
|
||||
<div class="searchbox">
|
||||
<label for="search-by"><i class="fa fa-search"></i></label>
|
||||
<input data-search-input id="search-by" type="text" placeholder="{{T "Search-placeholder"}}">
|
||||
<span data-search-clear=""><i class="fa fa-close"></i></span>
|
||||
</div>
|
||||
<script type="text/javascript" src="{{"js/lunr.min.js" | relURL}}"></script>
|
||||
<script type="text/javascript" src="{{"js/horsey.js" | relURL}}"></script>
|
||||
<script type="text/javascript">
|
||||
var baseurl = "{{.Site.BaseURL}}";
|
||||
</script>
|
||||
<script type="text/javascript" src="{{"js/search.js" | relURL}}"></script>
|
||||
@@ -0,0 +1,5 @@
|
||||
<div class="progress">
|
||||
<div class="wrapper">
|
||||
{{ .TableOfContents }}
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,6 @@
|
||||
<div class="alert {{ if .IsNamedParams }}
|
||||
{{with .Get "theme" }}alert-{{.}}{{else}}alert-info{{end}}"
|
||||
{{else}}
|
||||
{{with .Get 0 }}alert-{{.}}{{else}}alert-info{{end}}"
|
||||
{{end}}
|
||||
role="alert">{{.Inner}}</div>
|
||||
@@ -0,0 +1 @@
|
||||
<anchor id="anchor-{{.Get "default"}}">{{.Inner}}</anchor>
|
||||