From 3858d5aee74ad22c2c0ef4be41c48b0a85f18d95 Mon Sep 17 00:00:00 2001
From: Ola Rubaj <52197250+olayway@users.noreply.github.com>
Date: Mon, 19 Aug 2024 15:54:43 +0200
Subject: [PATCH] copy over DataHub Cloud docs from
datahubio/datahub-cloud-template-dataset/docs
Related to: https://github.com/datopian/datahub/issues/1286
---
datahub-cloud/Add sidebar navigation.md | 21 +
.../Add visuals and data-rich components.md | 618 ++++++++++++++++++
datahub-cloud/Auto-Sync of your Site.md | 11 +
.../Configuring Nav bar and SEO fields.md | 84 +++
...ratch and publish it with Datahub Cloud.md | 98 +++
...tomize Your DataHub Cloud Site with CSS.md | 226 +++++++
...n Obsidian vault to a Github repository.md | 64 ++
datahub-cloud/Markdown syntax support.md | 365 +++++++++++
datahub-cloud/Publish data-rich stories.md | 402 ++++++++++++
datahub-cloud/README.md | 98 +++
datahub-cloud/assets/Auto-sync.png | Bin 0 -> 18212 bytes
.../assets/Pasted image 20240514091335.png | Bin 0 -> 727842 bytes
.../assets/Pasted image 20240514091658.png | Bin 0 -> 734184 bytes
.../assets/Pasted image 20240514091853.png | Bin 0 -> 921732 bytes
.../assets/Pasted image 20240515003021.png | Bin 0 -> 1045746 bytes
.../assets/Pasted image 20240515003051.png | Bin 0 -> 958134 bytes
.../assets/Pasted image 20240515010227.png | Bin 0 -> 797448 bytes
.../assets/Pasted image 20240515010236.png | Bin 0 -> 836121 bytes
.../assets/Pasted image 20240515010252.png | Bin 0 -> 970729 bytes
.../assets/Pasted image 20240517224144.png | Bin 0 -> 781843 bytes
.../assets/Pasted image 20240517225336.png | Bin 0 -> 1122710 bytes
.../assets/Pasted image 20240520152011.png | Bin 0 -> 766152 bytes
.../assets/Pasted image 20240520152158.png | Bin 0 -> 22597 bytes
.../assets/Pasted image 20240520154639.png | Bin 0 -> 49259 bytes
.../assets/Pasted image 20240520155132.png | Bin 0 -> 44383 bytes
datahub-cloud/assets/Screenshot1.png | Bin 0 -> 179792 bytes
datahub-cloud/assets/Screenshot2.png | Bin 0 -> 248409 bytes
datahub-cloud/assets/Screenshot3.png | Bin 0 -> 1133664 bytes
datahub-cloud/assets/config.json | 3 +
datahub-cloud/assets/css-tutorial-1.png | Bin 0 -> 1903825 bytes
datahub-cloud/assets/css-tutorial-2.png | Bin 0 -> 1909120 bytes
datahub-cloud/assets/css-tutorial-3.png | Bin 0 -> 958437 bytes
datahub-cloud/assets/css-tutorial-4.png | Bin 0 -> 1008335 bytes
datahub-cloud/config.json | 3 +
datahub-cloud/custom.css | 81 +++
datahub-cloud/data.csv | 8 +
36 files changed, 2082 insertions(+)
create mode 100644 datahub-cloud/Add sidebar navigation.md
create mode 100644 datahub-cloud/Add visuals and data-rich components.md
create mode 100644 datahub-cloud/Auto-Sync of your Site.md
create mode 100644 datahub-cloud/Configuring Nav bar and SEO fields.md
create mode 100644 datahub-cloud/Create a dataset from scratch and publish it with Datahub Cloud.md
create mode 100644 datahub-cloud/Customize Your DataHub Cloud Site with CSS.md
create mode 100644 datahub-cloud/How to push an Obsidian vault to a Github repository.md
create mode 100644 datahub-cloud/Markdown syntax support.md
create mode 100644 datahub-cloud/Publish data-rich stories.md
create mode 100644 datahub-cloud/README.md
create mode 100644 datahub-cloud/assets/Auto-sync.png
create mode 100644 datahub-cloud/assets/Pasted image 20240514091335.png
create mode 100644 datahub-cloud/assets/Pasted image 20240514091658.png
create mode 100644 datahub-cloud/assets/Pasted image 20240514091853.png
create mode 100644 datahub-cloud/assets/Pasted image 20240515003021.png
create mode 100644 datahub-cloud/assets/Pasted image 20240515003051.png
create mode 100644 datahub-cloud/assets/Pasted image 20240515010227.png
create mode 100644 datahub-cloud/assets/Pasted image 20240515010236.png
create mode 100644 datahub-cloud/assets/Pasted image 20240515010252.png
create mode 100644 datahub-cloud/assets/Pasted image 20240517224144.png
create mode 100644 datahub-cloud/assets/Pasted image 20240517225336.png
create mode 100644 datahub-cloud/assets/Pasted image 20240520152011.png
create mode 100644 datahub-cloud/assets/Pasted image 20240520152158.png
create mode 100644 datahub-cloud/assets/Pasted image 20240520154639.png
create mode 100644 datahub-cloud/assets/Pasted image 20240520155132.png
create mode 100644 datahub-cloud/assets/Screenshot1.png
create mode 100644 datahub-cloud/assets/Screenshot2.png
create mode 100644 datahub-cloud/assets/Screenshot3.png
create mode 100644 datahub-cloud/assets/config.json
create mode 100644 datahub-cloud/assets/css-tutorial-1.png
create mode 100644 datahub-cloud/assets/css-tutorial-2.png
create mode 100644 datahub-cloud/assets/css-tutorial-3.png
create mode 100644 datahub-cloud/assets/css-tutorial-4.png
create mode 100644 datahub-cloud/config.json
create mode 100644 datahub-cloud/custom.css
create mode 100644 datahub-cloud/data.csv
diff --git a/datahub-cloud/Add sidebar navigation.md b/datahub-cloud/Add sidebar navigation.md
new file mode 100644
index 0000000..5b163f7
--- /dev/null
+++ b/datahub-cloud/Add sidebar navigation.md
@@ -0,0 +1,21 @@
+---
+title: "Add sidebar navigation"
+---
+
+
+
A well-structured sidebar can significantly enhance the usability and navigability of your documentation or data site. With Datahub Cloud, you can easily implement sidebar navigation to help users quickly find and access the content they need. This section will guide you through the steps to add and customize a sidebar for your site.
+
+
+## Add sidebar navigation
+
+You can enable the sidebar by adding config.json file in the root of your site's repository (or its subfolder if you're publishing only this subfolder with DH Cloud) with the following content:
+
+```
+{
+ "showSidebar": true
+}
+```
+
+Here's how it should look like:"
+
+![[./assets/Screenshot3.png]]
diff --git a/datahub-cloud/Add visuals and data-rich components.md b/datahub-cloud/Add visuals and data-rich components.md
new file mode 100644
index 0000000..7484750
--- /dev/null
+++ b/datahub-cloud/Add visuals and data-rich components.md
@@ -0,0 +1,618 @@
+---
+title: "Add visuals and data-rich components"
+---
+
+
+
With Datahub Cloud, you can easily add various visual and data-rich components to your datasets or data stories, making them more engaging and insightful. This section will guide you through the process of incorporating charts, graphs, and other visual elements to bring your data to life.
+
+
+> [!info] Github is playing the role of your Editor.
+> Any changes you want to make to your published site, you need to make in your GitHub repository first.
+> Once you hit "sync" on your Site dashboard, the changes get reflected on your published site (unless you turn on the Auto-sync)
+
+You can check the full list and API of the available features here [https://storybook.portaljs.org](https://storybook.portaljs.org)
+
+# Table of Contents
+
+# Inserting a component
+
+1. Select the desired component you want to add from the sidebar list:
+
+![[./assets/Screenshot1.png]]
+
+2. Click on "Docs"
+3. Hit "Show code" at the bottom right of the showcased feature
+
+![[./assets/Screenshot2.png]]
+
+6. Copy-paste the code into your markdown file in your GitHub repository
+7. Commit the changes made
+8. Navigate back to the App and hit "Sync"
+9. Visit your site or refresh the page in order to see the reflected changes
+
+> [!info] To import a feature from URL, simply upload your data file to your Github repository and replace the URL in the copied code. Relative paths are supported.
+> For concrete examples, please continue reading.
+
+## Different ways to insert a component
+
+Depending on the type of feature you selected from the list https://storybook.portaljs.org, you need to copy-paste the code block into your md file and:
+
+1) update the params _(refer to the params in the docs and their description)_ or
+2) update the CSV link with the link of your data file (you can also use a relative path) or
+3) update the URL to one of your own file and
+4) Publish it with Datahub Cloud and share it with the world!
+
+# What features are supported?
+
+You can use several data preview and data visualization components to make your dataset more insightful.
+
+> [!hint]
+> If the feature you need isn't on the list, ping us on [discord](https://discord.gg/KZSf3FG4EZ) or create an issue in the [datahub repository](https://github.com/datopian/datahub/issues) requesting it and we promise to look into it!
+
+## Catalog
+
+If your dataset is part of a larger dataset collection, you may want to start by listing the related datasets here in a catalog-like component with search and facets like this one:
+
+
+
+Simply copy and paste the following code snippet in the markdown file in your Github repository:
+
+```
+
+```
+
+Now update the values to reflect your datasets data (title, path) and the facet values relevant to your data.
+
+## Excel
+
+If you're working a lot with Excel files, you can embed a preview of your file such as this one:
+
+
+
+This component allows you to present all tabs in your Excel file. You can sort the rows by clicking on the Column name and you can also filter each column by clicking on the triple bar symbol next to the Column name.
+
+Simply copy and paste the following code snippet in the markdown file in your Github repository:
+
+```
+
+```
+
+Then upload your Excel file to your Github repository and replace the URL with the URL of the uploaded file (absolute and relative paths are supported).
+
+## Data Table
+
+Let's continue by adding a table of your data like the one below:
+
+
+
+Simply copy and paste the following code snippet in the markdown file in your Github repository:
+
+```
+
+```
+
+ To get this data replaced with your data, upload your csv file to your repository and update the URL
+
+## Iframe
+
+If you're working with Microsoft Power BI reports or Google Lookerstudio or any similar, you can embed them within your page as follows:
+
+
+
+Simply copy and paste the following code snippet in the markdown file in your GitHub repository:
+
+```
+
+```
+
+The only thing you need to do after that is to replace the URL with the correct one.
+
+
+## PdfViewer
+
+You can also embed a view of a PDF file such as this one:
+
+
+
+Simply copy and paste the following code snippet in the markdown file in your Github repository:
+
+```
+
+```
+
+Then update the url to lead to your pdf file.
+
+> [!tip]
+> The easiest way would be to upload it to the Github repository and use the relative/absolute path
+
+## Line and Bar Charts
+
+Here's a quick line chart:
+
+
+
+You can add this line chart component by simply:
+
+1) Uploading your data CSV file to your repository
+2) Copy-pasting the below snippet into the markdown file in your repository
+3) Updating the URL (relative path)
+4) Updating the params (data, title, xAxis, yAxis) to reflect the relevant data
+
+```
+
+```
+
+> [!note]
+> There are also other types of charts and graphs you can use to enhance your dataset. You can create charts with Plotly or VegaLite.
+
+### Plotly charts
+
+> [!info] Bar Chart
+
+You can insert a Plotly Bar Chart like this one:
+
+
+
+Simply copy and paste the following code snippet and update the URL and the title, xAxis, yAxis to reflect your data points:
+
+```
+
+```
+
+
+
+> [!info] Line Chart
+
+Same goes for this Line Chart:
+
+
+
+Copy and paste the following code snippet and update the URL and the title, xAxis, yAxis to reflect your data points:
+
+```
+
+```
+
+### VegaLite Charts
+
+> [!info] VegaLite Charts are also supported
+
+
+
+If you want to add it, copy paste the below snippet and insert it in your markdown file:
+
+```
+
+```
+
+Now update the values to reflect your data points and you're done!
+
+## Map
+
+In case you're dealing with geo data, you can visualize your data on a GeoJSON polygons and points map with auto zoom in the points layer:
+
+
+
+Just copy paste the following snippet and update the values and urls to reflect your data:
+
+```
+
+```
+
+> Make sure to upload your geoJSON file to the Github repository and update the params in the code.
+
diff --git a/datahub-cloud/Auto-Sync of your Site.md b/datahub-cloud/Auto-Sync of your Site.md
new file mode 100644
index 0000000..6edb698
--- /dev/null
+++ b/datahub-cloud/Auto-Sync of your Site.md
@@ -0,0 +1,11 @@
+---
+title: "Auto-Sync of your Site"
+---
+
+# Auto-Sync of your Site
+
+Auto-sync is enabled by default for newly created sites. This means the changes committed to your repository will automatically be reflected on your published site. You can choose to disable that if you want an additional layer of control before the changes get reflected on your published site.
+
+You can easily toggle this option on or off on your site's settings page.
+
+![[./assets/Auto-sync.png]]
diff --git a/datahub-cloud/Configuring Nav bar and SEO fields.md b/datahub-cloud/Configuring Nav bar and SEO fields.md
new file mode 100644
index 0000000..2061487
--- /dev/null
+++ b/datahub-cloud/Configuring Nav bar and SEO fields.md
@@ -0,0 +1,84 @@
+---
+title: How to Configure Basic SEO Fields and Nav Bar in Your DataHub Cloud Sites
+---
+
+You can now personalize your DataHub Cloud site by:
+- setting your own site-wide SEO title and description
+- changing the navbar's logo and title, and adding your own navigation links
+- switching from top navbar to sidebar with all your site's pages.
+
+## Meet `config.json` file
+
+Any site-wide configurations of your DataHub Cloud sites (other than the ones you can find in the dashboard's site settings page) can be applied via root-level `config.json` file. We'll explore each of the available config options below. If you want to follow, first create this file in your site's repo.
+
+> [!tip]
+> You can find a full `config.json` file example in our [template repository](https://github.com/datahubio/datahub-cloud-template/tree/main).
+
+## Improve SEO by Setting Your Site's Title and Description
+
+You can change your site's default SEO title and description by setting the following config fields:
+- `title`: default SEO title for your site (will be used as a fallback value for pages without a title set); **note**: this title will also be used in your site's navbar
+- `description`: default SEO title for your site (will be used as a fallback value for pages without a title set)
+
+For example, putting the following in the `config.json` file:
+
+```json
+{
+ "title": "Joe's Digital Garden",
+ "description": "Welcome to my personal travel blog, where I share my experiences and travel tips."
+}
+```
+
+...will result in the following SEO values (note, that `title` tag's value is set to the actual page title, which takes precedence over the site-wide title):
+
+![[./assets/Pasted image 20240520152158.png]]
+
+... and the following navbar title change:
+![[./assets/Pasted image 20240520152011.png]]
+
+## Changing Navbar's Logo, Title and Links
+
+As you just saw, setting the `title` field in `config.json` already changes/sets the navbar title. But the logo is still the default one. To change it, you can add a local path or an external URL to your logo in the `logo` field, like this:
+
+```json
+{
+ "logo": "logo.jpeg"
+}
+```
+
+Now we have the navbar title and logo changed, but there are still default DataHub links in there. To change those to your custom links you can include `navLinks` field in your `config.json` file, with each link having the following fields:
+- `name`: label of the link
+- `href`: the actual link
+
+For example:
+
+```json
+{
+ "navLinks": [
+ {
+ "href": "/blog",
+ "name": "Blog"
+ },
+ {
+ "href": "/about",
+ "name": "About"
+ },
+ {
+ "href": "https://twitter.com/datopian",
+ "name": "Follow me on twitter!"
+ }
+ ]
+}
+```
+
+![[./assets/Pasted image 20240520155132.png]]
+
+## Conclusion
+
+Congratulations! You've just learned how to configure basic SEO fields and the navigation bar of your DataHub Cloud site using `config.json` file.
+
+---
+
+If you encounter any issues or have questions, the DataHub Cloud community and support team are here to help.
+
+Happy hacking!
diff --git a/datahub-cloud/Create a dataset from scratch and publish it with Datahub Cloud.md b/datahub-cloud/Create a dataset from scratch and publish it with Datahub Cloud.md
new file mode 100644
index 0000000..5834f38
--- /dev/null
+++ b/datahub-cloud/Create a dataset from scratch and publish it with Datahub Cloud.md
@@ -0,0 +1,98 @@
+---
+title: Create a dataset from scratch and publish it with Datahub Cloud
+---
+
+In this tutorial, we're going to learn how to publish a dataset (multiple data files or a single data file) with DataHub Cloud.
+
+As an example we're going to use an example dataset with an analysis of the top 1000 global universities: https://www.kaggle.com/datasets/zahrayazdani81/univercitiesranking?resource=download
+
+## What You'll Need
+
+- GitHub account and basic knowledge of GitHub UI (especially editing and adding files)
+- A [DataHub Cloud](https://datahub.io/) account.
+
+### Step 1: Create a GitHub repository with the data files and `README.md` file
+
+Any DataHub Cloud site is built off of a GitHub repository. This is where you'd put all your dataset file(s) and any related markdown content that you want to publish. For the sake of simplicity, in this tutorial, we're only going to use a single `README.md` file. It's going to serve as a landing page for our site.
+
+> [!tip]
+> Any `README.md` or `index.md` file, either in a root of the repository or in a subfolder, will be treated as a "landing" page (of the whole site or a given folder) by the DataHub Cloud.
+
+Go to your GitHub account and create a new repository. Note, you can check "Add a README file" checkbox. This will make GitHub automatically add an empty `README.md` file to our repository.
+
+![[./assets/Pasted image 20240514091335.png]]
+
+> [!hint]
+> If you're new to GitHub, here are simple instructions on creating a repository: https://docs.github.com/en/repositories/creating-and-managing-repositories/quickstart-for-repositories
+
+Now, let's also add a short introduction about our dataset to the `README.md` file. We'll use the one from the original Kaggle dataset.
+
+![[./assets/Pasted image 20240515003021.png]]
+
+Now we need to add our dataset files to our repository. The universities dataset we're using only has a single `csv` file. Let's download it and upload it to our repository. We're going to name it `data.csv` but you can name it whatever you want.
+
+> [!hint]
+> If you have multiple data files, to keep things tidy, we recommend putting them in a subfolder, e.g. in `/data`.
+
+Here is how your repository should look like at this stage:
+
+![[./assets/Pasted image 20240517225336.png]]
+
+> [!hint]
+> If you're new to GitHub, here are simple instructions on uploading files to a repository: https://docs.github.com/en/repositories/working-with-files/managing-files/adding-a-file-to-a-repository
+
+### Step 2: Create a DataHub Cloud site
+
+We're not done yet, but let's first publish our repository with DataHub Cloud first to see how it works and what our site looks like.
+
+Go to your DataHub Cloud account and click on "Create New Site" button at the top of the screen. Then, select your newly created GitHub repository and submit the form. You should now be redirected to the settings page of your newly created DataHub Cloud site. Click on the "Visit" button to see how your site looks!
+
+![[./assets/Pasted image 20240515003051.png]]
+
+As you can see, there is no mention of your data file. The current landing page only shows our `README.md` page content. Obviously, this requires some more work. We need to describe our dataset for DataHub Cloud, so that it can display information about it to our site's visitors.
+
+### Step 3: Describe your dataset with Frictionless data standard
+
+In DataHub Cloud, we leverage Frictionless [data standard](https://specs.frictionlessdata.io/) for describing datasets.
+
+What is it and how does it fit in DataHub Cloud? In short, it's a standard format for describing and sharing datasets with others. DataHub Cloud understands it, and, by default, will render any `README.md` (or `index.md`) file that has a [Frictionless Data Package spec](https://specs.frictionlessdata.io/data-package/) in a `datapackage` frontmatter field using a special `dataset` layout. This layout combines markdown content from the `README.md` file with metadata from the `datapackage` frontmatter field and displays them in an elegant format.
+
+> [!tip]
+> You can also put your Data Package spec in a file named `datapackage.{json,yaml,yml}` next to your `README.md` (or `index.md`). This is especially useful if your dataset includes lots of files and your Data Package spec starts being really long.
+
+Note, that currently only a subset of Frictionless Data Package fields is displayed by DataHub Cloud's `dataset` layout. You can find the template Data Package with all the currently supported fields in [this template](https://github.com/datahubio/datahub-cloud-template/blob/main/README.md).
+
+In this tutorial we're only going to focus on the most important fields:
+- `title`
+- `description`
+- `resources` (**required**): describes all the data files included in the dataset. It is a list of objects with the following fields:
+ - `name`: unique identifier of the resource
+ - `path`: path to the resource file (relative or absolute path)
+ - (and some more, but your can explore them on your own)
+
+Now, based on the above information, let's create a `datapackage` yaml spec for our universities dataset and put it in the frontmatter of our `README.md` file, like so:
+
+```md
+---
+datapackage:
+ title: Top 1000 universities in the world
+ resources:
+ - name: universities-ranking
+ path: data.csv
+---
+
+...Rest of the README file content...
+```
+
+Now, commit your changes, go to your DataHub Cloud dashboard, and **"Sync" your site**.
+
+> [!note]
+> Note, instead of nesting the datapackage specification in a `datapackage` field, you can just put the whole spec in a separate `datapackage.yaml` (or json) file right next to the README file. Important: In this case you wouldn't nest it in a top level `datapackage` key!
+
+This is what the resulting site looks like:
+
+![[./assets/Pasted image 20240517224144.png]]
+![[./assets/Pasted image 20240515010236.png]]
+![[./assets/Pasted image 20240515010252.png]]
+
+Congratulations! You've just learned how to publish a dataset with DataHub Cloud. As you can see, some of the metadata fields in the layout are currently empty. The more information you provide is obviously the better, so we encourage you to explore the full set of currently supported fields in [our template](https://github.com/datahubio/datahub-cloud-template/tree/main).
diff --git a/datahub-cloud/Customize Your DataHub Cloud Site with CSS.md b/datahub-cloud/Customize Your DataHub Cloud Site with CSS.md
new file mode 100644
index 0000000..eb431c7
--- /dev/null
+++ b/datahub-cloud/Customize Your DataHub Cloud Site with CSS.md
@@ -0,0 +1,226 @@
+---
+title: Customize Your DataHub Cloud Site with CSS
+---
+
+## Introduction
+
+In this tutorial, we're going to explore how you can personalise the appearance of your DataHub Cloud site. By the end of this tutorial, you'll learn how to use a `custom.css` file to adjust existing styles and how to add and style a simple hero to your landing page.
+
+### What You'll Need
+
+- GitHub account and basic knowledge of GitHub UI (especially editing and adding files)
+- A [DataHub Cloud](https://datahub.io/) site you want to customise.
+- Basic knowledge of CSS (or more, depending on what you want to achieve)
+- Basic knowledge of browser developer tools.
+
+## Part 1: Adjusting Default Styles with `custom.css`
+
+Here is an example landing page of a site published with DataHub Cloud that we're going to style. You can use any of your DataHub Cloud sites.
+
+![[./assets/css-tutorial-1.png]]
+
+Here is the underlying markdown content:
+
+```md
+---
+title: My Musings & Memories 🧘♀️🏄♀️🏔️
+description: "Welcome to my personal corner of the web, where I'll be sharing my thoughts, travel experiences, coding projects, and much more!"
+date: 2024-04-24]
+---
+
+## Recent Posts
+
+- [[/life-lessons-learned|Life Lessons Learned]]
+- [[/travel-thailand#Bangkok at Night|Travel to Thailand]]
+- [[/blog/javascript-tips|Let's Talk JavaScript]]
+
+## Featured Content
+
+> [!info] Don't forget to check:
+> [[/blog/chasing-auroras-norway|Chasing Auroras in Norway]]
+
+---
+
+### Photo of the Week
+
+![[auroras.jpeg]]
+
+---
+
+...
+```
+
+### Step 1: Create the `custom.css` File
+
+In the root of your site's GitHub repository, create a file named `custom.css`.
+
+> [!important]
+> If you're site is published from a subfolder of your repository (i.e. you've specified "Root Directory" config field), the `custom.css` file should be placed in that subfolder.
+
+### Step 2: Change Background Colour & Heading Fonts
+
+Now, let's change the background colour and heading fonts a bit.
+
+Add the following CSS rules in your `custom.css` file and commit your changes. Then, go to your DataHub Cloud dashboard and **sync your site**.
+
+```css
+/* Change heading fonts and colors */
+.bg-background {
+ background: #f9f6f1 !important;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ font-family: "Lucida Console", "Courier New", monospace !important;
+ font-weight: bold !important;
+}
+
+h1, h4 {
+ color: #d30c7b !important;
+}
+
+h2, h5 {
+ color: #ba5a31 !important;
+}
+
+h3, h6 {
+ color: #508484 !important;
+}
+```
+
+> [!note]
+> Note, that we needed to override the existing styles with `!important ` rule. This may not be needed each time, but if you're trying to tweak some styles and there is no effect, you may need to use it.
+
+Here is the end result on our example page. Pretty nice, huh?
+
+![[./assets/css-tutorial-2.png]]
+
+### Step 3: Style Anything You Want
+
+This was just a basic example of tweaking css on your DataHub Cloud site. But you can style virtually anything you can see on your page. You just need to find out how to properly "select" the HTML element you want to style in your `custom.css`.
+
+> [!note] Disclaimer
+> This is not a tutorial on CSS and CSS selectors, so you need to do your own research here 😉
+
+## Part 2: Adding a Simple HTML Hero
+
+Did you know that you can include HTML tags in your markdown? If not, let me show you how.
+Then, you'll be able to use the knowledge from Part 1 and style those elements too!
+
+Let's try replacing the current header (title, description, and date) in our example with a simple hero element.
+
+#### Step 1: Add a Simple HTML Hero
+
+Let's replace the current frontmatter with the following HTML snippet:
+
+```html
+
+
My Musings & Memories
🧘♀️🏄♀️🏔️
+
Welcome to my personal corner of the web, where I'll be sharing my thoughts, travel experiences, coding projects, and much more!
+
See my blog
+
+```
+
+The markdown file now looks like this:
+
+```md
+
+
My Musings & Memories 🧘♀️🏄♀️🏔️
+
Welcome to my personal corner of the web, where I'll be sharing my thoughts, travel experiences, coding projects, and much more!
+
See my blog
+
+
+## Recent Posts
+
+- [[/life-lessons-learned|Life Lessons Learned]]
+- [[/travel-thailand#Bangkok at Night|Travel to Thailand]]
+- [[/blog/javascript-tips|Let's Talk JavaScript]]
+
+## Featured Content
+
+> [!info] Don't forget to check:
+> [[/blog/chasing-auroras-norway|Chasing Auroras in Norway]]
+
+---
+
+### Photo of the Week
+
+![[auroras.jpeg]]
+
+---
+```
+
+Now, commit your changes.
+
+### Step 2: Style Your Hero with `custom.css`
+
+Back in your `custom.css` file, add the following styles (or other!) for your custom hero section:
+
+```css
+...
+
+.hero {
+ background-color: #508484;
+ height: 500px;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ text-align: center;
+ color: #fff;
+ padding: 0 36px;
+}
+
+.hero-title {
+ font-size: 4rem;
+ color: #E35AA6 !important;
+ margin-bottom: 0px;
+}
+
+.hero-description {
+ font-size: 1.5rem;
+ margin-bottom: 30px;
+}
+
+.hero-button {
+ background-color: #fff;
+ color: #333;
+ padding: 10px 20px;
+ border-radius: 5px;
+ text-decoration: none;
+ font-weight: bold;
+ transition: all 0.3s ease-in-out;
+}
+
+.hero-button:hover {
+ background-color: #D679AC;
+ color: #fff;
+}
+```
+
+Once again, commit your changes. Now, head to your DataHub Cloud dashboard and **sync your site**. Now you can refresh your browser and you should see your landing page with the styled hero. Our example looks like this:
+
+![[./assets/css-tutorial-3.png]]
+
+You can also add this extra hack to make the hero break out of the parent container and span the whole site width:
+
+```css
+.hero {
+ ...
+ margin: 0 calc(min(28rem - 1.5rem - 50vw, 0px));
+ margin-top: -3rem;
+}
+```
+
+![[./assets/css-tutorial-4.png]]
+
+## Conclusion
+
+Congratulations! You've just learned how to customize the appearance of your DataHub Cloud site using a `custom.css` file for subtle and not-so-subtle tweaks of your sites style. Explore, experiment, and most importantly, have fun designing your site.
+
+---
+
+If you encounter any issues or have questions, the DataHub Cloud community and support team are here to help.
+
+Happy styling!
+
+
diff --git a/datahub-cloud/How to push an Obsidian vault to a Github repository.md b/datahub-cloud/How to push an Obsidian vault to a Github repository.md
new file mode 100644
index 0000000..c0fc51c
--- /dev/null
+++ b/datahub-cloud/How to push an Obsidian vault to a Github repository.md
@@ -0,0 +1,64 @@
+---
+title: How to push an Obsidian vault to a GitHub repository
+---
+
+This howto walks you through the process of setting up your Obsidian vault as a GitHub repository. Here are some of the benefits of doing so:
+
+1. Creating a backup of your notes, accessible from anywhere.
+2. Keeping track of your note-taking history, thereby enabling you to see the evolution of your ideas over time.
+3. Collaborating with others on your notes.
+
+In this howto, we will use the GitHub Desktop application, an easy-to-use interface for managing your Git repositories locally and on GitHub. This tool is particularly useful if you're not comfortable with Git's command line interface or if you just prefer a more visual representation of your Git operations.
+
+## Steps
+
+### Step 1: Setting Up GitHub Desktop App
+
+1.1. If you haven't already done so, create a GitHub account at https://github.com
+
+1.2. Download and install the GitHub Desktop app from https://desktop.github.com
+
+1.3. Once installed, open the GitHub Desktop app. You'll be prompted to sign in with your GitHub account.
+
+### Step 2: Setting Up Your Vault as a GitHub Repository
+
+2.1. In the GitHub Desktop app, click on "Add an Existing Repository from your Hard Drive"
+
+2.2. Navigate to your Obsidian vault's folder using the file explorer.
+
+2.3. After selecting it, you'll see a warning saying "This directory does not appear to be a Git repository. Would you like to create a repository here instead?" Click on the link "create a repository".
+
+2.4. You'll be brought to the "Create a New Repository" page with the vault's location already in the "Local Path" box.
+
+2.5. Choose a name for your repository. It's best to use lowercase and dashes. (For the sake of simplicity use the same or similar name to your vault's folder name.)
+
+2.6. Add an optional description.
+
+2.7. Make sure the checkbox "Initialise this repository with a README" is unchecked, and "Git Ignore" and "License" are set to "None".
+
+2.8. Click on "Create Repository".
+
+Great! Now you have your Obsidian vault set up as a git repository. Now, let's push it to GitHub.
+
+### Step 3: Pushing Your Vault to GitHub
+
+3.1. After you've created the repository, in the GitHub Desktop app you'll see a dashboard with the heading "No local changes". Below you'll see a suggestion with a button "Publish repository". Click on it. (You could also use "Publish repository" button in the top application bar.)
+
+3.2. A new window will appear. Choose a name (it will automatically suggest the one you chose during the creation process, and its best to leave it this way), add an optional description, and select whether you want it to be public or private.
+
+> [!Important]
+> Please be aware that if your GitHub repository is public, this process will make your Obsidian vault publicly accessible. If you wish to keep your vault private, you'll need to select "Private" when publishing the repository.
+
+3.3. Click on "Publish Repository".
+
+3.4. Wait for the process to finish. You'll see a small prompt when the upload is complete.
+
+3.5. You can now visit your repository on GitHub's website to see your uploaded Obsidian vault.
+
+## Summary
+
+Congratulations, you've now learned how to push an Obsidian vault to your Github repository.
+
+If anything is not clear to you, or you have suggestions on how we can make this 'How to' better, please don't hesitate to let us know.
+
+Happy editing!
diff --git a/datahub-cloud/Markdown syntax support.md b/datahub-cloud/Markdown syntax support.md
new file mode 100644
index 0000000..f630c43
--- /dev/null
+++ b/datahub-cloud/Markdown syntax support.md
@@ -0,0 +1,365 @@
+---
+title: Markdown syntax support
+---
+
+Datahub was designed with Obsidian users in mind, and so, it aims to fully support Obsidian syntax, including **CommonMark**, **GitHub Flavoured Markdown** and **Obsidian extensions**, like Wiki links.
+
+## CommonMark
+
+Here are some of the CommonMark syntax elements supported by Flowershow.
+
+### Thematic breaks
+
+Thematic breaks made with three `*`, `-` or `_` will be converted to HTML `
`
+
+**Example:**
+
+```md
+---
+---
+
+---
+```
+
+**Renders as:**
+
+---
+
+---
+
+---
+
+### Headings
+
+Markdown headings will be converted to HTML ``-`` tags.
+
+**Example:**
+
+```md
+# Heading 1
+
+...
+
+###### Heading 6
+```
+
+**Renders as:**
+All the headings on this page 🙂.
+
+### Emphasis
+
+**I'm Bold!** is done using `**I'm Bold!**`
+**I'm Bold!** is done using `__I'm Bold!__`
+
+*I'm Italic!* is done using `*I'm Italic!*`
+*I'm Italic!* is done using `_I'm Italic!_`
+
+### Fenced code blocks with code highlighting
+
+Code blocks created with backtics will be parsed as `pre` tags with support for code highlighting in respective languages and copy/paste button included on hover.
+
+**Javascript example:**
+
+```javascript {2}
+const ExampleCode = () => {
+ return
....
;
+};
+```
+
+**Python example:**
+
+```python {3}
+class Example:
+ def code(self,test):
+ return 'Code highlighter'
+```
+
+**Bash example:**
+
+```bash
+git commit && git push
+```
+
+### Blockquotes
+
+**Example:**
+
+```md
+> Roses are red, violets are blue.
+```
+
+**Renders as:**
+
+> Roses are red, violets are blue.
+
+### Lists
+
+**Example:**
+
+```md
+- one
+- two
+
+1. one
+2. two
+ - one
+ - two
+```
+
+**Renders as:**
+
+- one
+- two
+
+1. one
+2. two
+ - one
+ - two
+
+### Inline code
+
+**Example:**
+
+```md
+Here is some code: `print("hello world!")`
+```
+
+**Renders as:**
+
+Here is some code: `print("hello world!")`
+
+### Links
+
+**Example:**
+
+```md
+[Link to roadmap](/docs/roadmap)
+```
+
+**Renders as:**
+
+[Link to roadmap](/docs/roadmap)
+
+### Images
+
+**Example:**
+
+```md
+![tulip](https://images.fineartamerica.com/images/artworkimages/mediumlarge/2/abstract-flowers-rose-sciberras.jpg)
+```
+
+**Renders as:**
+
+![tulip](https://images.fineartamerica.com/images/artworkimages/mediumlarge/2/abstract-flowers-rose-sciberras.jpg)
+
+> [!NOTE]
+> 🔍 To learn more about the Markdown syntax refer to the [CommonMark specification](https://spec.commonmark.org/0.30/).
+
+---
+
+## GitHub Flavored Markdown (GFM) extensions
+
+### Tables
+
+**Example:**
+
+```md
+| Left | Center | Right |
+| :--- | :----: | ----: |
+| 1 | 2 | 3 |
+```
+
+**Renders as:**
+
+| Left | Center | Right |
+| :--- | :----: | ----: |
+| 1 | 2 | 3 |
+
+### Task lists
+
+**Example:**
+
+```md
+- [x] one thing to do
+- [ ] a second thing to do
+ - [ ] another thing to do!
+```
+
+**Renders as:**
+
+- [x] one thing to do
+- [ ] a second thing to do
+ - [ ] another thing to do!
+
+### Strikethrough
+
+~~I'm CrossedOut!~~ is done using `~~I'm CrossedOut!~~`
+
+### Autolinks
+
+**Example:**
+
+```md
+Check out Flowershow at https://flowershow.app!
+```
+
+**Renders as:**
+
+Check out Flowershow at https://flowershow.app!
+
+> [!NOTE]
+> 🔍 To learn more about the GitHub Flavored Markdown syntax refer to the [GFM specification](https://github.github.com/gfm/).
+
+---
+
+## Other extensions
+
+### Obisidian internal links (Wiki links)
+
+Wiki links are hyperlinks that give one-click access to other pages on the site. These are usually denoted with double square brackets `[[some_page]]` and Obsidian would generate the reference to that page automatically.
+
+Flowershow will convert internal links to HTML `a` tags, with their `href` attributes pointing to the location referenced by original internal links.
+
+**Internal link types**
+
+- Link to a page, e.g. `[[/docs/blog]]`, which renders as [[/docs/blog]]
+- Link to a page with a custom name, e.g. `[[/docs/blog|Blog support]]`, which renders as [[/docs/blog|Blog support]]
+- Link to a specific heading within a given page `[[/docs/blog#Blog author frontmatter fields]]`, which renders as [[/docs/blog#Blog author frontmatter fields]]
+- Link to a specific heading within a given page with a custom name, e.g. `[[/docs/blog#Blog author frontmatter fields|Some alias]]` which renders as [[/docs/blog#Blog author frontmatter fields|Some alias]]
+- Link to an image file with supported image formats - png, jpg and jpeg, eg. `![[/assets/images/park.png]]` which renders as:
+ ![[park.png]]
+- 🚧 Link to a specific block (paragraph) within a given page, e.g. `[[/docs/blog#f93ba0]]`
+
+> [!note]
+> Note, that Flowershow will also handle Obsidian wiki links with "shortest path when possible" setting.
+
+### Footnotes
+
+**Example:**
+
+```md
+Roses are red... [^1]
+
+[^1]: ...violets are blue.
+```
+
+Roses are red... [^1]
+
+[^1]: ...violets are blue.
+
+### Math
+
+**Example:**
+
+```md
+$$\begin{vmatrix}a & b\\ c & d \end{vmatrix}=ad-bc$$
+```
+
+**Renders as:**
+
+$$\begin{vmatrix}a & b\\ c & d \end{vmatrix}=ad-bc$$
+
+### Dashes/Ellipse
+
+Two '-' will convert to ndash. Three '-' will convert to mdash. Three '.' with or without spacing will convert to ellipse.
+
+**Example:**
+
+```md
+--ndash
+---mdash
+...ellipse
+. . .another ellipse
+```
+
+**Renders as:**\
+–ndash\
+—mdash\
+...ellipse\
+...another ellipse
+
+### PDF embedding
+
+**Example:**
+
+```md
+![[sample.pdf]]
+```
+
+**Renders as:**
+![[sample.pdf]]
+
+## Callouts
+
+**Example:**
+
+```md
+> [!info] This is cool!
+> Here's a callout block.
+> It supports **markdown** and [[Internal link|wikilinks]].
+```
+
+**Renders as:**
+
+> [!info] This is cool!
+> Here's a callout block.
+> It supports **markdown** and [[docs/index|wikilinks]].
+
+### Supported Types:
+
+Flowershow supports 13 different Obsidian callout types (with aliases) like note, abstract, todo, or tip. See this [Obsidian docs page](https://help.obsidian.md/How+to/Use+callouts) to learn more about different callout types.
+
+- note
+- tip (alias: hint, important)
+- warning (alias: caution, attention)
+- abstract (alias: summary, tldr)
+- info
+- todo
+- success (alias: check, done)
+- question (alias: help, faq)
+- failure (alias: fail, missing)
+- danger (alias: error)
+- bug
+- example
+- quote (alias: cite)
+
+### 🚧 Text highlighting
+
+==I'm Highlighted!== is done using `==I'm Highlighted!==`
+
+### 🚧 Excalidraw sketches support
+
+Displaying embedded [Excalidraw](https://excalidraw.com/) sketches.
+
+**Example:**
+
+```md
+![[customizability-vs-upgradeability-efficient-frontier-2022-06-26]]
+```
+
+**Renders as:**
+![[customizability-vs-upgradeability-efficient-frontier-2022-06-26]]
+
+### 🚧 Comments
+
+**Example:**
+
+```md
+Here is some inline comments: %%You can't see this text%%
+
+Here is a block comment:
+%%
+It can span
+multiple lines
+%%
+```
+
+**Renders as:**
+
+Here is some inline comments: %%You can't see this text%%
+
+Here is a block comment:
+%%
+It can span
+multiple lines
+%%
diff --git a/datahub-cloud/Publish data-rich stories.md b/datahub-cloud/Publish data-rich stories.md
new file mode 100644
index 0000000..fae6d8a
--- /dev/null
+++ b/datahub-cloud/Publish data-rich stories.md
@@ -0,0 +1,402 @@
+---
+title: Publish data-rich stories with DataHub Cloud
+---
+
+In this tutorial, we are going to cover the basics of creating and publishing data-rich documents.
+
+### But wait, what is a data-rich story?
+
+A data-rich story is a document in which the writer can easily mix formatted text content with data visualizations. This means that you don't have to code nor embed your charts and tables, those can be added to the document with a very simple syntax, passing inline-data or simply referencing your data files. What you end up with is a plain text, human-readable document which is simple to edit and looks awesome when rendered in DataHub!
+
+### What does this syntax look like?
+
+The structure and text formatting of the documents are created with markdown (take a look at [this guide](https://www.datopian.com/playbook/markdown) to learn more about markdown). But it's not simply markdown, it's markdown on steroids: writers are capable of easily adding tables of content, mathematical formulas, data visualizations and more!
+
+
+
+And guess what? What you are reading right now is a data-rich document powered by DataHub, that's why we can do this:
+
+
+
+Awesome, right? Even more awesome is that this chart is created by simply having the following snippet in this document:
+
+```
+
+```
+
+You can check out the full source of the data rich document you are reading [here](https://github.com/datahubio/tutorial).
+
+More on how to create charts and tables later, but now, this must be coming from somewhere, right?
+
+### What is a DataHub project?
+
+A DataHub project is simply a GitHub repo with a README and, potentially, data files. That's right: you can take advantage of everything that GitHub offers in terms of revisioning, changes history and so on and transform your repo into a data rich document.
+
+Imagine how cool it would be to store your reports, datasets and analysis in this format. Now, let's learn how to actually do it.
+
+
+## Steps
+
+### Create a GitHub repo
+
+First, create a repo under your organisation or user in GitHub. DataHub currently does not support private repos, so make sure this new repo is public.
+
+### Push a `README.md` file to the repo
+
+Now, let's start with creating a `README.md` file. In this file, feel free to use anything that markdown has to offer. For this tutorial, we are going to use the following basic structure:
+
+```markdown
+# Data-rich story
+
+## Table
+
+## Chart
+```
+
+### Add a table
+
+Let's add a table to the `README.md` file. Under the `## Table` header in your file, add the following snippet:
+
+```mdx
+
+```
+
+Here's what it's going to look like:
+
+
+
+### Add a chart
+
+Now, let's add a graph to the README file. To keep it simple, we are going to use the LineChart component in this tutorial. Add the following snippet to your README file under the `## Chart` header:
+
+```mdx
+
+```
+
+This is what it will look like when rendered:
+
+
+
+### Final document
+
+At this point, your document should look like this:
+
+```markdown
+# Data-rich story
+
+## Table
+
+
+
+## Chart
+
+
+```
+
+We now have a README file ready to be published with DataHub Cloud!
+
+### Optional steps
+
+You can add as many markdown files to your GitHub repository as you like, and you can freely nest them in subdirectories. You can also enhance your content with other data visualisation components and markdown features.
+
+
+
+
+
+
+### Publish with DataHub
+
+1. Sign in to https://cloud.datahub.io/
+2. Click on "Create new site".
+3. Select your GitHub user/organisation.
+4. Select the repository you've just created and the branch you want to build your site off of.
+5. Click on "Create Site".
+6. Done! Now visit your site by clicking on the URL at the top of the site settings page.
+
+[👀 See an example data-rich document rendered with DataHub](https://datahub.io/@Daniellappv/datarich-demo-newest/posts/story1)
+
+___
+
+Cool, isn't it? Get in contact with us and let us know what you think! [Join our Discord](https://discord.gg/URNSkepK7z)
diff --git a/datahub-cloud/README.md b/datahub-cloud/README.md
new file mode 100644
index 0000000..262713a
--- /dev/null
+++ b/datahub-cloud/README.md
@@ -0,0 +1,98 @@
+---
+title: ➡ Documentation
+---
+
+
+
Datahub Cloud is your stupidly simple and fast tool for turning your data stories or datasets on GitHub into a published, shareable site. It converts raw data and Markdown files into beautifully presented, interactive sites.
+
+
+>[!note]
+>The current version of Datahub Cloud runs only off Github.
+
+### Templates
+
+- [Data-rich story template](https://github.com/datahubio/datahub-cloud-template-story) that renders like [this](https://datahub.io/@Daniellappv/datahub-cloud-template-story)
+- [Dataset template](https://github.com/datahubio/datahub-cloud-template) that renders like [this](https://datahub.io/@Daniellappv/datahub-cloud-template-dataset)
+- [PKM template](https://github.com/datahubio/datahub-cloud-template-pkm) that renders like [this](https://datahub.io/@Daniellappv/datahub-cloud-template-pkm)
+
+### How to deploy your first site within seconds
+
+The quickest way to start publishing with Datahub Cloud is to publish our template and customize it to fit your needs. You can do that in 5 simple steps:
+
+1. Click on the selected template from the ones listed above and click "Use this template" at the top right to create a new repository
+2. Go to [the app](https://0613d040.sibforms.com/serve/MUIFAMLy5tXMDC-gFjXRxBEcvyVYV9O9KLVoKMp1n6WMXE4LBazZkkV78pTBf3FnJHdhQpJoOYL3KsAbAv9yDYJooerqar47yy2RQkuP_Vs0CEkHexRMrkWsbKtTIi_DMOa9KfzpRVFa959hSXqJByMY5Gj9OrZtEX3ZrfO5OJHh7fLxh3nYgnNIBwGTpxJ25XA_MxOKv_kHKNgM) and create a new site by selecting the repository you just created (leave the "Root Dir" field empty)
+3. Done, it is now published! Just hit the green "Visit" button at the top right to see what it looks like.
+
+### What to do after you publish your first site
+
+After publishing our template and getting a feel for how it works, you have several options to customize it:
+
+```mermaid
+ graph TD
+
+whattodoafter["❓What to do after that"]
+customize["👷♂️ Customize template"]
+addvisuals["📈 Add visuals"]
+publishrepo[" 🏖️ Publish another repo of your own"]
+newrepo[" 🆕 Create a new repo"]
+obsidian["🖋️ Publish your Obsidian notes"]
+
+whattodoafter-->customize
+whattodoafter-->addvisuals
+whattodoafter-->publishrepo
+whattodoafter-->newrepo
+whattodoafter-->obsidian
+```
+
+### Take the template to the next level
+
+> [!note]
+> The template works best for datasets. If you don't have any data files, we suggest starting from scratch (go to [Start from scratch](https://datahub.io/docs#start-from-the-scratch))
+
+
+
+
+
+
+
+### Start from the scratch
+
+Or if that's easier, you can start from scratch or from an existing repo in Github.
+
+If you haven't worked with Github or your project does not live there, go ahead and create a new repository in Github. Create a README.md file, add some intro to it and publish it with Datahub Cloud.
+
+
+
+You can also publish an existing repository of your own and see what it looks like when published with Datahub Cloud. For any issues or errors, please open an issue here https://github.com/datopian/datahub/issues
+
+### Publish your Obsidian vault
+
+You can also publish your Obsidian notes and create your handbook with Datahub Cloud. Eg. see this beautiful example https://datahub.io/@davidgasquez/handbook.
+
+
+
+### What syntax is supported
+
+Datahub Cloud supports CommonMark and GitHub Flavored Markdown, but also many Obsidian-specific syntax elements, like Wiki links or footnotes[^1].
+
+
+
+### Need help?
+
+For any questions or suggestions for improvement please ping us on [discord](https://discord.gg/URNSkepK7z)
+
+
+
+
diff --git a/datahub-cloud/assets/Auto-sync.png b/datahub-cloud/assets/Auto-sync.png
new file mode 100644
index 0000000000000000000000000000000000000000..4374ccc92b03f807a2db0f89483d4b6333693617
GIT binary patch
literal 18212
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%0D6FQ2#@eX0Ox
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