From 299563edb5bab223820f7ef2d1baff0c428ffef2 Mon Sep 17 00:00:00 2001 From: Jamil Date: Fri, 10 Nov 2023 09:03:30 -0800 Subject: [PATCH] Simplify product roadmap (#2626) Still need to configure the view to show rough dates/times, but this should suffice for now. Fixes firezone/gtm#205 --- website/src/app/blog/firezone-1-0/readme.mdx | 8 +- website/src/app/product/roadmap/_page.tsx | 367 ------------------- website/src/app/product/roadmap/page.tsx | 9 - website/src/components/Footer/index.tsx | 2 +- website/src/components/RootNavbar/index.tsx | 9 +- 5 files changed, 8 insertions(+), 387 deletions(-) delete mode 100644 website/src/app/product/roadmap/_page.tsx delete mode 100644 website/src/app/product/roadmap/page.tsx diff --git a/website/src/app/blog/firezone-1-0/readme.mdx b/website/src/app/blog/firezone-1-0/readme.mdx index f75643e22..e0397ce7c 100644 --- a/website/src/app/blog/firezone-1-0/readme.mdx +++ b/website/src/app/blog/firezone-1-0/readme.mdx @@ -233,8 +233,9 @@ designed 1.0 to be flexible enough to suit the needs of both. While we were at it, we decided to build a slew of new features for 1.0 in addition to the architecture improvements laid out in this post. Most notably, a cloud-managed admin portal, native clients, and high availability support. But -there's much more. Check our [product roadmap](/product/roadmap) for more -details on what's coming in 1.0. +there's much more. Check our +[product roadmap](https://github.com/orgs/firezone/projects/9) for more details +on what's coming in 1.0. #### Next steps @@ -243,6 +244,7 @@ phases, starting with an early access preview aiming to launch mid-Q3 of this year. If you're interesting in joining the early access program, [head here to fill out the form](/product/early-access) and we'll be in touch. -Until then, feel free to [follow our roadmap](/product/roadmap) or +Until then, feel free to +[follow our roadmap](https://github.com/orgs/firezone/projects/9) or [watch our GitHub repository](https://www.github.com/firezone/firezone) for updates. Comments welcome! diff --git a/website/src/app/product/roadmap/_page.tsx b/website/src/app/product/roadmap/_page.tsx deleted file mode 100644 index e6cb0fb4b..000000000 --- a/website/src/app/product/roadmap/_page.tsx +++ /dev/null @@ -1,367 +0,0 @@ -"use client"; - -import { Metadata } from "next"; -import Link from "next/link"; -import CommitMarquee from "@/components/CommitMarquee"; -import ActionLink from "@/components/ActionLink"; -import { HiMegaphone, HiBeaker } from "react-icons/hi2"; -import { XMLParser } from "fast-xml-parser"; -import { useState, useEffect } from "react"; -import GitHubHtml from "@/components/GitHubHtml"; - -export const metadata: Metadata = { - title: "Product Roadmap • Firezone", - description: "Recently shipped, in progress, and future updates to Firezone.", -}; - -function RoadmapItem({ - title, - href, - type, - date, - entryId, - children, -}: { - href: string; - title: string; - type: string; - date?: string; - entryId?: string; - children: React.ReactNode; -}) { - function badge(type: string) { - switch (type) { - case "release": - return ( - - {type} - - ); - case "1.0": - case "feature": - return ( - - {type} - - ); - case "refactor": - case "website": - return ( - - {type} - - ); - case "docs": - return ( - - {type} - - ); - } - } - return ( -
  • -
    - - {title} - -
    -
    {children}
    -
    - {date ? ( - - {new Date(date!).toDateString()} - - ) : ( - - )} - {badge(type)} -
    -
  • - ); -} - -export default function Page() { - const parser = new XMLParser({ ignoreAttributes: false }); - const [xml, setXml] = useState({ feed: { entry: [] } }); - - useEffect(() => { - fetch("/api/github/firezone/firezone/releases.atom") - .then((response) => response.text()) - .then((str) => parser.parse(str)) - .then((data) => { - setXml(data); - }) - .catch((error) => console.error(error)); - }, []); - - return ( -
    -
    -
    -

    - Product Roadmap -

    -

    - Take a peek below to learn what we're working on and how you can get - involved. -

    -
    - -
    -
    -

    - Shipped -

    -

    - Updates we've recently shipped. -

    -
    -

    - Recent Releases -

    -
      - {xml.feed.entry.slice(0, 3).map((entry: any) => { - return ( - - - - ); - })} -
    -
    - {/* TODO: Consider automating this with the GitHub API */} -
    -

    - Website / Docs -

    -
      - - We've added a new{" "} - - early access page - {" "} - to allow users to sign up to test new Firezone features and - releases. - - - A new{" "} - - team page - {" "} - has been added to showcase the team behind Firezone. - - - Our website now sports a new color palette, font, and spacing - consistent with the Firezone product. - -
    -
    -
    -
    -

    - In progress -

    -

    - Things we're actively working on and plan to ship in the next - release or two. -

    -
    -
    - - - Sign up for early access - {" "} - to test new Firezone features and releases. -
    -

    - Firezone 1.0 -

    -
      - - Automated user and group provisioning via just-in-time (JIT) - provisioning or SCIM 2.0. - - - More robust support for SAML 2.0, OIDC, and magic link - authentication methods. - - - Control access to protected Resources on a per-group basis. - - - Native Firezone client for macOS and iOS. - - - Automatic holepunching and STUN/TURN discovery for Clients and - Gateways. - - - Resolve DNS queries for protected Resources using Firezone's - built-in DNS while forwarding other queries to a configurable - upstream DNS server. - - - Native Firezone client for Android. - - - Support for High availability (HA) deployments of the Firezone - Gateway. - -
    -
    -
    -
    -

    - Under consideration -

    -

    - Things we're still investigating, architecting, or in the process - of prioritizing.{" "} - (feedback welcome!) -

    -
      - - Native Firezone client for Windows. - - - Support for service accounts to allow automated access to - protected Resources. Requires headless clients for - Linux/Windows. - - - Native Firezone client for Linux. - - - Log admin portal configuration changes and end-user access to - protected Resources to achieve compliance with regulatory - requirements. - -
    -
    -
    -
    -
    -
    -
    - - Want to stay updated on our progress? -
    -
    - - Subscribe to our newsletter. - -
    -
    -
    -
    -

    - We're building Firezone{" "} - in the open. -

    -

    - We're open source because we believe better transparency leads - to better security. After all, how can you trust what you can't - see? -

    -

    - - See what we're working on - - . -

    - -
    -
    - ); -} diff --git a/website/src/app/product/roadmap/page.tsx b/website/src/app/product/roadmap/page.tsx deleted file mode 100644 index 950b199fb..000000000 --- a/website/src/app/product/roadmap/page.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import { Metadata } from "next"; -import Page from "./_page"; - -export const metadata: Metadata = { - title: "Product Roadmap • Firezone", - description: "See what we're working on and what's coming next.", -}; - -export default Page; diff --git a/website/src/components/Footer/index.tsx b/website/src/components/Footer/index.tsx index 99aa14dc4..8716adc24 100644 --- a/website/src/components/Footer/index.tsx +++ b/website/src/components/Footer/index.tsx @@ -74,7 +74,7 @@ export default function Footer() {
  • Roadmap diff --git a/website/src/components/RootNavbar/index.tsx b/website/src/components/RootNavbar/index.tsx index 956da2112..4e18f247b 100644 --- a/website/src/components/RootNavbar/index.tsx +++ b/website/src/components/RootNavbar/index.tsx @@ -97,13 +97,8 @@ export default function RootNavbar() {
  • Roadmap