From 2161d546e8e4343f699411dcc881d98c66c0d0b0 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Mon, 9 Feb 2026 20:30:05 -0500 Subject: [PATCH 1/3] Add letter template --- astro.config.mjs | 4 +++ package-lock.json | 35 +++++++++++++++++++++++++ package.json | 3 +++ src/content/pages/en/index.md | 2 ++ src/data/signatures.yaml | 6 +++++ src/layouts/Default.astro | 49 +++++++++++++++++------------------ src/pages/letter.astro | 34 ++++++++++++++++++++++++ 7 files changed, 108 insertions(+), 25 deletions(-) create mode 100644 src/data/signatures.yaml create mode 100644 src/pages/letter.astro diff --git a/astro.config.mjs b/astro.config.mjs index d0cad8d..8889376 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -4,6 +4,7 @@ import { remarkHeadingId } from "remark-custom-heading-id"; import rehypeSlug from 'rehype-slug'; import rehypeAutolinkHeadings from 'rehype-autolink-headings'; import rehypeExternalLinks from "rehype-external-links"; +import yaml from '@rollup/plugin-yaml'; export default defineConfig({ site: 'https://keepandroidopen.org', @@ -14,6 +15,9 @@ export default defineConfig({ prefixDefaultLocale: false, }, }, + vite: { + plugins: [yaml()] + }, markdown: { remarkPlugins: [remarkHeadingId, remarkKramdownClasses], rehypePlugins: [[rehypeExternalLinks, { diff --git a/package-lock.json b/package-lock.json index fb6ec0c..35b5800 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,9 @@ "rehype-external-links": "^3.0.0", "rehype-slug": "^6.0.0", "remark-custom-heading-id": "^2.0.0" + }, + "devDependencies": { + "@rollup/plugin-yaml": "^4.1.2" } }, "node_modules/@astrojs/compiler": { @@ -1049,6 +1052,29 @@ "integrity": "sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==", "license": "MIT" }, + "node_modules/@rollup/plugin-yaml": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-yaml/-/plugin-yaml-4.1.2.tgz", + "integrity": "sha512-RpupciIeZMUqhgFE97ba0s98mOFS7CWzN3EJNhJkqSv9XLlWYtwVdtE6cDw6ASOF/sZVFS7kRJXftaqM2Vakdw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "js-yaml": "^4.1.0", + "tosource": "^2.0.0-alpha.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, "node_modules/@rollup/pluginutils": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.3.0.tgz", @@ -4511,6 +4537,15 @@ "url": "https://github.com/sponsors/SuperchupuDev" } }, + "node_modules/tosource": { + "version": "2.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/tosource/-/tosource-2.0.0-alpha.3.tgz", + "integrity": "sha512-KAB2lrSS48y91MzFPFuDg4hLbvDiyTjOVgaK7Erw+5AmZXNq4sFRVn8r6yxSLuNs15PaokrDRpS61ERY9uZOug==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/trim-lines": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", diff --git a/package.json b/package.json index a3240d1..673be78 100644 --- a/package.json +++ b/package.json @@ -14,5 +14,8 @@ "rehype-external-links": "^3.0.0", "rehype-slug": "^6.0.0", "remark-custom-heading-id": "^2.0.0" + }, + "devDependencies": { + "@rollup/plugin-yaml": "^4.1.2" } } diff --git a/src/content/pages/en/index.md b/src/content/pages/en/index.md index 7b6bf16..a699aa0 100644 --- a/src/content/pages/en/index.md +++ b/src/content/pages/en/index.md @@ -13,6 +13,8 @@ site_privacy: "**Privacy:** This site uses no cookies and performs no user track site_copyright: "**Copyright:** None. This work is marked" lockdown_banner: "Android will become a locked-down platform" +open_letter_header: "Open Letter" +open_letter_description: "An open letter to advocate for Android as a free, open platform." --- In August 2025, Google [announced](https://developer.android.com/developer-verification) that as of September 2026, diff --git a/src/data/signatures.yaml b/src/data/signatures.yaml new file mode 100644 index 0000000..77ad28b --- /dev/null +++ b/src/data/signatures.yaml @@ -0,0 +1,6 @@ +- name: John Doe + title: Software Engineer + organization: Example Corp +- name: Jane Smith + title: Community Organizer + organization: Advocacy Group diff --git a/src/layouts/Default.astro b/src/layouts/Default.astro index 4d53a66..40619ed 100644 --- a/src/layouts/Default.astro +++ b/src/layouts/Default.astro @@ -14,6 +14,8 @@ interface Props { site_privacy: string; site_copyright: string; lockdown_banner: string; + open_letter_header: string; + open_letter_description: string; } const { @@ -28,6 +30,8 @@ const { site_privacy, site_copyright, lockdown_banner, + open_letter_header, + open_letter_description, } = Astro.props; const languageEntries = Object.entries(languages); @@ -51,17 +55,14 @@ const languageEntries = Object.entries(languages); - - @@ -254,11 +255,9 @@ const languageEntries = Object.entries(languages);

{contact_header}

- -