generated from template/astro-template
	Initial commit
This commit is contained in:
		
							
								
								
									
										13
									
								
								.cnb.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								.cnb.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
			
		||||
# .cnb.yml
 | 
			
		||||
$:
 | 
			
		||||
  vscode:
 | 
			
		||||
    - docker:
 | 
			
		||||
        image: docker.cnb.cool/kevisual/dev-env:latest
 | 
			
		||||
      services:
 | 
			
		||||
        - vscode
 | 
			
		||||
        - docker
 | 
			
		||||
      imports: https://cnb.cool/kevisual/env/-/blob/main/env.yml
 | 
			
		||||
      # 开发环境启动后会执行的任务
 | 
			
		||||
      stages:
 | 
			
		||||
        - name: pnpm install
 | 
			
		||||
          script: pnpm install
 | 
			
		||||
							
								
								
									
										28
									
								
								.github/workflows/git-sync.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								.github/workflows/git-sync.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
			
		||||
name: Sync to CNB
 | 
			
		||||
# on: [push]
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      # - main
 | 
			
		||||
      - 'releases/**'
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  sync:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
        with:
 | 
			
		||||
          fetch-depth: 0
 | 
			
		||||
      
 | 
			
		||||
      - name: Sync to CNB Repository
 | 
			
		||||
        run: |
 | 
			
		||||
          docker run --rm \
 | 
			
		||||
            -v ${{ github.workspace }}:${{ github.workspace }} \
 | 
			
		||||
            -w ${{ github.workspace }} \
 | 
			
		||||
            -e PLUGIN_TARGET_URL="https://cnb.cool/kevisual/astro-template.git" \
 | 
			
		||||
            -e PLUGIN_AUTH_TYPE="https" \
 | 
			
		||||
            -e PLUGIN_USERNAME="cnb" \
 | 
			
		||||
            -e PLUGIN_PASSWORD=${{ secrets.GIT_PASSWORD }} \
 | 
			
		||||
            -e PLUGIN_SYNC_MODE="rebase" \
 | 
			
		||||
            tencentcom/git-sync
 | 
			
		||||
							
								
								
									
										6
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
node_modules
 | 
			
		||||
.DS_Store
 | 
			
		||||
 | 
			
		||||
.astro
 | 
			
		||||
 | 
			
		||||
dist
 | 
			
		||||
							
								
								
									
										0
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
								
								
									
										3
									
								
								.npmrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.npmrc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
//npm.xiongxiao.me/:_authToken=${ME_NPM_TOKEN}
 | 
			
		||||
//registry.npmjs.org/:_authToken=${NPM_TOKEN}
 | 
			
		||||
