diff --git a/apps/landing-page/pages/_app.tsx b/apps/landing-page/pages/_app.tsx
index 4cf11b63..ed5e18de 100644
--- a/apps/landing-page/pages/_app.tsx
+++ b/apps/landing-page/pages/_app.tsx
@@ -83,6 +83,7 @@ function collectHeadings(
const websiteName = 'Devfile.io';
const websiteDescription = 'An open standard defining containerized development environments.';
+const lfTrademarkUsageUrl = 'https://lfprojects.org/policies/';
function LandingPage({ Component, pageProps }: AppProps): JSX.Element {
const { markdoc } = pageProps as MarkdocNextJsPageProps;
@@ -114,7 +115,14 @@ function LandingPage({ Component, pageProps }: AppProps): JSX.Element {
-
+
diff --git a/apps/landing-page/pages/index.tsx b/apps/landing-page/pages/index.tsx
index ae560ba7..f23159a4 100644
--- a/apps/landing-page/pages/index.tsx
+++ b/apps/landing-page/pages/index.tsx
@@ -14,7 +14,12 @@
* limitations under the License.
*/
-import { Hero, KeyFeaturesSection, ValuePropositionSection } from '@devfile-web/core';
+import {
+ CncfProjectSection,
+ Hero,
+ KeyFeaturesSection,
+ ValuePropositionSection,
+} from '@devfile-web/core';
export function Index(): JSX.Element {
return (
@@ -22,6 +27,7 @@ export function Index(): JSX.Element {
+
>
);
}
diff --git a/apps/registry-viewer/pages/_app.tsx b/apps/registry-viewer/pages/_app.tsx
index 90d29092..d098e4de 100644
--- a/apps/registry-viewer/pages/_app.tsx
+++ b/apps/registry-viewer/pages/_app.tsx
@@ -27,6 +27,7 @@ const analyticsConfig = {
};
const websiteName = 'Devfile Registry';
+const lfTrademarkUsageUrl = 'https://lfprojects.org/policies/';
function CustomApp({ Component, pageProps }: AppProps): JSX.Element {
return (
@@ -38,7 +39,13 @@ function CustomApp({ Component, pageProps }: AppProps): JSX.Element {
-
+
diff --git a/libs/core/src/components/cncf-project-section/cncf-project-section.tsx b/libs/core/src/components/cncf-project-section/cncf-project-section.tsx
new file mode 100644
index 00000000..4e86be9b
--- /dev/null
+++ b/libs/core/src/components/cncf-project-section/cncf-project-section.tsx
@@ -0,0 +1,32 @@
+/**
+ * Copyright Red Hat
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { CncfIcon } from '../../icons';
+
+export function CncfProjectSection(): JSX.Element {
+ return (
+
+
+
+
+ We are a Cloud Native Computing Foundation sandbox project.
+
{footerNavigation.social.map((item) => (
diff --git a/libs/core/src/components/index.ts b/libs/core/src/components/index.ts
index b9f90b9b..29af961c 100644
--- a/libs/core/src/components/index.ts
+++ b/libs/core/src/components/index.ts
@@ -47,3 +47,4 @@ export * from './devfile-datalist/devfile-datalist';
export * from './devfile-codeblock/devfile-codeblock';
export * from './custom-404/custom-404';
export * from './video/video';
+export * from './cncf-project-section/cncf-project-section';
diff --git a/libs/core/src/icons/cncf-icon.tsx b/libs/core/src/icons/cncf-icon.tsx
new file mode 100644
index 00000000..983f5840
--- /dev/null
+++ b/libs/core/src/icons/cncf-icon.tsx
@@ -0,0 +1,346 @@
+/**
+ * Copyright Red Hat
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { SVGProps } from 'react';
+import { DarkMode, LightMode } from '../components';
+
+export function CncfIcon(props: SVGProps): JSX.Element {
+ return (
+ <>
+
+
+
+
+
+
+ >
+ );
+}
+
+export default CncfIcon;
diff --git a/libs/core/src/icons/index.ts b/libs/core/src/icons/index.ts
index 0a41da53..6c2dad38 100644
--- a/libs/core/src/icons/index.ts
+++ b/libs/core/src/icons/index.ts
@@ -27,3 +27,4 @@ export * from './red-hat-icon';
export * from './slack-icon';
export * from './theming-icon';
export * from './warning-icon';
+export * from './cncf-icon';
diff --git a/libs/core/src/types/index.ts b/libs/core/src/types/index.ts
index 8263b0db..b5729d0d 100644
--- a/libs/core/src/types/index.ts
+++ b/libs/core/src/types/index.ts
@@ -16,3 +16,4 @@
export { Convert as ConvertDevfileSpec, type DevfileSpec } from './devfile-spec';
export * from './custom-404';
+export * from './props';
diff --git a/libs/core/src/types/props.ts b/libs/core/src/types/props.ts
new file mode 100644
index 00000000..94c94849
--- /dev/null
+++ b/libs/core/src/types/props.ts
@@ -0,0 +1,28 @@
+/**
+ * Copyright Red Hat
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Interface of a URL entity object
+ */
+export interface UrlEntity {
+ text: string;
+ href: string;
+}
+
+/**
+ * Type of Link property fields
+ */
+export type LinkProp = UrlEntity;