import React, { DetailedHTMLProps, ReactNode, SVGProps, useRef } from "react";
import clsx from "clsx";
import {
Nest,
Strapi,
Supabase,
Hasura,
Airtable,
Oracle,
MongoDB,
PostgreSql,
MySql,
MsSqlServer,
SQLite,
Redis,
Ufw,
Docker,
Named,
Srvnginx,
Srvapache,
Nodejs,
Wordpress,
Memcached,
ElasticSe,
Phpv,
Sshico,
Phpmyadmin
} from "../assets/integration-icons";
import { useInView } from "framer-motion";
export const EnterpriseDataSource = ({ className }: { className?: string }) => {
return (
Technology Stack {" "}
for the modern Web
OpenAdmin Stack
We use modern, lightweight, proven technologies to deliver high-performance.
{[...list1, ...list1].map(
({ icon: Icon, label, tooltip }, index) => (
}
/>
),
)}
OpenPanel Stack
Get all the latest web technologies under one stack to run any applications at the highest performance.
{[...list2, ...list2].map(
({ icon: Icon, label, tooltip }, index) => (
}
/>
),
)}
);
};
const PackagesContainer = ({
children,
className,
animDirection,
...props
}: DetailedHTMLProps, HTMLDivElement> & {
animDirection: "left" | "right";
}) => {
const ref = useRef(null);
const inView = useInView(ref);
return (
);
};
const PackageItem = (props: {
icon: ReactNode;
label: string;
tooltip: string | null;
}) => {
const { tooltip, icon, label } = props;
return (
{icon}
{label}
{tooltip && (
)}
);
};
const list1 = [
{
icon: (props: SVGProps) => ,
label: "Nginx",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "MySQL",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "Docker",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "UFW",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "Named",
tooltip: null,
},
] as const;
const list2 = [
{
icon: (props: SVGProps) => ,
label: "PHP",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "NodeJS",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "MySQL",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "Apache",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "Nginx",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "REDIS",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "Memcached",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "Elasticsearch",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "phpMyAdmin",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "WP Manager",
tooltip: null,
},
{
icon: (props: SVGProps) => ,
label: "SSH",
tooltip: null,
},
] as const;