ignore-workspace-root-check=true
 | 
			
		||||
							
								
								
									
										6
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  "recommendations": [
 | 
			
		||||
    "astro-build.astro-vscode",
 | 
			
		||||
    "bradlc.vscode-tailwindcss"
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										3
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
{
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										50
									
								
								astro.config.mjs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								astro.config.mjs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,50 @@
 | 
			
		||||
import { defineConfig } from 'astro/config';
 | 
			
		||||
import mdx from '@astrojs/mdx';
 | 
			
		||||
import react from '@astrojs/react';
 | 
			
		||||
import sitemap from '@astrojs/sitemap';
 | 
			
		||||
import pkgs from './package.json';
 | 
			
		||||
import tailwindcss from '@tailwindcss/vite';
 | 
			
		||||
import basicSsl from '@vitejs/plugin-basic-ssl';
 | 
			
		||||
 | 
			
		||||
const isDev = process.env.NODE_ENV === 'development';
 | 
			
		||||
const plugins = [tailwindcss()];
 | 
			
		||||
const isCNB = process.env.CNB === 'true';
 | 
			
		||||
if (isDev && !isCNB) {
 | 
			
		||||
  plugins.push(basicSsl());
 | 
			
		||||
}
 | 
			
		||||
let target = process.env.VITE_API_URL || 'https://localhost:51015';
 | 
			
		||||
const apiProxy = { target: target, changeOrigin: true, ws: true, rewriteWsOrigin: true, secure: false, cookieDomainRewrite: 'localhost' };
 | 
			
		||||
let proxy = {
 | 
			
		||||
  '/root/center/': {
 | 
			
		||||
    target: `${target}/root/center/`,
 | 
			
		||||
  },
 | 
			
		||||
  '/user/login/': {
 | 
			
		||||
    target: `${target}/user/login/`,
 | 
			
		||||
  },
 | 
			
		||||
  '/api': apiProxy,
 | 
			
		||||
  '/client': apiProxy,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export default defineConfig({
 | 
			
		||||
  // ...
 | 
			
		||||
  // site: 'https://kevisual.xiongxiao.me/root/astro',
 | 
			
		||||
  base: isDev ? undefined : pkgs.basename,
 | 
			
		||||
  integrations: [
 | 
			
		||||
    mdx(),
 | 
			
		||||
    react(), //
 | 
			
		||||
    // sitemap(), // sitemap must be site has a domain
 | 
			
		||||
  ],
 | 
			
		||||
 | 
			
		||||
  vite: {
 | 
			
		||||
    plugins,
 | 
			
		||||
    define: {
 | 
			
		||||
      BASE_NAME: JSON.stringify(pkgs.basename),
 | 
			
		||||
    },
 | 
			
		||||
    server: {
 | 
			
		||||
      port: 7008,
 | 
			
		||||
      host: '0.0.0.0',
 | 
			
		||||
      allowedHosts: true,
 | 
			
		||||
      proxy,
 | 
			
		||||
    },
 | 
			
		||||
  },
 | 
			
		||||
});
 | 
			
		||||
							
								
								
									
										21
									
								
								components.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								components.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "$schema": "https://ui.shadcn.com/schema.json",
 | 
			
		||||
  "style": "new-york",
 | 
			
		||||
  "rsc": false,
 | 
			
		||||
  "tsx": true,
 | 
			
		||||
  "tailwind": {
 | 
			
		||||
    "config": "",
 | 
			
		||||
    "css": "src/styles/global.css",
 | 
			
		||||
    "baseColor": "neutral",
 | 
			
		||||
    "cssVariables": true,
 | 
			
		||||
    "prefix": ""
 | 
			
		||||
  },
 | 
			
		||||
  "aliases": {
 | 
			
		||||
    "components": "@/components",
 | 
			
		||||
    "utils": "@/lib/utils",
 | 
			
		||||
    "ui": "@/components/ui",
 | 
			
		||||
    "lib": "@/lib",
 | 
			
		||||
    "hooks": "@/hooks"
 | 
			
		||||
  },
 | 
			
		||||
  "iconLibrary": "lucide"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										56
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,56 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "@kevisual/astro-template",
 | 
			
		||||
  "version": "0.0.1",
 | 
			
		||||
  "description": "",
 | 
			
		||||
  "main": "index.js",
 | 
			
		||||
  "basename": "/root/astro-template",
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "dev": "astro dev",
 | 
			
		||||
    "build": "astro build",
 | 
			
		||||
    "preview": "astro preview",
 | 
			
		||||
    "pub": "envision deploy ./dist -k astro-template -v 0.0.1 -u",
 | 
			
		||||
    "git:submodule": "git submodule update --init --recursive",
 | 
			
		||||
    "sn": "pnpm dlx shadcn@latest add "
 | 
			
		||||
  },
 | 
			
		||||
  "keywords": [],
 | 
			
		||||
  "author": "abearxiong <xiongxiao@xiongxiao.me> (https://www.xiongxiao.me)",
 | 
			
		||||
  "license": "MIT",
 | 
			
		||||
  "type": "module",
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "@astrojs/mdx": "^4.2.6",
 | 
			
		||||
    "@astrojs/react": "^4.2.7",
 | 
			
		||||
    "@astrojs/sitemap": "^3.4.0",
 | 
			
		||||
    "@kevisual/query": "^0.0.18",
 | 
			
		||||
    "@kevisual/query-login": "^0.0.5",
 | 
			
		||||
    "@kevisual/registry": "^0.0.1",
 | 
			
		||||
    "@tailwindcss/vite": "^4.1.7",
 | 
			
		||||
    "astro": "^5.7.13",
 | 
			
		||||
    "class-variance-authority": "^0.7.1",
 | 
			
		||||
    "clsx": "^2.1.1",
 | 
			
		||||
    "dayjs": "^1.11.13",
 | 
			
		||||
    "lodash-es": "^4.17.21",
 | 
			
		||||
    "lucide-react": "^0.511.0",
 | 
			
		||||
    "nanoid": "^5.1.5",
 | 
			
		||||
    "react": "^19.1.0",
 | 
			
		||||
    "react-dom": "^19.1.0",
 | 
			
		||||
    "react-toastify": "^11.0.5",
 | 
			
		||||
    "tailwind-merge": "^3.3.0",
 | 
			
		||||
    "zustand": "^5.0.4"
 | 
			
		||||
  },
 | 
			
		||||
  "publishConfig": {
 | 
			
		||||
    "access": "public"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "@kevisual/query-awesome": "^0.0.2",
 | 
			
		||||
    "@kevisual/types": "^0.0.10",
 | 
			
		||||
    "@types/react": "^19.1.4",
 | 
			
		||||
    "@types/react-dom": "^19.1.5",
 | 
			
		||||
    "@vitejs/plugin-basic-ssl": "^2.0.0",
 | 
			
		||||
    "commander": "^14.0.0",
 | 
			
		||||
    "dotenv": "^16.5.0",
 | 
			
		||||
    "inquire": "^0.4.8",
 | 
			
		||||
    "tailwindcss": "^4.1.7",
 | 
			
		||||
    "tw-animate-css": "^1.3.0"
 | 
			
		||||
  },
 | 
			
		||||
  "packageManager": "pnpm@10.11.0"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										0
									
								
								packages/.gitkeep
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								packages/.gitkeep
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										1
									
								
								packages/components
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								packages/components
									
									
									
									
									
										Submodule
									
								
							 Submodule packages/components added at bdf6243bd9
									
								
							
							
								
								
									
										5190
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										5190
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										4
									
								
								pnpm-workspace.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								pnpm-workspace.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
packages:
 | 
			
		||||
  - packages/*
 | 
			
		||||
  - apps/*
 | 
			
		||||
  - submodules/*
 | 
			
		||||
							
								
								
									
										3
									
								
								src/components/Test.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								src/components/Test.tsx
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
export const Test = () => {
 | 
			
		||||
  return <div>Test</div>;
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										6
									
								
								src/lib/utils.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								src/lib/utils.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
import { clsx, type ClassValue } from "clsx"
 | 
			
		||||
import { twMerge } from "tailwind-merge"
 | 
			
		||||
 | 
			
		||||
export function cn(...inputs: ClassValue[]) {
 | 
			
		||||
  return twMerge(clsx(inputs))
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										3
									
								
								src/modules/query.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								src/modules/query.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
import { Query } from '@kevisual/query';
 | 
			
		||||
 | 
			
		||||
export const query = new Query();
 | 
			
		||||
							
								
								
									
										50
									
								
								src/pages/index.astro
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								src/pages/index.astro
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,50 @@
 | 
			
		||||
---
 | 
			
		||||
// import { query } from '@/modules/query.ts';
 | 
			
		||||
console.log('Hello from index.astro');
 | 
			
		||||
import { Test } from '@/components/Test.tsx';
 | 
			
		||||
import '../styles/global.css';
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
<html lang='en'>
 | 
			
		||||
  <head>
 | 
			
		||||
    <title>My Homepage</title>
 | 
			
		||||
  </head>e
 | 
			
		||||
  <body>
 | 
			
		||||
    <h1 onclick="{onClick}">Welcome to my website!</h1>
 | 
			
		||||
    <div class='bg-amber-50 w-20 h-20 rounded-full'></div>
 | 
			
		||||
    <div id='root'></div>
 | 
			
		||||
    <Test client:only />
 | 
			
		||||
    <!-- <Button  client:only="react">sdf sdf</Button> -->
 | 
			
		||||
    <script type='importmap' data-vite-ignore is:inline>
 | 
			
		||||
      {
 | 
			
		||||
        "imports": {
 | 
			
		||||
          "react": "https://esm.sh/react@19.1.0",
 | 
			
		||||
          "react-dom": "https://esm.sh/react-dom@19.1.0/client.js",
 | 
			
		||||
          "react-toastify": "https://esm.sh/react-toastify@11.0.5"
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    </script>
 | 
			
		||||
    <script type='module' data-vite-ignore is:inline>
 | 
			
		||||
      import { Button, message } from 'https://esm.sh/antd?standalone';
 | 
			
		||||
      import React from 'react';
 | 
			
		||||
      import { ToastContainer, toast } from 'react-toastify';
 | 
			
		||||
      import { createRoot } from 'react-dom';
 | 
			
		||||
      setTimeout(() => {
 | 
			
		||||
        toast.loading('Hello from index.astro');
 | 
			
		||||
        window.toast = toast;
 | 
			
		||||
        console.log('message', toast);
 | 
			
		||||
      }, 1000);
 | 
			
		||||
      console.log('Hello from index.astro', Button);
 | 
			
		||||
      const root = document.getElementById('root');
 | 
			
		||||
      const render = createRoot(root);
 | 
			
		||||
      const App = () => {
 | 
			
		||||
        const button = React.createElement(Button, null, 'Hello');
 | 
			
		||||
        const messageEl = React.createElement(ToastContainer, null, 'Hello');
 | 
			
		||||
        const wrapperMessage = React.createElement('div', null, [button, messageEl]);
 | 
			
		||||
        return wrapperMessage;
 | 
			
		||||
      };
 | 
			
		||||
      // render.render(React.createElement(Button, null, 'Hello'), root);
 | 
			
		||||
      render.render(App(), root);
 | 
			
		||||
    </script>
 | 
			
		||||
  </body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										120
									
								
								src/styles/global.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								src/styles/global.css
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,120 @@
 | 
			
		||||
@import 'tailwindcss';
 | 
			
		||||
@import "tw-animate-css";
 | 
			
		||||
 | 
			
		||||
@custom-variant dark (&:is(.dark *));
 | 
			
		||||
 | 
			
		||||
@theme inline {
 | 
			
		||||
  --radius-sm: calc(var(--radius) - 4px);
 | 
			
		||||
  --radius-md: calc(var(--radius) - 2px);
 | 
			
		||||
  --radius-lg: var(--radius);
 | 
			
		||||
  --radius-xl: calc(var(--radius) + 4px);
 | 
			
		||||
  --color-background: var(--background);
 | 
			
		||||
  --color-foreground: var(--foreground);
 | 
			
		||||
  --color-card: var(--card);
 | 
			
		||||
  --color-card-foreground: var(--card-foreground);
 | 
			
		||||
  --color-popover: var(--popover);
 | 
			
		||||
  --color-popover-foreground: var(--popover-foreground);
 | 
			
		||||
  --color-primary: var(--primary);
 | 
			
		||||
  --color-primary-foreground: var(--primary-foreground);
 | 
			
		||||
  --color-secondary: var(--secondary);
 | 
			
		||||
  --color-secondary-foreground: var(--secondary-foreground);
 | 
			
		||||
  --color-muted: var(--muted);
 | 
			
		||||
  --color-muted-foreground: var(--muted-foreground);
 | 
			
		||||
  --color-accent: var(--accent);
 | 
			
		||||
  --color-accent-foreground: var(--accent-foreground);
 | 
			
		||||
  --color-destructive: var(--destructive);
 | 
			
		||||
  --color-border: var(--border);
 | 
			
		||||
  --color-input: var(--input);
 | 
			
		||||
  --color-ring: var(--ring);
 | 
			
		||||
  --color-chart-1: var(--chart-1);
 | 
			
		||||
  --color-chart-2: var(--chart-2);
 | 
			
		||||
  --color-chart-3: var(--chart-3);
 | 
			
		||||
  --color-chart-4: var(--chart-4);
 | 
			
		||||
  --color-chart-5: var(--chart-5);
 | 
			
		||||
  --color-sidebar: var(--sidebar);
 | 
			
		||||
  --color-sidebar-foreground: var(--sidebar-foreground);
 | 
			
		||||
  --color-sidebar-primary: var(--sidebar-primary);
 | 
			
		||||
  --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
 | 
			
		||||
  --color-sidebar-accent: var(--sidebar-accent);
 | 
			
		||||
  --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
 | 
			
		||||
  --color-sidebar-border: var(--sidebar-border);
 | 
			
		||||
  --color-sidebar-ring: var(--sidebar-ring);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
:root {
 | 
			
		||||
  --radius: 0.625rem;
 | 
			
		||||
  --background: oklch(1 0 0);
 | 
			
		||||
  --foreground: oklch(0.145 0 0);
 | 
			
		||||
  --card: oklch(1 0 0);
 | 
			
		||||
  --card-foreground: oklch(0.145 0 0);
 | 
			
		||||
  --popover: oklch(1 0 0);
 | 
			
		||||
  --popover-foreground: oklch(0.145 0 0);
 | 
			
		||||
  --primary: oklch(0.205 0 0);
 | 
			
		||||
  --primary-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --secondary: oklch(0.97 0 0);
 | 
			
		||||
  --secondary-foreground: oklch(0.205 0 0);
 | 
			
		||||
  --muted: oklch(0.97 0 0);
 | 
			
		||||
  --muted-foreground: oklch(0.556 0 0);
 | 
			
		||||
  --accent: oklch(0.97 0 0);
 | 
			
		||||
  --accent-foreground: oklch(0.205 0 0);
 | 
			
		||||
  --destructive: oklch(0.577 0.245 27.325);
 | 
			
		||||
  --border: oklch(0.922 0 0);
 | 
			
		||||
  --input: oklch(0.922 0 0);
 | 
			
		||||
  --ring: oklch(0.708 0 0);
 | 
			
		||||
  --chart-1: oklch(0.646 0.222 41.116);
 | 
			
		||||
  --chart-2: oklch(0.6 0.118 184.704);
 | 
			
		||||
  --chart-3: oklch(0.398 0.07 227.392);
 | 
			
		||||
  --chart-4: oklch(0.828 0.189 84.429);
 | 
			
		||||
  --chart-5: oklch(0.769 0.188 70.08);
 | 
			
		||||
  --sidebar: oklch(0.985 0 0);
 | 
			
		||||
  --sidebar-foreground: oklch(0.145 0 0);
 | 
			
		||||
  --sidebar-primary: oklch(0.205 0 0);
 | 
			
		||||
  --sidebar-primary-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --sidebar-accent: oklch(0.97 0 0);
 | 
			
		||||
  --sidebar-accent-foreground: oklch(0.205 0 0);
 | 
			
		||||
  --sidebar-border: oklch(0.922 0 0);
 | 
			
		||||
  --sidebar-ring: oklch(0.708 0 0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.dark {
 | 
			
		||||
  --background: oklch(0.145 0 0);
 | 
			
		||||
  --foreground: oklch(0.985 0 0);
 | 
			
		||||
  --card: oklch(0.205 0 0);
 | 
			
		||||
  --card-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --popover: oklch(0.205 0 0);
 | 
			
		||||
  --popover-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --primary: oklch(0.922 0 0);
 | 
			
		||||
  --primary-foreground: oklch(0.205 0 0);
 | 
			
		||||
  --secondary: oklch(0.269 0 0);
 | 
			
		||||
  --secondary-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --muted: oklch(0.269 0 0);
 | 
			
		||||
  --muted-foreground: oklch(0.708 0 0);
 | 
			
		||||
  --accent: oklch(0.269 0 0);
 | 
			
		||||
  --accent-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --destructive: oklch(0.704 0.191 22.216);
 | 
			
		||||
  --border: oklch(1 0 0 / 10%);
 | 
			
		||||
  --input: oklch(1 0 0 / 15%);
 | 
			
		||||
  --ring: oklch(0.556 0 0);
 | 
			
		||||
  --chart-1: oklch(0.488 0.243 264.376);
 | 
			
		||||
  --chart-2: oklch(0.696 0.17 162.48);
 | 
			
		||||
  --chart-3: oklch(0.769 0.188 70.08);
 | 
			
		||||
  --chart-4: oklch(0.627 0.265 303.9);
 | 
			
		||||
  --chart-5: oklch(0.645 0.246 16.439);
 | 
			
		||||
  --sidebar: oklch(0.205 0 0);
 | 
			
		||||
  --sidebar-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --sidebar-primary: oklch(0.488 0.243 264.376);
 | 
			
		||||
  --sidebar-primary-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --sidebar-accent: oklch(0.269 0 0);
 | 
			
		||||
  --sidebar-accent-foreground: oklch(0.985 0 0);
 | 
			
		||||
  --sidebar-border: oklch(1 0 0 / 10%);
 | 
			
		||||
  --sidebar-ring: oklch(0.556 0 0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@layer base {
 | 
			
		||||
  * {
 | 
			
		||||
    @apply border-border outline-ring/50;
 | 
			
		||||
  }
 | 
			
		||||
  body {
 | 
			
		||||
    @apply bg-background text-foreground;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										0
									
								
								submodules/.gitkeep
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								submodules/.gitkeep
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										14
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
{
 | 
			
		||||
  "extends": "@kevisual/types/json/frontend.json",
 | 
			
		||||
  "compilerOptions": {
 | 
			
		||||
    "baseUrl": ".",
 | 
			
		||||
    "paths": {
 | 
			
		||||
      "@/*": [
 | 
			
		||||
        "./src/*"
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
  },
 | 
			
		||||
  "include": [
 | 
			
		||||
    "src/**/*",
 | 
			
		||||
  ],
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user