Files
stats/packages/sdks/_info/frameworks.tsx

132 lines
3.2 KiB
TypeScript

import type React from 'react';
import { AstroIcon } from './icons/astro-icon';
import { ExpressIcon } from './icons/express-icon';
import { HtmlIcon } from './icons/html-icon';
import { KotlinIcon } from './icons/kotlin-icon';
import { LaravelIcon } from './icons/laravel-icon';
import { NextjsIcon } from './icons/nextjs-icon';
import { NodeIcon } from './icons/node-icon';
import { ReactIcon } from './icons/react-icon';
import { RemixIcon } from './icons/remix-icon';
import { RestIcon } from './icons/rest-icon';
import { RubyIcon } from './icons/ruby-icon';
import { RustIcon } from './icons/rust-icon';
import { SwiftIcon } from './icons/swift-icon';
import { VueIcon } from './icons/vue-icon';
export type Framework = {
key: string;
IconComponent: React.ComponentType<React.SVGProps<SVGSVGElement>>;
name: string;
href: string;
type: ('website' | 'app' | 'backend')[];
};
export const frameworks: Framework[] = [
{
key: 'html',
IconComponent: HtmlIcon,
name: 'HTML / Script',
href: 'https://openpanel.dev/docs/sdks/script',
type: ['website'],
},
{
key: 'react',
IconComponent: ReactIcon,
name: 'React',
href: 'https://openpanel.dev/docs/sdks/react',
type: ['website'],
},
{
key: 'nextjs',
IconComponent: NextjsIcon,
name: 'Next.js',
href: 'https://openpanel.dev/docs/sdks/nextjs',
type: ['website'],
},
{
key: 'remix',
IconComponent: RemixIcon,
name: 'Remix',
href: 'https://openpanel.dev/docs/sdks/remix',
type: ['website'],
},
{
key: 'vue',
IconComponent: VueIcon,
name: 'Vue',
href: 'https://openpanel.dev/docs/sdks/vue',
type: ['website'],
},
{
key: 'astro',
IconComponent: AstroIcon,
name: 'Astro',
href: 'https://openpanel.dev/docs/sdks/astro',
type: ['website'],
},
{
key: 'rest',
IconComponent: RestIcon,
name: 'Rest API',
href: 'https://openpanel.dev/docs/api/track',
type: ['backend', 'app', 'website'],
},
{
key: 'react-native',
IconComponent: ReactIcon,
name: 'React-Native',
href: 'https://openpanel.dev/docs/sdks/react-native',
type: ['app'],
},
{
key: 'node',
IconComponent: NodeIcon,
name: 'Node',
href: 'https://openpanel.dev/docs/sdks/javascript',
type: ['backend'],
},
{
key: 'express',
IconComponent: ExpressIcon,
name: 'Express',
href: 'https://openpanel.dev/docs/sdks/express',
type: ['backend'],
},
{
key: 'laravel',
IconComponent: LaravelIcon,
name: 'Laravel',
href: 'https://github.com/tbleckert/openpanel-laravel/tree/main',
type: ['backend'],
},
{
key: 'rust',
IconComponent: RustIcon,
name: 'Rust',
href: 'https://openpanel.dev/docs/sdks/rust',
type: ['backend'],
},
{
key: 'ruby',
IconComponent: RubyIcon,
name: 'Ruby',
href: 'https://openpanel.dev/docs/sdks/ruby',
type: ['backend'],
},
{
key: 'ios',
IconComponent: SwiftIcon,
name: 'iOS (swift)',
href: 'https://openpanel.dev/docs/sdks/swift',
type: ['app'],
},
{
key: 'android',
IconComponent: KotlinIcon,
name: 'Android (kotlin)',
href: 'https://openpanel.dev/docs/sdks/kotlin',
type: ['app'],
},
];