From aa74abd120ac0e6d7c022c9611f11aa5e944960b Mon Sep 17 00:00:00 2001
From: Josh West <28758912+codewest@users.noreply.github.com>
Date: Sun, 3 Nov 2024 14:35:23 -0500
Subject: [PATCH] Additions to site: (#2)
* Project Roadmap
* News and Announcements
* Sitemap
* Image adjustments
* Vitepress Timeline Plugin
---
.vitepress/config.mts | 12 +++++++++++-
.vitepress/theme/custom.css | 24 +++++++++++++-----------
.vitepress/theme/index.js | 11 ++++++++++-
docs/project/roadmap.md | 19 +++++++++++++++++++
news.md | 21 +++++++++++++++++++++
package-lock.json | 18 ++++++++++++++++++
package.json | 3 +++
public/workflow-dark.png | Bin 63145 -> 180727 bytes
public/workflow-light.png | Bin 73083 -> 202390 bytes
9 files changed, 95 insertions(+), 13 deletions(-)
create mode 100644 docs/project/roadmap.md
create mode 100644 news.md
diff --git a/.vitepress/config.mts b/.vitepress/config.mts
index 2d25739..ee0ff59 100644
--- a/.vitepress/config.mts
+++ b/.vitepress/config.mts
@@ -1,3 +1,4 @@
+import timeline from 'vitepress-markdown-timeline';
import { defineConfig } from 'vitepress'
// https://vitepress.dev/reference/site-config
@@ -7,6 +8,14 @@ export default defineConfig({
head: [
[ 'script', { defer: '', 'data-domain': 'platformspec.io', src: 'https://plausible.io/js/script.js' } ]
],
+ sitemap: {
+ hostname: 'https://platformspec.io'
+ },
+ markdown: {
+ config: (md) => {
+ md.use(timeline);
+ },
+ },
themeConfig: {
// https://vitepress.dev/reference/default-theme-config
logo: {
@@ -17,9 +26,9 @@ export default defineConfig({
nav: [
{ text: 'Home', link: '/' },
{ text: 'Documentation', link: '/docs/project/preface/' },
+ { text: 'News', link: '/news'},
{ text: 'Community', link: '/community' }
],
-
sidebar: {
'/docs/': [
{
@@ -27,6 +36,7 @@ export default defineConfig({
items: [
{ text: 'Preface', link: '/docs/project/preface'},
{ text: 'Contributing', link: '/docs/project/contributing' },
+ { text: 'Roadmap', link: '/docs/project/roadmap' },
{ text: 'Help Wanted', link: '/docs/project/help'},
{ text: 'Authors', link: '/docs/project/authors' }
]
diff --git a/.vitepress/theme/custom.css b/.vitepress/theme/custom.css
index ef82d1e..6e5cdde 100644
--- a/.vitepress/theme/custom.css
+++ b/.vitepress/theme/custom.css
@@ -11,16 +11,18 @@ display: none !important;
--vp-home-hero-name-background: -webkit-linear-gradient(120deg, #3451b2 30%, #8596d0);
--vp-home-hero-image-background-image: linear-gradient(-45deg, #99a8d8 50%, #99a8d8 50%);
--vp-home-hero-image-filter: blur(44px);
+ --vp-c-brand: #7579e3;
+ --timeline-title-text: black;
+}
+
+@media (min-width: 640px) {
+ :root {
+ --vp-home-hero-image-filter: blur(56px);
}
-
- @media (min-width: 640px) {
- :root {
- --vp-home-hero-image-filter: blur(56px);
- }
+}
+
+@media (min-width: 960px) {
+ :root {
+ --vp-home-hero-image-filter: blur(68px);
}
-
- @media (min-width: 960px) {
- :root {
- --vp-home-hero-image-filter: blur(68px);
- }
- }
\ No newline at end of file
+}
diff --git a/.vitepress/theme/index.js b/.vitepress/theme/index.js
index bed9095..711029a 100644
--- a/.vitepress/theme/index.js
+++ b/.vitepress/theme/index.js
@@ -1,5 +1,14 @@
// .vitepress/theme/index.js
import DefaultTheme from 'vitepress/theme'
+import Theme from "vitepress/theme";
import './custom.css'
+import "vitepress-markdown-timeline/dist/theme/index.css";
-export default DefaultTheme
\ No newline at end of file
+//export default DefaultTheme
+
+export default {
+ ...Theme,
+ enhanceApp(ctx) {
+ Theme.enhanceApp(ctx);
+ },
+ };
\ No newline at end of file
diff --git a/docs/project/roadmap.md b/docs/project/roadmap.md
new file mode 100644
index 0000000..2caa75c
--- /dev/null
+++ b/docs/project/roadmap.md
@@ -0,0 +1,19 @@
+# Roadmap
+See where The Platform Specification is headed with our transparent roadmap.
+
+## Current Priorities
+
+* Designing the "Policies" section of The Platform Specification.
+
+## Next Priorities
+
+* Designing the "Governance and Compliance" section of The Platform Specification.
+* Designing the "Developer Services & Enablement" section of The Platform Spefification.
+* Designing the "Observability & Performance" section of The Platform Specification.
+* SDK -- Golang Platform Specification Model Library.
+* SDK -- Python Platform Specification Model Library.
+* Example Platform definitions, with diagrams and descriptions.
+
+## Future Priorities
+
+* Interactive UI based platform designer; renders out a `platform.yaml`.
\ No newline at end of file
diff --git a/news.md b/news.md
new file mode 100644
index 0000000..d31833c
--- /dev/null
+++ b/news.md
@@ -0,0 +1,21 @@
+---
+layout: doc
+sidebar: false
+aside: false
+---
+
+# News and Announcements
+
+Stay up-to-date on all things Platform Specification. This is where you'll find the latest news, releases, and announcements about The Platform Specification project.
+
+
+
+::: timeline November 2nd, 2024
+::: info Roadmap Published!
+We're thrilled to announce the launch of The Platform Specification's official roadmap. This roadmap outlines our key priorities and goals for the coming months and years, ensuring transparency and alignment with the needs of our users. We'll be developing new tools, expanding the specification examples, deepening community engagement, and and publishing Platform Blueprints. Access the full roadmap and contribute your thoughts on the [Roadmap](docs/project/roadmap) page within the documentation.
+:::
+
+::: timeline October 28th, 2024
+::: info The Platform Specification launched!
+We're excited to announce the launch of The Platform Specification's official website! This central hub provides a comprehensive resource for all things related to The Platform Specification, including detailed documentation, examples, and information about getting involved.
+:::
diff --git a/package-lock.json b/package-lock.json
index a947d0a..f08f19a 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4,6 +4,9 @@
"requires": true,
"packages": {
"": {
+ "dependencies": {
+ "vitepress-markdown-timeline": "^1.2.1"
+ },
"devDependencies": {
"vitepress": "^1.4.2"
}
@@ -1724,6 +1727,12 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/dayjs": {
+ "version": "1.11.13",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
+ "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==",
+ "license": "MIT"
+ },
"node_modules/dequal": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
@@ -2499,6 +2508,15 @@
}
}
},
+ "node_modules/vitepress-markdown-timeline": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/vitepress-markdown-timeline/-/vitepress-markdown-timeline-1.2.1.tgz",
+ "integrity": "sha512-XPYl/btTcTzW+XF20ITB51L8jPjbS72tSKPcv/CHJgM+3LbBvW8Az/X7RcBTJSXDNOwCY5mGkjA7CXQtuxOKgw==",
+ "license": "MIT",
+ "dependencies": {
+ "dayjs": "^1.11.7"
+ }
+ },
"node_modules/vue": {
"version": "3.5.12",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.5.12.tgz",
diff --git a/package.json b/package.json
index 391ea57..960fdb4 100644
--- a/package.json
+++ b/package.json
@@ -6,5 +6,8 @@
"docs:dev": "vitepress dev",
"docs:build": "vitepress build",
"docs:preview": "vitepress preview"
+ },
+ "dependencies": {
+ "vitepress-markdown-timeline": "^1.2.1"
}
}
diff --git a/public/workflow-dark.png b/public/workflow-dark.png
index 96c321ecf2e249913e21a872494ea25f3b47ceca..647c7cc4c373786b32e7a64a9ddf79acae2b10e8 100644
GIT binary patch
literal 180727
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