Skip to content

Commit

Permalink
Fancy Social Cards (#830)
Browse files Browse the repository at this point in the history
  • Loading branch information
fkorotkov authored May 22, 2024
1 parent 204002f commit c655288
Show file tree
Hide file tree
Showing 13 changed files with 299 additions and 4 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,6 @@ dist/

# mkdocs
.cache

# mkdocs-material
site
2 changes: 2 additions & 0 deletions docs/faq.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---
hide:
- navigation
title: Frequently Asked Questions
description: Advanced configuration and troubleshooting tips for advanced configurations.
---

## VM location on disk
Expand Down
3 changes: 2 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
template: overrides/home.html
title: Tart
title: Toolset to build, run and manage macOS and Linux VMs
description: Native performance. Remote storage for Virtual Machines. Many integrations including GitHub, GitLab and more.
---
5 changes: 5 additions & 0 deletions docs/integrations/buildkite.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
title: Buildkite Integration
description: Run pipeline steps in isolated ephemeral Tart Virtual Machines.
---

# Buildkite

It is possible to run [Buildkite](https://buildkite.com/) pipeline steps in isolated ephemeral Tart Virtual Machines with the help of [Tart Buildkite Plugin](https://github.com/cirruslabs/tart-buildkite-plugin):
Expand Down
5 changes: 5 additions & 0 deletions docs/integrations/cirrus-cli.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
title: Cirrus CLI
description: Tool for running isolated tasks reproducibly in any environment with a simple YAML configuration.
---

# Cirrus CLI

Tart itself is only responsible for managing virtual machines, but we've built Tart support into a tool called Cirrus CLI
Expand Down
5 changes: 5 additions & 0 deletions docs/integrations/gitlab-runner.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
title: GitLab Runner Executor
description: Run jobs in isolated ephemeral Tart Virtual Machines.
---

# GitLab Runner Executor

It is possible to run GitLab jobs in isolated ephemeral Tart Virtual Machines via [Tart Executor](https://github.com/cirruslabs/gitlab-tart-executor).
Expand Down
5 changes: 5 additions & 0 deletions docs/integrations/vm-management.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
title: Managing Virtual Machine
description: Use Packer to build custom VM images, configure VMs and work with remote OCI registries.
---

# Managing Virtual Machine

## Creating from scratch
Expand Down
260 changes: 260 additions & 0 deletions docs/layouts/custom.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,260 @@
# Copyright (c) 2016-2024 Martin Donath <[email protected]>

# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:

# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.

# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.

# -----------------------------------------------------------------------------
# Configuration
# -----------------------------------------------------------------------------

# Definitions
definitions:

# Background image
- &background_image >-
{{ layout.background_image | x }}

# Background color (default: indigo)
- &background_color >-
{%- if layout.background_color -%}
{{ layout.background_color }}
{%- else -%}
{%- set palette = config.theme.palette or {} -%}
{%- if not palette is mapping -%}
{%- set list = palette | selectattr("accent") | list + palette -%}
{%- set palette = list | first -%}
{%- endif -%}
{%- set accent = palette.get("accent", "indigo") -%}
{%- set accent = accent.replace(" ", "-") -%}
{{ {
"red": "#ff1a47",
"pink": "#f50056",
"purple": "#df41fb",
"deep-purple": "#7c4dff",
"indigo": "#526cfe",
"blue": "#4287ff",
"light-blue": "#0091eb",
"cyan": "#00bad6",
"teal": "#00bda4",
"green": "#00c753",
"light-green": "#63de17",
"lime": "#b0eb00",
"yellow": "#ffd500",
"amber": "#ffaa00",
"orange": "#ff9100",
"deep-orange": "#ff6e42"
}[accent] or "#4051b5" }}
{%- endif -%}

# Text color (default: white)
- &color >-
{%- if layout.color -%}
{{ layout.color }}
{%- else -%}
{%- set palette = config.theme.palette or {} -%}
{%- if not palette is mapping -%}
{%- set list = palette | selectattr("accent") | list + palette -%}
{%- set palette = list | first -%}
{%- endif -%}
{%- set accent = palette.get("accent", "indigo") -%}
{%- set accent = accent.replace(" ", "-") -%}
{{ {
"red": "#ffffff",
"pink": "#ffffff",
"purple": "#ffffff",
"deep-purple": "#ffffff",
"indigo": "#ffffff",
"blue": "#ffffff",
"light-blue": "#ffffff",
"cyan": "#ffffff",
"teal": "#ffffff",
"green": "#ffffff",
"light-green": "#ffffff",
"lime": "#000000",
"yellow": "#000000",
"amber": "#000000",
"orange": "#000000",
"deep-orange": "#ffffff"
}[accent] or "#ffffff" }}
{%- endif -%}

# Font family (default: Roboto)
- &font_family >-
{%- if layout.font_family -%}
{{ layout.font_family }}
{%- elif config.theme.font != false -%}
{{ config.theme.font.get("text", "Roboto") }}
{%- else -%}
Roboto
{%- endif -%}

# Font variant
- &font_variant >-
{%- if layout.font_variant -%}
{{ layout.font_variant }}
{%- endif -%}

# Site name
- &site_name >-
{{ config.site_name }}

# Page title
- &page_title >-
{%- if page.meta.no_title_in_card -%}
{# do not show anything #}
{%- elif layout.title -%}
{{ layout.title }}
{%- else -%}
{{ page.meta.get("title", page.title) }}
{%- endif -%}

# Page title with site name
- &page_title_with_site_name >-
{%- if not page.is_homepage -%}
{{ page.meta.get("title", page.title) }} - {{ config.site_name }}
{%- else -%}
{{ page.meta.get("title", page.title) }}
{%- endif -%}

# Page description
- &page_description >-
{%- if layout.description -%}
{{ layout.description }}
{%- else -%}
{{ page.meta.get("description", config.site_description) | x }}
{%- endif -%}

# Page description for social card
- &page_description_social_card >-
{%- if layout.description -%}
{{ layout.description }}
{%- else -%}
{{ page.meta.get("description", config.site_description_social_card) | x }}
{%- endif -%}

# Logo
- &logo >-
{%- if layout.logo -%}
{{ layout.logo }}
{%- elif config.theme.logo -%}
{{ config.docs_dir }}/{{ config.theme.logo }}
{%- endif -%}

# Logo (icon)
- &logo_icon >-
{%- if not layout.logo -%}
{{ config.theme.icon.logo | x }}
{%- endif -%}

# Meta tags
tags:

# Open Graph
og:type: website
og:title: *page_title_with_site_name
og:description: *page_description
og:image: "{{ image.url }}"
og:image:type: "{{ image.type }}"
og:image:width: "{{ image.width }}"
og:image:height: "{{ image.height }}"
og:url: "{{ page.canonical_url }}"

# Twitter
twitter:card: summary_large_image
twitter:title: *page_title_with_site_name
twitter:description: *page_description
twitter:image: "{{ image.url }}"

# -----------------------------------------------------------------------------
# Specification
# -----------------------------------------------------------------------------

# Card size and layers
size: { width: 1200, height: 630 }
layers:

# Background
- background:
image: *background_image
color: *background_color

# Logo
- size: { width: 170, height: 192 }
offset: { x: 966, y: 64 }
background:
image: *logo
icon:
value: *logo_icon
color: *color

# Site name
- size: { width: 832, height: 42 }
offset: { x: 64, y: 64 }
typography:
content: *site_name
align: start center
color: *color
font:
family: *font_family
variant: *font_variant
style: Bold

# Motto
- size: { width: 832, height: 150 }
offset: { x: 64, y: 106 }
typography:
content: "{{ config.motto }}"
align: start center
color: *color
line:
amount: 2.5
height: 1.25
font:
family: *font_family
variant: *font_variant
style: Bold

# Page title
- size: { width: 1072, height: 256 }
offset: { x: 64, y: 256 }
typography:
content: *page_title
align: start center
color: *color
line:
amount: 3
height: 1.25
font:
family: *font_family
variant: *font_variant
style: Bold

# Page description
- size: { width: 832, height: 64 }
offset: { x: 64, y: 512 }
typography:
content: *page_description_social_card
align: start center
color: *color
line:
amount: 2
height: 1.5
font:
family: *font_family
variant: *font_variant
style: Regular
2 changes: 2 additions & 0 deletions docs/licensing.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---
hide:
- navigation
title: Licensing and Support
description: Free Tier with 100 CPU core limit. Very affordable Tiers for larger enterprises.
---

Both [Tart Virtualization](https://github.com/cirruslabs/tart) and [Orchard Orchestration](https://github.com/cirruslabs/orchard)
Expand Down
2 changes: 2 additions & 0 deletions docs/quick-start.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---
hide:
- navigation
title: Quick Start
description: Install Tart and run your first virtual machine on Apple Silicon in minutes.
---

Try running a Tart VM on your Apple Silicon device running macOS 13.0 (Ventura) or later (will download a 25 GB image):
Expand Down
8 changes: 5 additions & 3 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,11 @@ repo_url: https://github.com/cirruslabs/tart/
site_url: https://tart.run/
edit_uri: blob/main/docs/

site_name: Tart
site_name: Tart Virtualization
site_author: Cirrus Labs
copyright: © Cirrus Labs 2017-present
site_description: >
Tart is a virtualization toolset to build, run and manage macOS and Linux virtual machines (VMs) on Apple Silicon.
Built by CI engineers for your automation needs.
remote_branch: main

Expand Down Expand Up @@ -47,7 +46,10 @@ plugins:
match_path: blog/posts/.*
date_from_meta:
as_creation: date
- social
- social:
cards_layout_dir: docs/layouts
cards_layout: custom
debug: true
- search
- minify

Expand Down
3 changes: 3 additions & 0 deletions scripts/build-docs.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/usr/bin/env bash

docker run --pull=always --rm -it -p 8000:8000 -v ${PWD}:/docs ghcr.io/cirruslabs/mkdocs-material-insiders:latest build
File renamed without changes.

0 comments on commit c655288

Please sign in to comment.