diff --git a/components/Sidebar.tsx b/components/Sidebar.tsx index 6f54caa09..6370bb406 100644 --- a/components/Sidebar.tsx +++ b/components/Sidebar.tsx @@ -109,6 +109,7 @@ const getDocsPath = [ '/overview/use-cases', '/overview/code-of-conduct', '/overview/faq', + '/overview/roadmap', ]; const getStartedPath = [ '/learn', @@ -362,6 +363,7 @@ export const DocsNav = ({ label='What is JSON Schema?' setOpen={setOpen} /> + (null); export const BlockContext = React.createContext(null); export const FullMarkdownContext = React.createContext(null); diff --git a/next-env.d.ts b/next-env.d.ts index 4f11a03dc..a4a7b3f5c 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -2,4 +2,4 @@ /// // NOTE: This file should not be edited -// see https://nextjs.org/docs/basic-features/typescript for more information. +// see https://nextjs.org/docs/pages/building-your-application/configuring/typescript for more information. diff --git a/pages/community/index.page.tsx b/pages/community/index.page.tsx index 90a927eac..6ab4630b1 100644 --- a/pages/community/index.page.tsx +++ b/pages/community/index.page.tsx @@ -216,7 +216,7 @@ export default function communityPages(props: any) { body='Explore our exciting plans and upcoming milestones. 🚀' headerSize='large' bodyTextSize='medium' - link='https://github.com/orgs/json-schema-org/discussions/427' + link='/overview/roadmap' /> + + {newTitle} + + {newTitle} +
+ Our "Roadmap" section displays our key objectives for the long term. + While this roadmap provides a detailed outlook for the near future, + please note that it might be subject to change. In fact, we are + currently{' '} + + discussing + {' '} + the new priorities for the next 24-month cycle, which will lead to + relevant changes. Please consider joining the discussion to become an + active part of JSON Schema's future! +
+
+
+
+
+ + {roadmap.map((item) => { + const status = + item.fieldValues.nodes.find( + (node) => node.field?.name === 'Status', + )?.name || 'Unknown'; + const category = + item.fieldValues.nodes.find( + (node) => node.field?.name === 'Category', + )?.name || 'Uncategorized'; + const effort = + item.fieldValues.nodes.find( + (node) => node.field?.name === 'Effort', + )?.name || 'Unknown'; + const impact = + item.fieldValues.nodes.find( + (node) => node.field?.name === 'Impact', + )?.name || 'Unknown'; + + const effortClass = + effortColors[effort as keyof typeof effortColors] || + effortColors['Unknown']; + const impactClass = + impactColors[impact as keyof typeof impactColors] || + impactColors['Unknown']; + const statusClass = + statusColors[status as keyof typeof statusColors] || + statusColors['Unknown']; + + return ( +
+
+
+
+ +
+
+ + {category} + +

+ {item.content.title} +

+ +
+ + Effort: {effort} + + + Impact: {impact} + +
+
+
+ + {status} + +
+
+
+ ); + })} +
+
+
+ + + ); +} + +Roadmap.getLayout = getLayout; diff --git a/tailwind.config.js b/tailwind.config.js index 4df42289c..19c659958 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -3,53 +3,52 @@ module.exports = { './pages/**/*.{js,ts,jsx,tsx,md}', './components/**/*.{js,ts,jsx,tsx,md}', ], - darkMode: "class", + darkMode: 'class', theme: { screens: { - 'sm': '640px', + sm: '640px', // => @media (min-width: 640px) { ... } - 'md': '768px', + md: '768px', // => @media (min-width: 768px) { ... } - 'lg': '1024px', + lg: '1024px', // => @media (min-width: 1024px) { ... } - 'xl': '1280px', + xl: '1280px', // => @media (min-width: 1280px) { ... } '2xl': '1536px', // => @media (min-width: 1536px) { ... } - 'ab1':'890px' - + ab1: '890px', }, fontFamily: { - 'sans': ['Inter', 'ui-sans-serif', 'system-ui'], - 'serif': ['ui-serif', 'Georgia'], - 'mono': ['JetBrains Mono', 'monospace'] + sans: ['Inter', 'ui-sans-serif', 'system-ui'], + serif: ['ui-serif', 'Georgia'], + mono: ['JetBrains Mono', 'monospace'], }, fontSize: { sm: '0.8rem', base: '16px', xl: '20px', - 'h5': '20px', - 'h4': '25px', - 'h3': '35px', - 'h2': '45px', - 'h1': '60px', - 'h1mobile': '35px', - 'h2mobile': '28px', - 'h3mobile': '25px', - 'h4mobile': '22px', - 'h5mobile': '20px' + h5: '20px', + h4: '25px', + h3: '35px', + h2: '45px', + h1: '60px', + h1mobile: '35px', + h2mobile: '28px', + h3mobile: '25px', + h4mobile: '22px', + h5mobile: '20px', }, - + extend: { backgroundImage: { - 'gradient-radial': 'linear-gradient(72.68deg, #002CC4 28.97%, #5468FF 145.47%)', + 'gradient-radial': + 'linear-gradient(72.68deg, #002CC4 28.97%, #5468FF 145.47%)', }, colors: { - white: '#ffffff', black: '#000000', primary: '#002CC4', @@ -57,27 +56,27 @@ module.exports = { btnGold: '#AB9700', startBlue: '#002CC4', endBlue: '#5468FF', - linkBlue: '#3B82F6' + linkBlue: '#3B82F6', }, gradientColorStopPositions: { 33: '145.47%', }, lineHeight: { - 'base': '24px', - 'header': '74px', + base: '24px', + header: '74px', }, boxShadow: { '3xl': ' 0px 0px 20px 5px rgba(0, 0, 0, 0.05)', '4xl': [ '0 35px 35px rgba(0, 0, 0, 0.25)', - '0 45px 65px rgba(0, 0, 0, 0.15)' + '0 45px 65px rgba(0, 0, 0, 0.15)', ], - 'xl': ' 0px 6px 10px -4px rgba(0, 0, 0, 0.25);' - } - } + xl: ' 0px 6px 10px -4px rgba(0, 0, 0, 0.25);', + }, + }, }, plugins: [], -} +}; /* FONT WEIGHT @@ -88,4 +87,4 @@ module.exports = { font-semibold 600 font-bold 700 font-black 900 -*/ \ No newline at end of file +*/