Converted site to Hugo
diff --git a/.gitignore b/.gitignore
index 3eace51..97dd012 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,12 +1,7 @@
-# Jekyll generated
-target
-.jekyll-metadata
-
-# IntelliJ generated
-*.iml
-.idea
-.java-version
-
-# Bundler generated
-.bundle
-vendor/
+# Generated content
+target
+
+# IntelliJ generated
+*.iml
+.idea
+.java-version
diff --git a/Gemfile b/Gemfile
deleted file mode 100644
index 0bd62a9..0000000
--- a/Gemfile
+++ /dev/null
@@ -1,4 +0,0 @@
-source "https://rubygems.org"
-
-gem "jekyll"
-gem "json"
diff --git a/Gemfile.lock b/Gemfile.lock
deleted file mode 100644
index 48b700c..0000000
--- a/Gemfile.lock
+++ /dev/null
@@ -1,65 +0,0 @@
-GEM
- remote: https://rubygems.org/
- specs:
- addressable (2.5.2)
- public_suffix (>= 2.0.2, < 4.0)
- colorator (1.1.0)
- concurrent-ruby (1.1.4)
- em-websocket (0.5.1)
- eventmachine (>= 0.12.9)
- http_parser.rb (~> 0.6.0)
- eventmachine (1.2.7)
- ffi (1.9.25)
- forwardable-extended (2.6.0)
- http_parser.rb (0.6.0)
- i18n (0.9.5)
- concurrent-ruby (~> 1.0)
- jekyll (3.8.5)
- addressable (~> 2.4)
- colorator (~> 1.0)
- em-websocket (~> 0.5)
- i18n (~> 0.7)
- jekyll-sass-converter (~> 1.0)
- jekyll-watch (~> 2.0)
- kramdown (~> 1.14)
- liquid (~> 4.0)
- mercenary (~> 0.3.3)
- pathutil (~> 0.9)
- rouge (>= 1.7, < 4)
- safe_yaml (~> 1.0)
- jekyll-sass-converter (1.5.2)
- sass (~> 3.4)
- jekyll-watch (2.1.2)
- listen (~> 3.0)
- json (2.1.0)
- kramdown (1.17.0)
- liquid (4.0.1)
- listen (3.1.5)
- rb-fsevent (~> 0.9, >= 0.9.4)
- rb-inotify (~> 0.9, >= 0.9.7)
- ruby_dep (~> 1.2)
- mercenary (0.3.6)
- pathutil (0.16.2)
- forwardable-extended (~> 2.6)
- public_suffix (3.0.3)
- rb-fsevent (0.10.3)
- rb-inotify (0.10.0)
- ffi (~> 1.0)
- rouge (3.3.0)
- ruby_dep (1.5.0)
- safe_yaml (1.0.4)
- sass (3.7.2)
- sass-listen (~> 4.0.0)
- sass-listen (4.0.0)
- rb-fsevent (~> 0.9, >= 0.9.4)
- rb-inotify (~> 0.9, >= 0.9.7)
-
-PLATFORMS
- ruby
-
-DEPENDENCIES
- jekyll
- json
-
-BUNDLED WITH
- 1.16.1
diff --git a/README.md b/README.md
index 7dd51b6..c778073 100644
--- a/README.md
+++ b/README.md
@@ -15,9 +15,7 @@
limitations under the License.
-->
# Apache Celix website
-The updated Celix website is still under construction and not live yet.
-
-This is source code for the website of [Apache Celix](https://celix.apache.org/), hosted at:
+This is the source code for the website of [Apache Celix](https://celix.apache.org/), hosted at:
https://celix.apache.org/
@@ -30,8 +28,8 @@
and commit the changes to the `asf-site` branch.
## Content Management System
-The Celix website uses Jekyll as static website generator.
-See [Jekyll](https://jekyllrb.com/) for more info and for details how to install Jekyll.
+The Celix website uses Hugo as static website generator.
+See [Hugo](https://gohugo.io/) for more info and for details how to install Hugo.
## Generate the website
@@ -46,10 +44,10 @@
### Generate the static website
-To generate the static website, execute `run.sh` to generate and serve the website on `localhost:4000`.
+To generate the static website, execute `hugo` to generate and serve the website on `localhost:1313`.
-During development, it may be useful to run an incremental build. For this to work, execute `run_incremental.sh` to
-continuously generate and serve the website on `localhost:4000`.
+During development, it may be useful to run an incremental build. For this to work, execute `hugo server -D` to
+continuously generate and serve the website on `localhost:1313`.
## Publish the website
diff --git a/_config.yml b/_config.yml
deleted file mode 100644
index e4e419f..0000000
--- a/_config.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-name: Apache Celix
-source: source
-destination: target/content
-encoding: UTF-8
-highlighter: rouge
-markdown: kramdown
-markdown_ext: md
-kramdown:
- input: GFM
- syntax_highlighter: rouge
-
-# Allows directly edit pages on GitHub
-celix_repository_url: https://github.com/apache/celix
-celix_repository_source_branch: develop
-
-repository_url: https://github.com/apache/celix-site
-repository_source_branch: master
diff --git a/archetypes/default.md b/archetypes/default.md
new file mode 100644
index 0000000..00e77bd
--- /dev/null
+++ b/archetypes/default.md
@@ -0,0 +1,6 @@
+---
+title: "{{ replace .Name "-" " " | title }}"
+date: {{ .Date }}
+draft: true
+---
+
diff --git a/config.toml b/config.toml
new file mode 100644
index 0000000..1203824
--- /dev/null
+++ b/config.toml
@@ -0,0 +1,36 @@
+baseURL = "http://celix.apache.org"
+title = "Apache Celix"
+languageCode = "en"
+
+contentDir = "source"
+publishDir = "target/content"
+
+uglyURLs = true
+enableRobotsTXT = true
+disableBrowserError = true
+timeout = 3000
+
+disableKinds = ["taxonomy", "taxonomyTerm"]
+ignoreFiles = [ ] # No files to ignore
+
+# Highlighting config. See https://help.farbox.com/pygments.html
+pygmentsCodeFences = true
+pygmentsUseClasses = false
+pygmentsStyle = "emacs"
+
+# Enable Git variables like commit, lastmod
+enableGitInfo = true
+
+[blackfriday]
+hrefTargetBlank = true
+fractions = false
+
+[frontmatter]
+date = ["date", ":filename", "publishDate", "lastmod"]
+
+[params]
+repositoryUrl = "https://github.com/apache/celix"
+repositorySourceBranch = "develop"
+
+siteRepositoryUrl = "https://github.com/apache/celix-site"
+siteRepositorySourceBranch = "master"
diff --git a/extract_celix_docs.sh b/extract_celix_docs.sh
index 6f4fc1e..d7ff47d 100644
--- a/extract_celix_docs.sh
+++ b/extract_celix_docs.sh
@@ -18,14 +18,24 @@
# A script to extract all markdown files from the Celix main repository
# and copies them to the path specified in ${site_doc_dir}
-celix_src_dir=celix-src
-site_doc_dir=source/docs/celix
+CELIX_SRC_DIR=celix-src
+CELIX_DOC_DIR=source/docs/celix
-rm -rf ${site_doc_dir}/*
+rm -rf ${CELIX_DOC_DIR}/*
-for file in `cd ${celix_src_dir}; find . -name \*.md`
-do
- file_dir="`dirname ${file}`"
- mkdir -p ${site_doc_dir}/${file_dir}
- cp -v ${celix_src_dir}/${file} ${site_doc_dir}/${file_dir}
+for FILE_PATH in $(cd ${CELIX_SRC_DIR}; find . -name \*.md); do
+ # Retrieve file information
+ FILE_DIR="$(dirname ${FILE_PATH})"
+ FILE_NAME="$(basename ${FILE_PATH})"
+
+ # Copy markdown file to site destination
+ mkdir -p ${CELIX_DOC_DIR}/${FILE_DIR}
+ cp -v ${CELIX_SRC_DIR}/${FILE_PATH} ${CELIX_DOC_DIR}/${FILE_DIR}
+
+ # Prepend markdown file with Hugo header
+ SECOND_LINE=$(head -n 2 ${FILE_PATH} | tail -n 1)
+
+ if [[ "${SECOND_LINE}" != *"type: celix-doc"* ]]; then
+ sed -i '1s;^;---\ntype: celix-doc\ntitle: ${FILE_NAME}\n---\n\n;' ${FILE_PATH}
+ fi
done
diff --git a/layouts/404.html b/layouts/404.html
new file mode 100644
index 0000000..a94e8c3
--- /dev/null
+++ b/layouts/404.html
@@ -0,0 +1,65 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="description" content="">
+ <meta name="author" content="">
+
+ <title>404 Page Not Found / {{ site.Title }}</title>
+
+ {{ $favicon := "assets/img/favicon.ico" }}
+ <link rel="icon" href="{{ $favicon | relURL }}">
+
+ <!-- Bootstrap core CSS -->
+ <link href="/assets/css/bootstrap.min.css" rel="stylesheet">
+
+ <!-- Custom style -->
+ <link href="/assets/css/style.css" rel="stylesheet">
+</head>
+<body class="light-grey">
+
+{{ partial "header.html" . }}
+{{ $configURL := printf "%s/blob/%s/config.toml" .Site.Params.siteRepositoryUrl .Site.Params.siteRepositorySourceBranch | safeURL }}
+
+<div class="section">
+ <div class="container">
+ <div class="row py-4">
+ <div class="col-sm-12 card">
+ <div class="card-body pt-5">
+ <a class="edit-on-gh" href="{{ .Site.Params.siteRepositoryUrl }}/edit/{{ .Site.Params.siteRepositorySourceBranch }}/layouts/404.html" title="Edit this page on GitHub">Edit on GitHub</a>
+
+ <h1>404 Page Not Found</h1>
+
+ <p>
+ The page was moved or never existed. Use the menu above to navigate or go to <a href="{{ .Site.Home.RelPermalink }}">home page</a>.
+ If you noticed any site problem, typos, etc on any page, please correct
+ using the "Edit on GitHub" button or check on <a href="{{ .Site.Params.siteRepositoryUrl }}">{{ .Site.Params.siteRepositoryUrl }}</a>.
+ For example, the general site config is stored in the <a href="{{ $configURL }}"><code class="highlighter-rouge">config.toml</code></a>.
+ </p>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+{{ partial "footer.html" . }}
+
+</body>
+</html>
diff --git a/source/_layouts/celix-md.html b/layouts/_default/baseof.html
similarity index 73%
rename from source/_layouts/celix-md.html
rename to layouts/_default/baseof.html
index a1f9a11..9d30c84 100644
--- a/source/_layouts/celix-md.html
+++ b/layouts/_default/baseof.html
@@ -22,7 +22,10 @@
<meta name="description" content="">
<meta name="author" content="">
- <title>{{ page.title }} / Apache Celix</title>
+ <title>{{ if .Title }}{{ .Title }} / {{ end }}{{ site.Title }}</title>
+
+ {{ $favicon := "assets/img/favicon.ico" }}
+ <link rel="icon" href="{{ $favicon | relURL }}">
<!-- Bootstrap core CSS -->
<link href="/assets/css/bootstrap.min.css" rel="stylesheet">
@@ -32,24 +35,23 @@
</head>
<body class="light-grey">
-{% include header.html %}
+{{ partial "header.html" . }}
<div class="section">
<div class="container">
<div class="row py-4">
<div class="col-sm-12 card">
<div class="card-body pt-5">
- <a class="edit-on-gh" href="{{ site.celix_repository_url }}/edit/{{ site.celix_repository_source_branch }}/{{ page.path | replace_first:'docs/celix/','' }}" title="Edit this page on GitHub">Edit on GitHub</a>
- <a href="/docs/" title="back to documentation"><< back to documentation</a>
+ <a class="edit-on-gh" href="{{ .Site.Params.siteRepositoryUrl }}/edit/{{ .Site.Params.siteRepositorySourceBranch }}/source/{{ .Page.File.Path }}" title="Edit this page on GitHub">Edit on GitHub</a>
- {{ content }}
+ {{ block "main" . }}{{ end }}
</div>
</div>
</div>
</div>
</div>
-{% include footer.html %}
+{{ partial "footer.html" . }}
</body>
</html>
diff --git a/layouts/_default/list.html b/layouts/_default/list.html
new file mode 100644
index 0000000..c1339be
--- /dev/null
+++ b/layouts/_default/list.html
@@ -0,0 +1,3 @@
+{{ define "main" }}
+ {{ .Content }}
+{{ end }}
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
new file mode 100644
index 0000000..c1339be
--- /dev/null
+++ b/layouts/_default/single.html
@@ -0,0 +1,3 @@
+{{ define "main" }}
+ {{ .Content }}
+{{ end }}
diff --git a/source/_layouts/default.html b/layouts/celix-doc/baseof.html
similarity index 67%
rename from source/_layouts/default.html
rename to layouts/celix-doc/baseof.html
index 24fdb3f..e29b09b 100644
--- a/source/_layouts/default.html
+++ b/layouts/celix-doc/baseof.html
@@ -22,7 +22,10 @@
<meta name="description" content="">
<meta name="author" content="">
- <title>{{ page.title }} / Apache Celix</title>
+ <title>{{ if .Title }}{{ .Title }} / {{ end }}{{ site.Title }}</title>
+
+ {{ $favicon := "assets/img/favicon.ico" }}
+ <link rel="icon" href="{{ $favicon | relURL }}">
<!-- Bootstrap core CSS -->
<link href="/assets/css/bootstrap.min.css" rel="stylesheet">
@@ -32,27 +35,25 @@
</head>
<body class="light-grey">
-{% include header.html %}
+{{ partial "header.html" . }}
<div class="section">
<div class="container">
<div class="row py-4">
<div class="col-sm-12 card">
<div class="card-body pt-5">
- <a class="edit-on-gh" href="{{ site.repository_url }}/edit/{{ site.repository_source_branch }}/source/{{ page.path }}" title="Edit this page on GitHub">Edit on GitHub</a>
+ {{ $page := replaceRE "TODO" "" .Page.File.Path }} <!-- TODO: .*(docs\/celix\/) -->
+ <a class="edit-on-gh" href="{{ .Site.Params.repositoryUrl }}/edit/{{ .Site.Params.repositorySourceBranch }}/{{ $page }}" title="Edit this page on GitHub">Edit on GitHub</a>
+ <a href="/docs/docs.html" title="back to documentation"><< back to documentation</a>
- {% if page.parent %}
- <a href="{{ page.parent.url }}" title="back to {{ page.parent.title }}"><< back to {{ page.parent.title }}</a>
- {% endif %}
-
- {{ content }}
+ {{ block "main" . }}{{ end }}
</div>
</div>
</div>
</div>
</div>
-{% include footer.html %}
+{{ partial "footer.html" . }}
</body>
</html>
diff --git a/layouts/celix-doc/list.html b/layouts/celix-doc/list.html
new file mode 100644
index 0000000..c1339be
--- /dev/null
+++ b/layouts/celix-doc/list.html
@@ -0,0 +1,3 @@
+{{ define "main" }}
+ {{ .Content }}
+{{ end }}
diff --git a/layouts/celix-doc/single.html b/layouts/celix-doc/single.html
new file mode 100644
index 0000000..c1339be
--- /dev/null
+++ b/layouts/celix-doc/single.html
@@ -0,0 +1,3 @@
+{{ define "main" }}
+ {{ .Content }}
+{{ end }}
diff --git a/layouts/index.html b/layouts/index.html
new file mode 100644
index 0000000..b21192a
--- /dev/null
+++ b/layouts/index.html
@@ -0,0 +1,121 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="description" content="">
+ <meta name="author" content="">
+
+ <title>{{ site.Title }}</title>
+
+ {{ $favicon := "assets/img/favicon.ico" }}
+ <link rel="icon" href="{{ $favicon | relURL }}">
+
+ <!-- Bootstrap core CSS -->
+ <link href="/assets/css/bootstrap.min.css" rel="stylesheet">
+
+ <!-- Custom style -->
+ <link href="/assets/css/style.css" rel="stylesheet">
+
+ <!-- Font awesome icon set -->
+ <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous">
+</head>
+<body>
+
+{{ partial "header.html" . }}
+
+<!-- Page Intro -->
+<div class="section">
+ <div class="container my-5">
+ <div class="section no-pad-bot" id="index-banner">
+ <div class="col-sm-12">
+ <h1 class="text-center">Welcome to Apache Celix</h1>
+ </div>
+
+ <div class="row my-4">
+ <img class="text-center mx-auto img-home" src="/assets/img/celix.svg" alt="Celix Logo">
+ </div>
+
+ <div class="col-sm-12 mb-4">
+ <h2 class="text-center">An implementation of the OSGi specification adapted to C and C++</h2>
+ </div>
+
+ <div class="col-sm-12 text-center mx-auto">
+ <a href="/download.cgi" class="btn btn-primary btn-lg mb-1">
+ <i class="fas fa-download"></i> DOWNLOAD
+ </a>
+
+ <a href="/docs/docs.html" class="btn btn-primary btn-lg mb-1">
+ <i class="fas fa-book-open"></i> GETTING STARTED
+ </a>
+ </div>
+ </div>
+ </div>
+</div>
+
+<div class="section light-grey">
+ <div class="container py-3">
+
+ <div class="row my-4">
+ <div class="col-sm-12 card">
+ <div class="card-body">
+ <h4 class="card-title">Welcome to Apache Celix</h4>
+ <p class="card-text">
+ Apache Celix is an implementation of the OSGi specification adapted to C and C++. It is a framework to
+ develop (dynamic) modular software applications using component and/or service-oriented programming.
+ </p>
+
+ <p class="card-text">
+ Apache Celix is primarily developed in C and adds an additional abstraction, in the form of a library, to
+ support for C++.
+ </p>
+
+ <p class="card-text">
+ Modularity in Apache Celix is achieved by supporting - run-time installed - bundles. <code>Bundles</code>
+ are zip files and can contain software modules in the form of shared libraries. <code>Modules</code> can
+ provide and request dynamic services, for and from other modules, by interacting with a provided bundle
+ context. <code>Services</code> in Apache Celix are "plain old" structs with function pointers or "plain
+ old C++ Objects" (POCO).
+ </p>
+ </div>
+ </div>
+ </div>
+
+ <div class="row my-4">
+ <div class="col-sm-12 card">
+ <div class="card-body">
+ <h4 class="card-title">News</h4>
+ <p class="card-text">
+ <strong>30-Jan-2018</strong> - After a successful vote Celix 2.1.0 is released.<br>
+ <strong>26-Oct-2016</strong> - After a successful vote Celix 2.0.0 is released.<br>
+ <strong>16-Jul-2014</strong> - After a successful graduation vote Apache Celix has graduated to a top-level project.<br>
+ <strong>25-Feb-2014</strong> - After a successful vote Celix 1.0.0.incubating is released. The release is now available via the <a href="/download.cgi">download</a> section.<br>
+ <strong>16-Dec-2012</strong> - After a successful vote Celix 0.0.1-incubating is released.<br>
+ </p>
+ </div>
+ </div>
+ </div>
+
+ </div>
+</div>
+
+{{ partial "footer.html" . }}
+
+</body>
+</html>
diff --git a/source/_includes/footer.html b/layouts/partials/footer.html
similarity index 89%
rename from source/_includes/footer.html
rename to layouts/partials/footer.html
index a5b8b3c..cc59f88 100644
--- a/source/_includes/footer.html
+++ b/layouts/partials/footer.html
@@ -4,7 +4,7 @@
<div class="row">
<div class="col-md-8 text-center">
<p class="m-0 text-white">
- Copyright © {{ 'now' | date: "%Y" }} The Apache Software Foundation, Licensed under
+ Copyright © {{ now.Year }} The Apache Software Foundation, Licensed under
the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
<br>
Apache Celix, Celix, Apache, the Apache feather logo and the Apache Celix logo are trademarks of The Apache Software Foundation.
diff --git a/source/_includes/header.html b/layouts/partials/header.html
similarity index 80%
rename from source/_includes/header.html
rename to layouts/partials/header.html
index d65d338..f47aa96 100644
--- a/source/_includes/header.html
+++ b/layouts/partials/header.html
@@ -1,4 +1,4 @@
-<a href="{{ site.celix_repository_url }}" class="github-ribbon">
+<a href="{{ .Site.Params.repositoryUrl }}" class="github-ribbon">
<img src="/assets/img/forkme_right_red_aa0000.png" alt="Fork me on GitHub">
</a>
@@ -13,16 +13,16 @@
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
- {% if page.url == "/" %}<li class="nav-item active">{% else %}<li class="nav-item">{% endif %}
+ {{ if eq .Kind "home" }}<li class="nav-item active">{{ else }}<li class="nav-item">{{ end }}
<a class="nav-link" href="/">Home</a>
</li>
- {% if page.url == "/download.cgi" or page.url == "/download.html" %}<li class="nav-item active">{% else %}<li class="nav-item">{% endif %}
+ {{ if hasPrefix .Page.File.Path "download" }}<li class="nav-item active">{{ else }}<li class="nav-item">{{ end }}
<a class="nav-link" href="/download.cgi">Download</a>
</li>
- {% if page.url contains '/docs/' or page.url contains '/celix/' %}<li class="nav-item active">{% else %}<li class="nav-item">{% endif %}
- <a class="nav-link" href="/docs/">Docs</a>
+ {{ if hasPrefix .Page.File.Path "docs" }}<li class="nav-item active">{{ else }}<li class="nav-item">{{ end }}
+ <a class="nav-link" href="/docs/docs.html">Docs</a>
</li>
- {% if page.url contains '/contributing/' %}<li class="nav-item dropdown active">{% else %}<li class="nav-item dropdown">{% endif %}
+ {{ if hasPrefix .Page.File.Path "contributing" }}<li class="nav-item dropdown active">{{ else }}<li class="nav-item dropdown">{{ end }}
<a class="nav-link dropdown-toggle" href="#" id="ddCommunity" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Community
</a>
@@ -34,7 +34,7 @@
<a class="dropdown-item" href="https://whimsy.apache.org/board/minutes/Celix.html">Board Reports</a>
</div>
</li>
- {% if page.url contains '/support/' %}<li class="nav-item dropdown active">{% else %}<li class="nav-item dropdown">{% endif %}
+ {{ if hasPrefix .Page.File.Path "support" }}<li class="nav-item dropdown active">{{ else }}<li class="nav-item dropdown">{{ end }}
<a class="nav-link dropdown-toggle" href="#" id="ddSupport" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Support
</a>
diff --git a/layouts/robots.txt b/layouts/robots.txt
new file mode 100644
index 0000000..1ce9645
--- /dev/null
+++ b/layouts/robots.txt
@@ -0,0 +1,6 @@
+User-agent: *
+
+Disallow: /404/
+Disallow: 404.html
+
+SITEMAP: {{ "sitemap.xml" | absLangURL }}
diff --git a/layouts/shortcodes/tableofcontents.html b/layouts/shortcodes/tableofcontents.html
new file mode 100644
index 0000000..aca3785
--- /dev/null
+++ b/layouts/shortcodes/tableofcontents.html
@@ -0,0 +1 @@
+{{ .Page.TableOfContents }}
\ No newline at end of file
diff --git a/publish.sh b/publish.sh
index 29b8bb1..37e1414 100644
--- a/publish.sh
+++ b/publish.sh
@@ -15,7 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# A script to build the Celix site (based on jekyll)
+# A script to build the Celix site (based on Hugo)
# specify source and site branches
SOURCE="master"
@@ -27,17 +27,17 @@
# Get the latest commit SHA in SOURCE branch
last_SHA=( $(git log -n 1 --pretty=format:"%H") )
-# use last commit sha as temp folder name
+# Create a temporary folder
tmp_dir=`mktemp -d`
out_dir=${tmp_dir}/content
mkdir -p ${out_dir}
-# Build the Jekyll site to our temporary folder
-bundle exec jekyll build -d ${out_dir} > /dev/null 2>&1
+# Build the site to our temporary folder
+hugo --destination ${out_dir} > /dev/null 2>&1
if [ $? = 0 ]; then
- echo "Jekyll build successful"
+ echo "Hugo build successful"
else
- echo "Jekyll build failed"
+ echo "Hugo build failed"
exit 1
fi
diff --git a/run.sh b/run.sh
deleted file mode 100644
index 8311795..0000000
--- a/run.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env bash
-
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-bundle exec jekyll serve -w --trace --host 0.0.0.0
diff --git a/run_incremental.sh b/run_incremental.sh
deleted file mode 100644
index d6eeb98..0000000
--- a/run_incremental.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env bash
-
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-bundle exec jekyll serve --watch --trace --host=0.0.0.0 --force_polling --incremental
diff --git a/source/404.md b/source/404.md
deleted file mode 100644
index 5ac02da..0000000
--- a/source/404.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-layout: default
-title: 404 Page Not Found
----
-
-# 404 Page Not Found
-
-The page was moved or never existed. Use the menu above to navigate or go to [home page](/).
-If you noticed any site problem, typos, etc on any page, please correct
-using the "Edit on GitHub" button or check on <https://github.com/apache/celix-site>.
-For example, redirects can be configured in [`.htaccess`](https://github.com/apache/celix-site/blob/master/source/.htaccess).
diff --git a/source/_layouts/main-page.html b/source/_layouts/main-page.html
deleted file mode 100644
index 59e8e41..0000000
--- a/source/_layouts/main-page.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements. See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<!DOCTYPE html>
-<html lang="en">
-<head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="description" content="">
- <meta name="author" content="">
-
- <title>{{ page.title }}</title>
-
- <!-- Bootstrap core CSS -->
- <link href="/assets/css/bootstrap.min.css" rel="stylesheet">
-
- <!-- Custom style -->
- <link href="/assets/css/style.css" rel="stylesheet">
-
- <!-- Font awesome icon set -->
- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous">
-</head>
-<body>
-
-{% include header.html %}
-
-{{ content }}
-
-{% include footer.html %}
-
-</body>
-</html>
diff --git a/source/_plugins/remote_file_content.rb b/source/_plugins/remote_file_content.rb
deleted file mode 100644
index dd772e6..0000000
--- a/source/_plugins/remote_file_content.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-require 'net/http'
-require 'uri'
-
-module Jekyll
-
- class RemoteFileContent < Liquid::Tag
-
- def initialize(tag_name, markup, tokens)
- url = markup
-
- puts 'Fetching content of url: ' + url
-
- if url =~ URI::regexp
- @content = removeComments(rewriteLinks(fetchContent(url)))
- else
- raise 'Invalid URL passed to RemoteFileContent'
- end
-
- super
- end
-
- def render(context)
- if @content
- @content
- else
- raise 'Something went wrong in RemoteFileContent'
- end
- end
-
- def fetchContent(url)
- Net::HTTP.get(URI.parse(URI.encode(url.strip))).force_encoding("UTF-8").encode("UTF-8")
- end
-
- def rewriteLinks(c)
- c = c.gsub(/(\[[^\]]*\]\([^:\)]*)\.md\)/, '\1.html)')
- end
-
- def removeComments(c)
- c = c.sub(/\<\!\-([\s\S]*?)\-\>/, '')
- end
-
- end
-end
-
-Liquid::Template.register_tag('remote_file_content', Jekyll::RemoteFileContent)
\ No newline at end of file
diff --git a/source/_plugins/update_celix_markdown.rb b/source/_plugins/update_celix_markdown.rb
deleted file mode 100644
index 8a08f4c..0000000
--- a/source/_plugins/update_celix_markdown.rb
+++ /dev/null
@@ -1,84 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-module Jekyll
-
- class CelixPage < Page
- def initialize(site, base, dir, name)
- @site = site
- @base = base
- @dir = dir
- @name = name
-
- full_path = "source/" + dir
- if !full_path.end_with?("/") then
- full_path += "/"
- end
- full_path += name
-
- file_contents = File.read(full_path, :encoding => 'utf-8')
-
- if !file_contents.start_with?("---") then
- hdr = "---\n"
- hdr += "layout: celix-md\n"
- hdr += "title: " + name + "\n"
- hdr += "---\n\n\n"
-
- edited_file_contents = hdr + file_contents
- out_file = File.new(full_path, "w")
- out_file.puts(edited_file_contents)
- out_file.close
- end
-
- self.process(@name)
- self.read_yaml(File.join(base, '_layouts'), 'celix-md.html')
-
- self.data['title'] = name
-
- super
- end
- end
-
- class CelixPageGenerator < Generator
- safe true
-
- @@celix_doc_dir = "docs/celix"
-
- def generate(site)
- if site.layouts.key? 'celix-md'
- celix_dir = site.source + "/" + @@celix_doc_dir
- celix_markdown = File.join(celix_dir + "/**", "*.md")
-
- Dir.glob(celix_markdown).select{ |e|
- markdown_file = e
-
- spl = markdown_file.rpartition('/')
- file_name = spl.last()
- splDir = spl.first().rpartition('source/' + @@celix_doc_dir)
- file_dir = splDir.last()
-
- if file_dir.start_with?("/") then
- file_dir = file_dir[1, file_dir.length - 1]
- end
-
- file_dir = @@celix_doc_dir + "/" + file_dir
-
- site.pages << CelixPage.new(site, site.source, file_dir, file_name)
- }
- end
- end
- end
-
-end
diff --git a/source/_plugins/update_links.rb b/source/_plugins/update_links.rb
deleted file mode 100644
index 8145f55..0000000
--- a/source/_plugins/update_links.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-module UpdateLinks
- class Generator < Jekyll::Generator
-
- def generate(site)
- site.pages.each { |p| rewriteLinks(site, p) }
- end
-
- def rewriteLinks(site, page)
- if page
- page.content = page.content.gsub(/(\[[^\]]*\]\([^:\)]*)\.md\)/, '\1.html)')
- end
- end
-
- end
-end
\ No newline at end of file
diff --git a/source/contributing/releasing.md b/source/contributing/releasing.md
index 5290900..072c24f 100644
--- a/source/contributing/releasing.md
+++ b/source/contributing/releasing.md
@@ -1,17 +1,14 @@
---
-layout: default
title: Releasing Process
---
# Releasing Apache Celix
-{:.no_toc}
Note: This information is only of use to Apache Celix Release Managers!
Steps to follow:
-* Will be replaced with the ToC, excluding a header
-{:toc}
+{{% tableofcontents %}}
Interesting links:
@@ -57,8 +54,8 @@
set(CELIX_MICRO "Z")
```
-Note: The DEFAULT_VERSION property is used as default version for new bundles and as such does not need to be updated when making a release.
-{:.alert .alert-primary}
+<p class="alert alert-primary">Note: The DEFAULT_VERSION property is used as default version for new bundles and as
+such does not need to be updated when making a release.</p>
## Compile and test
@@ -203,8 +200,8 @@
After this first vote the results must be posted to the "dev" list, see below for more information.
-Note: Be sure to use the \[VOTE\] tag, this is used by the automated vote tracking system to keep track of outstanding vote threads.
-{:.alert .alert-primary}
+<p class="alert alert-primary">Note: Be sure to use the [VOTE] tag, this is used by the automated vote tracking
+system to keep track of outstanding vote threads.</p>
## Post the vote results
As mentioned before, after each vote the results must be posted to the corresponding list. This "Result" vote contains the number
@@ -229,9 +226,8 @@
Thanks for voting.
```
-Note: Be sure to post the vote result with the same topic as the original message. Also prepend the subject
-with \[RESULT\]. This is, again, needed to be able to keep track of vote threads.
-{:.alert .alert-primary}
+<p class="alert alert-primary">Note: Be sure to post the vote result with the same topic as the original message. Also
+prepend the subject with [RESULT]. This is, again, needed to be able to keep track of vote threads.</p>
## Roll out release artifacts
@@ -277,5 +273,4 @@
The Apache Celix Team
```
-Note: the email must be sent from an @apache.org address
-{:.alert .alert-primary}
+<p class="alert alert-primary">Note: the email must be sent from an @apache.org address</p>
diff --git a/source/contributing/submitting-patches.md b/source/contributing/submitting-patches.md
index ed31a35..49f5da0 100644
--- a/source/contributing/submitting-patches.md
+++ b/source/contributing/submitting-patches.md
@@ -1,13 +1,10 @@
---
-layout: default
title: Submitting patches
---
# Submitting patches
-{:.no_toc}
-* Will be replaced with the ToC, excluding a header
-{:toc}
+{{% tableofcontents %}}
## Contributing with GitHub
diff --git a/source/contributing/volunteers.md b/source/contributing/volunteers.md
index bce6c76..fff1642 100644
--- a/source/contributing/volunteers.md
+++ b/source/contributing/volunteers.md
@@ -1,13 +1,10 @@
---
-layout: default
title: Volunteers
---
# Volunteers
-{:.no_toc}
-* Will be replaced with the ToC, excluding a header
-{:toc}
+{{% tableofcontents %}}
The project consists of a diverse group of volunteers who share common values regarding collaborative,
community-based open source development.
diff --git a/source/contributing/youatcelix.md b/source/contributing/youatcelix.md
index 3c06cdf..3269bf7 100644
--- a/source/contributing/youatcelix.md
+++ b/source/contributing/youatcelix.md
@@ -1,5 +1,4 @@
---
-layout: default
title: You at Celix
---
diff --git a/source/docs/celix/CHANGES.md b/source/docs/celix/CHANGES.md
index 1833739..46fc02d 100644
--- a/source/docs/celix/CHANGES.md
+++ b/source/docs/celix/CHANGES.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: CHANGES.md
---
diff --git a/source/docs/celix/README.md b/source/docs/celix/README.md
index 790d971..50b12ed 100644
--- a/source/docs/celix/README.md
+++ b/source/docs/celix/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/config_admin/readme.md b/source/docs/celix/config_admin/readme.md
index f6615c9..03af413 100644
--- a/source/docs/celix/config_admin/readme.md
+++ b/source/docs/celix/config_admin/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/dependency_manager/readme.md b/source/docs/celix/dependency_manager/readme.md
index 3f97edc..0b484a7 100644
--- a/source/docs/celix/dependency_manager/readme.md
+++ b/source/docs/celix/dependency_manager/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/dependency_manager_cxx/readme.md b/source/docs/celix/dependency_manager_cxx/readme.md
index f6cfd50..ed90b36 100644
--- a/source/docs/celix/dependency_manager_cxx/readme.md
+++ b/source/docs/celix/dependency_manager_cxx/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/deployment_admin/README.md b/source/docs/celix/deployment_admin/README.md
index ee3e022..52f7031 100644
--- a/source/docs/celix/deployment_admin/README.md
+++ b/source/docs/celix/deployment_admin/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/device_access/README.md b/source/docs/celix/device_access/README.md
index 62c9804..a9840cd 100644
--- a/source/docs/celix/device_access/README.md
+++ b/source/docs/celix/device_access/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/documents/building/readme.md b/source/docs/celix/documents/building/readme.md
index 544147f..86cc13e 100644
--- a/source/docs/celix/documents/building/readme.md
+++ b/source/docs/celix/documents/building/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/documents/cmake_commands/readme.md b/source/docs/celix/documents/cmake_commands/readme.md
index 1837f55..fe74f70 100644
--- a/source/docs/celix/documents/cmake_commands/readme.md
+++ b/source/docs/celix/documents/cmake_commands/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/documents/getting_started/creating_a_simple_bundle.md b/source/docs/celix/documents/getting_started/creating_a_simple_bundle.md
index 655a1b3..231dc08 100644
--- a/source/docs/celix/documents/getting_started/creating_a_simple_bundle.md
+++ b/source/docs/celix/documents/getting_started/creating_a_simple_bundle.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: creating_a_simple_bundle.md
---
diff --git a/source/docs/celix/documents/getting_started/readme.md b/source/docs/celix/documents/getting_started/readme.md
index 29e7a93..e53644b 100644
--- a/source/docs/celix/documents/getting_started/readme.md
+++ b/source/docs/celix/documents/getting_started/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/documents/getting_started/using_services_with_c.md b/source/docs/celix/documents/getting_started/using_services_with_c.md
index d8ffaf8..6ad0fa1 100644
--- a/source/docs/celix/documents/getting_started/using_services_with_c.md
+++ b/source/docs/celix/documents/getting_started/using_services_with_c.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: using_services_with_c.md
---
diff --git a/source/docs/celix/documents/getting_started/using_services_with_cxx.md b/source/docs/celix/documents/getting_started/using_services_with_cxx.md
index f9f6e77..96fb3d5 100644
--- a/source/docs/celix/documents/getting_started/using_services_with_cxx.md
+++ b/source/docs/celix/documents/getting_started/using_services_with_cxx.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: using_services_with_cxx.md
---
diff --git a/source/docs/celix/documents/intro/readme.md b/source/docs/celix/documents/intro/readme.md
index 5ab5c42..eb79672 100644
--- a/source/docs/celix/documents/intro/readme.md
+++ b/source/docs/celix/documents/intro/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/documents/roadmap/api_v3/readme.md b/source/docs/celix/documents/roadmap/api_v3/readme.md
index 3cd4c11..576e4dd 100644
--- a/source/docs/celix/documents/roadmap/api_v3/readme.md
+++ b/source/docs/celix/documents/roadmap/api_v3/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/documents/roadmap/improvement_ideas.md b/source/docs/celix/documents/roadmap/improvement_ideas.md
index ac11056..1cf877c 100644
--- a/source/docs/celix/documents/roadmap/improvement_ideas.md
+++ b/source/docs/celix/documents/roadmap/improvement_ideas.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: improvement_ideas.md
---
diff --git a/source/docs/celix/documents/roadmap/roadmap.md b/source/docs/celix/documents/roadmap/roadmap.md
index 62f1c8a..a5896e4 100644
--- a/source/docs/celix/documents/roadmap/roadmap.md
+++ b/source/docs/celix/documents/roadmap/roadmap.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: roadmap.md
---
diff --git a/source/docs/celix/documents/subprojects/readme.md b/source/docs/celix/documents/subprojects/readme.md
index a51ac7d..4488cf6 100644
--- a/source/docs/celix/documents/subprojects/readme.md
+++ b/source/docs/celix/documents/subprojects/readme.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: readme.md
---
diff --git a/source/docs/celix/etcdlib/README.md b/source/docs/celix/etcdlib/README.md
index 9a5549d..06592b1 100644
--- a/source/docs/celix/etcdlib/README.md
+++ b/source/docs/celix/etcdlib/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/launcher/README.md b/source/docs/celix/launcher/README.md
index 46570cd..09d5b07 100644
--- a/source/docs/celix/launcher/README.md
+++ b/source/docs/celix/launcher/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/log_service/README.md b/source/docs/celix/log_service/README.md
index c2510e6..ff17d08 100644
--- a/source/docs/celix/log_service/README.md
+++ b/source/docs/celix/log_service/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/log_writer/README.md b/source/docs/celix/log_writer/README.md
index c1efa9c..d2e990a 100644
--- a/source/docs/celix/log_writer/README.md
+++ b/source/docs/celix/log_writer/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/pubsub/README.md b/source/docs/celix/pubsub/README.md
index c516640..5cc3cfe 100644
--- a/source/docs/celix/pubsub/README.md
+++ b/source/docs/celix/pubsub/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/pubsub/examples/keys/README.md b/source/docs/celix/pubsub/examples/keys/README.md
index 6741b73..a35695c 100644
--- a/source/docs/celix/pubsub/examples/keys/README.md
+++ b/source/docs/celix/pubsub/examples/keys/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/pubsub/pubsub_admin_udp_mc/README.md b/source/docs/celix/pubsub/pubsub_admin_udp_mc/README.md
index 3cfd84a..565ef6f 100644
--- a/source/docs/celix/pubsub/pubsub_admin_udp_mc/README.md
+++ b/source/docs/celix/pubsub/pubsub_admin_udp_mc/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/remote_services/README.md b/source/docs/celix/remote_services/README.md
index d3be604..5050bd0 100644
--- a/source/docs/celix/remote_services/README.md
+++ b/source/docs/celix/remote_services/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/remote_services/discovery_etcd/README.md b/source/docs/celix/remote_services/discovery_etcd/README.md
index 376797c..b5829d2 100644
--- a/source/docs/celix/remote_services/discovery_etcd/README.md
+++ b/source/docs/celix/remote_services/discovery_etcd/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/remote_services/remote_service_admin/README.md b/source/docs/celix/remote_services/remote_service_admin/README.md
index 2d536a6..4abc94a 100644
--- a/source/docs/celix/remote_services/remote_service_admin/README.md
+++ b/source/docs/celix/remote_services/remote_service_admin/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/remote_services/topology_manager/README.md b/source/docs/celix/remote_services/topology_manager/README.md
index 332944d..bae7405 100644
--- a/source/docs/celix/remote_services/topology_manager/README.md
+++ b/source/docs/celix/remote_services/topology_manager/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/remote_shell/README.md b/source/docs/celix/remote_shell/README.md
index b21b761..fd8cd8b 100644
--- a/source/docs/celix/remote_shell/README.md
+++ b/source/docs/celix/remote_shell/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/shell/README.md b/source/docs/celix/shell/README.md
index 5718e91..df6a60f 100644
--- a/source/docs/celix/shell/README.md
+++ b/source/docs/celix/shell/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/shell_tui/README.md b/source/docs/celix/shell_tui/README.md
index cb3703b..164d258 100644
--- a/source/docs/celix/shell_tui/README.md
+++ b/source/docs/celix/shell_tui/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/utils/README.md b/source/docs/celix/utils/README.md
index a13be7e..b8e58b6 100644
--- a/source/docs/celix/utils/README.md
+++ b/source/docs/celix/utils/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/utils/docs/thpool/Design.md b/source/docs/celix/utils/docs/thpool/Design.md
index 8444b68..20705ca 100644
--- a/source/docs/celix/utils/docs/thpool/Design.md
+++ b/source/docs/celix/utils/docs/thpool/Design.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: Design.md
---
diff --git a/source/docs/celix/utils/docs/thpool/FAQ.md b/source/docs/celix/utils/docs/thpool/FAQ.md
index fb7f221..7a9c2e6 100644
--- a/source/docs/celix/utils/docs/thpool/FAQ.md
+++ b/source/docs/celix/utils/docs/thpool/FAQ.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: FAQ.md
---
diff --git a/source/docs/celix/utils/docs/thpool/README.md b/source/docs/celix/utils/docs/thpool/README.md
index 2016970..d0fe29b 100644
--- a/source/docs/celix/utils/docs/thpool/README.md
+++ b/source/docs/celix/utils/docs/thpool/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/celix/utils/public/include/memstream/README.md b/source/docs/celix/utils/public/include/memstream/README.md
index 0c83ce9..3e5fcaf 100644
--- a/source/docs/celix/utils/public/include/memstream/README.md
+++ b/source/docs/celix/utils/public/include/memstream/README.md
@@ -1,5 +1,5 @@
---
-layout: celix-md
+type: celix-doc
title: README.md
---
diff --git a/source/docs/index.md b/source/docs/docs.md
similarity index 85%
rename from source/docs/index.md
rename to source/docs/docs.md
index 340dbed..e1b1d83 100644
--- a/source/docs/index.md
+++ b/source/docs/docs.md
@@ -1,10 +1,8 @@
---
-layout: default
title: Documentation
---
# Documentation
-[Edit on GitHub]({{ site.repository_url }}/edit/master/source/{{ page.path }}){: .edit-on-gh title="Edit this page on GitHub"}
Get started with Celix by going through the appropriate content.
diff --git a/source/download.md b/source/download.md
index 53f4bc6..2fa9225 100644
--- a/source/download.md
+++ b/source/download.md
@@ -1,5 +1,4 @@
---
-layout: default
title: Download
---
diff --git a/source/index.html b/source/index.html
deleted file mode 100644
index c97f834..0000000
--- a/source/index.html
+++ /dev/null
@@ -1,79 +0,0 @@
----
-layout: main-page
-title: Welcome to Apache Celix
----
-
-<!-- Page Intro -->
-<div class="section">
- <div class="container my-5">
- <div class="section no-pad-bot" id="index-banner">
- <div class="col-sm-12">
- <h1 class="text-center">Welcome to Apache Celix</h1>
- </div>
-
- <div class="row my-4">
- <img class="text-center mx-auto img-home" src="/assets/img/celix.svg" alt="Celix Logo">
- </div>
-
- <div class="col-sm-12 mb-4">
- <h2 class="text-center">An implementation of the OSGi specification adapted to C and C++</h2>
- </div>
-
- <div class="col-sm-12 text-center mx-auto">
- <a href="/download.cgi" class="btn btn-primary btn-lg mb-1">
- <i class="fas fa-download"></i> DOWNLOAD
- </a>
-
- <a href="/docs/" class="btn btn-primary btn-lg mb-1">
- <i class="fas fa-book-open"></i> GETTING STARTED
- </a>
- </div>
- </div>
- </div>
-</div>
-
-<div class="section light-grey">
- <div class="container py-3">
-
- <div class="row my-4">
- <div class="col-sm-12 card">
- <div class="card-body">
- <h4 class="card-title">Welcome to Apache Celix</h4>
- <p class="card-text">
- Apache Celix is an implementation of the OSGi specification adapted to C and C++. It is a framework to
- develop (dynamic) modular software applications using component and/or service-oriented programming.
- </p>
-
- <p class="card-text">
- Apache Celix is primarily developed in C and adds an additional abstraction, in the form of a library, to
- support for C++.
- </p>
-
- <p class="card-text">
- Modularity in Apache Celix is achieved by supporting - run-time installed - bundles. <code>Bundles</code>
- are zip files and can contain software modules in the form of shared libraries. <code>Modules</code> can
- provide and request dynamic services, for and from other modules, by interacting with a provided bundle
- context. <code>Services</code> in Apache Celix are "plain old" structs with function pointers or "plain
- old C++ Objects" (POCO).
- </p>
- </div>
- </div>
- </div>
-
- <div class="row my-4">
- <div class="col-sm-12 card">
- <div class="card-body">
- <h4 class="card-title">News</h4>
- <p class="card-text">
- <strong>30-Jan-2018</strong> - After a successful vote Celix 2.1.0 is released.<br>
- <strong>26-Oct-2016</strong> - After a successful vote Celix 2.0.0 is released.<br>
- <strong>16-Jul-2014</strong> - After a successful graduation vote Apache Celix has graduated to a top-level project.<br>
- <strong>25-Feb-2014</strong> - After a successful vote Celix 1.0.0.incubating is released. The release is now available via the <a href="/download.cgi">download</a> section.<br>
- <strong>16-Dec-2012</strong> - After a successful vote Celix 0.0.1-incubating is released.<br>
- </p>
- </div>
- </div>
- </div>
-
- </div>
-</div>
diff --git a/source/robots.txt b/source/robots.txt
deleted file mode 100644
index 7d329b1..0000000
--- a/source/robots.txt
+++ /dev/null
@@ -1 +0,0 @@
-User-agent: *
diff --git a/source/support/issue-tracking.md b/source/support/issue-tracking.md
index d768351..6f8e65f 100644
--- a/source/support/issue-tracking.md
+++ b/source/support/issue-tracking.md
@@ -1,5 +1,4 @@
---
-layout: default
title: Issue Tracking
---
diff --git a/source/support/mailing-list.md b/source/support/mailing-list.md
index f41b6fe..6796be1 100644
--- a/source/support/mailing-list.md
+++ b/source/support/mailing-list.md
@@ -1,5 +1,4 @@
---
-layout: default
title: Mailing Lists
---
@@ -11,11 +10,10 @@
**HEADS UP!**
-A message sent to a public mailing list cannot be unpublished. Although we might be able to modify our own mail archives,
+<p class="alert alert-primary">A message sent to a public mailing list cannot be unpublished. Although we might be able to modify our own mail archives,
the message is mirrored to a lot of other archiving systems which we do not have under control. Therefore almost 100%
-of all delete requests are denied. Please make sure you **do not send any potential sensitive information to the mailing list**,
-including passwords, server names, ips and so on.
-{:.alert .alert-primary}
+of all delete requests are denied. Please make sure you <strong>do not send any potential sensitive information to the mailing list</strong>,
+including passwords, server names, ips and so on.</p>
## Lists
diff --git a/source/.htaccess b/static/.htaccess
similarity index 99%
rename from source/.htaccess
rename to static/.htaccess
index 0c3e605..2d86f59 100644
--- a/source/.htaccess
+++ b/static/.htaccess
@@ -1,18 +1,18 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-DirectoryIndex index.html
-
-ErrorDocument 404 /404.html
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DirectoryIndex index.html
+
+ErrorDocument 404 /404.html
\ No newline at end of file
diff --git a/source/assets/css/bootstrap-grid.css b/static/assets/css/bootstrap-grid.css
similarity index 100%
rename from source/assets/css/bootstrap-grid.css
rename to static/assets/css/bootstrap-grid.css
diff --git a/source/assets/css/bootstrap-grid.css.map b/static/assets/css/bootstrap-grid.css.map
similarity index 100%
rename from source/assets/css/bootstrap-grid.css.map
rename to static/assets/css/bootstrap-grid.css.map
diff --git a/source/assets/css/bootstrap-grid.min.css b/static/assets/css/bootstrap-grid.min.css
similarity index 100%
rename from source/assets/css/bootstrap-grid.min.css
rename to static/assets/css/bootstrap-grid.min.css
diff --git a/source/assets/css/bootstrap-grid.min.css.map b/static/assets/css/bootstrap-grid.min.css.map
similarity index 100%
rename from source/assets/css/bootstrap-grid.min.css.map
rename to static/assets/css/bootstrap-grid.min.css.map
diff --git a/source/assets/css/bootstrap-reboot.css b/static/assets/css/bootstrap-reboot.css
similarity index 100%
rename from source/assets/css/bootstrap-reboot.css
rename to static/assets/css/bootstrap-reboot.css
diff --git a/source/assets/css/bootstrap-reboot.css.map b/static/assets/css/bootstrap-reboot.css.map
similarity index 100%
rename from source/assets/css/bootstrap-reboot.css.map
rename to static/assets/css/bootstrap-reboot.css.map
diff --git a/source/assets/css/bootstrap-reboot.min.css b/static/assets/css/bootstrap-reboot.min.css
similarity index 100%
rename from source/assets/css/bootstrap-reboot.min.css
rename to static/assets/css/bootstrap-reboot.min.css
diff --git a/source/assets/css/bootstrap-reboot.min.css.map b/static/assets/css/bootstrap-reboot.min.css.map
similarity index 100%
rename from source/assets/css/bootstrap-reboot.min.css.map
rename to static/assets/css/bootstrap-reboot.min.css.map
diff --git a/source/assets/css/bootstrap.css b/static/assets/css/bootstrap.css
similarity index 100%
rename from source/assets/css/bootstrap.css
rename to static/assets/css/bootstrap.css
diff --git a/source/assets/css/bootstrap.css.map b/static/assets/css/bootstrap.css.map
similarity index 100%
rename from source/assets/css/bootstrap.css.map
rename to static/assets/css/bootstrap.css.map
diff --git a/source/assets/css/bootstrap.min.css b/static/assets/css/bootstrap.min.css
similarity index 100%
rename from source/assets/css/bootstrap.min.css
rename to static/assets/css/bootstrap.min.css
diff --git a/source/assets/css/bootstrap.min.css.map b/static/assets/css/bootstrap.min.css.map
similarity index 100%
rename from source/assets/css/bootstrap.min.css.map
rename to static/assets/css/bootstrap.min.css.map
diff --git a/source/assets/css/style.css b/static/assets/css/style.css
similarity index 100%
rename from source/assets/css/style.css
rename to static/assets/css/style.css
diff --git a/source/assets/img/apache.png b/static/assets/img/apache.png
similarity index 100%
rename from source/assets/img/apache.png
rename to static/assets/img/apache.png
Binary files differ
diff --git a/source/assets/img/celix-white.svg b/static/assets/img/celix-white.svg
similarity index 100%
rename from source/assets/img/celix-white.svg
rename to static/assets/img/celix-white.svg
diff --git a/source/assets/img/celix.svg b/static/assets/img/celix.svg
similarity index 100%
rename from source/assets/img/celix.svg
rename to static/assets/img/celix.svg
diff --git a/source/favicon.ico b/static/assets/img/favicon.ico
similarity index 100%
rename from source/favicon.ico
rename to static/assets/img/favicon.ico
Binary files differ
diff --git a/source/assets/img/forkme_right_red_aa0000.png b/static/assets/img/forkme_right_red_aa0000.png
similarity index 100%
rename from source/assets/img/forkme_right_red_aa0000.png
rename to static/assets/img/forkme_right_red_aa0000.png
Binary files differ
diff --git a/source/assets/img/icon-primer.svg b/static/assets/img/icon-primer.svg
similarity index 100%
rename from source/assets/img/icon-primer.svg
rename to static/assets/img/icon-primer.svg
diff --git a/source/assets/js/bootstrap.bundle.js b/static/assets/js/bootstrap.bundle.js
similarity index 100%
rename from source/assets/js/bootstrap.bundle.js
rename to static/assets/js/bootstrap.bundle.js
diff --git a/source/assets/js/bootstrap.bundle.js.map b/static/assets/js/bootstrap.bundle.js.map
similarity index 100%
rename from source/assets/js/bootstrap.bundle.js.map
rename to static/assets/js/bootstrap.bundle.js.map
diff --git a/source/assets/js/bootstrap.bundle.min.js b/static/assets/js/bootstrap.bundle.min.js
similarity index 100%
rename from source/assets/js/bootstrap.bundle.min.js
rename to static/assets/js/bootstrap.bundle.min.js
diff --git a/source/assets/js/bootstrap.bundle.min.js.map b/static/assets/js/bootstrap.bundle.min.js.map
similarity index 100%
rename from source/assets/js/bootstrap.bundle.min.js.map
rename to static/assets/js/bootstrap.bundle.min.js.map
diff --git a/source/assets/js/bootstrap.js b/static/assets/js/bootstrap.js
similarity index 100%
rename from source/assets/js/bootstrap.js
rename to static/assets/js/bootstrap.js
diff --git a/source/assets/js/bootstrap.js.map b/static/assets/js/bootstrap.js.map
similarity index 100%
rename from source/assets/js/bootstrap.js.map
rename to static/assets/js/bootstrap.js.map
diff --git a/source/assets/js/bootstrap.min.js b/static/assets/js/bootstrap.min.js
similarity index 100%
rename from source/assets/js/bootstrap.min.js
rename to static/assets/js/bootstrap.min.js
diff --git a/source/assets/js/bootstrap.min.js.map b/static/assets/js/bootstrap.min.js.map
similarity index 100%
rename from source/assets/js/bootstrap.min.js.map
rename to static/assets/js/bootstrap.min.js.map
diff --git a/source/assets/js/jquery.js b/static/assets/js/jquery.js
similarity index 100%
rename from source/assets/js/jquery.js
rename to static/assets/js/jquery.js
diff --git a/source/assets/js/jquery.min.js b/static/assets/js/jquery.min.js
similarity index 100%
rename from source/assets/js/jquery.min.js
rename to static/assets/js/jquery.min.js
diff --git a/source/assets/js/jquery.slim.js b/static/assets/js/jquery.slim.js
similarity index 100%
rename from source/assets/js/jquery.slim.js
rename to static/assets/js/jquery.slim.js
diff --git a/source/assets/js/jquery.slim.min.js b/static/assets/js/jquery.slim.min.js
similarity index 100%
rename from source/assets/js/jquery.slim.min.js
rename to static/assets/js/jquery.slim.min.js