mirror of
https://github.com/shadcnstudio/shadcn-studio
synced 2026-04-21 13:27:16 +00:00
initial commit
This commit is contained in:
commit
7089a4c8e9
306 changed files with 30623 additions and 0 deletions
15
.editorconfig
Normal file
15
.editorconfig
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# Editor configuration, see http://editorconfig.org
|
||||
root = true
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
[*.md]
|
||||
max_line_length = off
|
||||
trim_trailing_whitespace = false
|
||||
[*.yml]
|
||||
[*.{yml,yaml}]
|
||||
indent_size = 2
|
||||
2
.env.example
Normal file
2
.env.example
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
BASEPATH=
|
||||
NEXT_PUBLIC_APP_URL=
|
||||
120
.eslintrc.js
Normal file
120
.eslintrc.js
Normal file
|
|
@ -0,0 +1,120 @@
|
|||
module.exports = {
|
||||
extends: ['next/core-web-vitals', 'plugin:@typescript-eslint/recommended', 'plugin:import/recommended', 'prettier'],
|
||||
parserOptions: {
|
||||
project: './tsconfig.json'
|
||||
},
|
||||
globals: {
|
||||
React: true,
|
||||
JSX: true
|
||||
},
|
||||
ignorePatterns: ['node_modules/', 'dist/', '.eslintrc.js', '**/*.css'],
|
||||
rules: {
|
||||
'jsx-a11y/alt-text': 'off',
|
||||
'react/display-name': 'off',
|
||||
'react/no-children-prop': 'off',
|
||||
'@next/next/no-img-element': 'off',
|
||||
'@next/next/no-page-custom-font': 'off',
|
||||
'@typescript-eslint/consistent-type-imports': 'error',
|
||||
'@typescript-eslint/ban-ts-comment': 'off',
|
||||
'@typescript-eslint/no-explicit-any': 'off',
|
||||
'@typescript-eslint/no-unused-vars': 'error',
|
||||
'@typescript-eslint/no-non-null-assertion': 'off',
|
||||
'lines-around-comment': [
|
||||
'error',
|
||||
{
|
||||
beforeBlockComment: true,
|
||||
beforeLineComment: true,
|
||||
allowBlockStart: true,
|
||||
allowObjectStart: true,
|
||||
allowArrayStart: true
|
||||
}
|
||||
],
|
||||
'padding-line-between-statements': [
|
||||
'error',
|
||||
{
|
||||
blankLine: 'any',
|
||||
prev: 'export',
|
||||
next: 'export'
|
||||
},
|
||||
{
|
||||
blankLine: 'always',
|
||||
prev: ['const', 'let', 'var'],
|
||||
next: '*'
|
||||
},
|
||||
{
|
||||
blankLine: 'any',
|
||||
prev: ['const', 'let', 'var'],
|
||||
next: ['const', 'let', 'var']
|
||||
},
|
||||
{
|
||||
blankLine: 'always',
|
||||
prev: '*',
|
||||
next: ['function', 'multiline-const', 'multiline-block-like']
|
||||
},
|
||||
{
|
||||
blankLine: 'always',
|
||||
prev: ['function', 'multiline-const', 'multiline-block-like'],
|
||||
next: '*'
|
||||
}
|
||||
],
|
||||
'newline-before-return': 'error',
|
||||
'import/newline-after-import': [
|
||||
'error',
|
||||
{
|
||||
count: 1
|
||||
}
|
||||
],
|
||||
'import/order': [
|
||||
'error',
|
||||
{
|
||||
groups: ['builtin', 'external', ['internal', 'parent', 'sibling', 'index'], ['object', 'unknown']],
|
||||
pathGroups: [
|
||||
{
|
||||
pattern: 'react',
|
||||
group: 'external',
|
||||
position: 'before'
|
||||
},
|
||||
{
|
||||
pattern: 'next/** | next',
|
||||
group: 'external',
|
||||
position: 'before'
|
||||
},
|
||||
{
|
||||
pattern: '~/**',
|
||||
group: 'external',
|
||||
position: 'before'
|
||||
},
|
||||
{
|
||||
pattern: '@/**',
|
||||
group: 'internal'
|
||||
}
|
||||
],
|
||||
pathGroupsExcludedImportTypes: ['react', 'type'],
|
||||
'newlines-between': 'always-and-inside-groups'
|
||||
}
|
||||
]
|
||||
},
|
||||
settings: {
|
||||
react: {
|
||||
version: 'detect'
|
||||
},
|
||||
'import/parsers': {
|
||||
'@typescript-eslint/parser': ['.ts', '.tsx']
|
||||
},
|
||||
'import/resolver': {
|
||||
node: {},
|
||||
typescript: {
|
||||
project: './tsconfig.json'
|
||||
}
|
||||
}
|
||||
},
|
||||
overrides: [
|
||||
{
|
||||
files: ['*.ts', '*.tsx'],
|
||||
rules: {
|
||||
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
||||
'@typescript-eslint/no-var-requires': 'off'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
42
.gitignore
vendored
Normal file
42
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||
|
||||
# dependencies
|
||||
/node_modules
|
||||
/.pnp
|
||||
.pnp.*
|
||||
.yarn/*
|
||||
!.yarn/patches
|
||||
!.yarn/plugins
|
||||
!.yarn/releases
|
||||
!.yarn/versions
|
||||
|
||||
# testing
|
||||
/coverage
|
||||
|
||||
# next.js
|
||||
/.next/
|
||||
/out/
|
||||
|
||||
# production
|
||||
/build
|
||||
|
||||
# misc
|
||||
.DS_Store
|
||||
*.pem
|
||||
|
||||
# debug
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
.pnpm-debug.log*
|
||||
|
||||
# env files (can opt-in for committing if needed)
|
||||
.env*.local
|
||||
.env
|
||||
|
||||
# vercel
|
||||
.vercel
|
||||
|
||||
# typescript
|
||||
*.tsbuildinfo
|
||||
next-env.d.ts
|
||||
2
.npmrc
Normal file
2
.npmrc
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
auto-install-peers = true
|
||||
shamefully-hoist=true
|
||||
24
.prettierrc.json
Normal file
24
.prettierrc.json
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"arrowParens": "avoid",
|
||||
"bracketSpacing": true,
|
||||
"htmlWhitespaceSensitivity": "css",
|
||||
"insertPragma": false,
|
||||
"bracketSameLine": false,
|
||||
"jsxSingleQuote": true,
|
||||
"printWidth": 120,
|
||||
"proseWrap": "preserve",
|
||||
"quoteProps": "as-needed",
|
||||
"requirePragma": false,
|
||||
"semi": false,
|
||||
"singleQuote": true,
|
||||
"tabWidth": 2,
|
||||
"trailingComma": "none",
|
||||
"useTabs": false,
|
||||
"plugins": [
|
||||
"prettier-plugin-tailwindcss"
|
||||
],
|
||||
"tailwindFunctions": [
|
||||
"clsx",
|
||||
"cva"
|
||||
]
|
||||
}
|
||||
23
.vscode/extensions.json
vendored
Normal file
23
.vscode/extensions.json
vendored
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"recommendations": [
|
||||
"formulahendry.auto-close-tag",
|
||||
"steoates.autoimport",
|
||||
"mgmcdermott.vscode-language-babel",
|
||||
"aaron-bond.better-comments",
|
||||
"streetsidesoftware.code-spell-checker",
|
||||
"naumovs.color-highlight",
|
||||
"mikestead.dotenv",
|
||||
"EditorConfig.EditorConfig",
|
||||
"usernamehw.errorlens",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"eamodio.gitlens",
|
||||
"xabikos.JavaScriptSnippets",
|
||||
"christian-kohler.npm-intellisense",
|
||||
"christian-kohler.path-intellisense",
|
||||
"esbenp.prettier-vscode",
|
||||
"MylesMurphy.prettify-ts",
|
||||
"yoavbls.pretty-ts-errors",
|
||||
"jasonnutter.search-node-modules",
|
||||
"bradlc.vscode-tailwindcss"
|
||||
]
|
||||
}
|
||||
52
.vscode/settings.json
vendored
Normal file
52
.vscode/settings.json
vendored
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{
|
||||
// JS
|
||||
"javascript.updateImportsOnFileMove.enabled": "always",
|
||||
// JSON
|
||||
"[json]": {
|
||||
"editor.defaultFormatter": "vscode.json-language-features"
|
||||
},
|
||||
"[jsonc]": {
|
||||
"editor.defaultFormatter": "vscode.json-language-features"
|
||||
},
|
||||
// VSCode Editor
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"editor.formatOnSave": true,
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll.eslint": "explicit",
|
||||
"source.organizeImports": "never",
|
||||
"source.fixAll.stylelint": "explicit"
|
||||
},
|
||||
// Extension: Git
|
||||
"git.rebaseWhenSync": true,
|
||||
"git.autofetch": true,
|
||||
"git.enableSmartCommit": true,
|
||||
// Extension: Prettier
|
||||
"prettier.requireConfig": true,
|
||||
// Extension: ESLint
|
||||
"eslint.validate": [
|
||||
"javascript",
|
||||
"typescript",
|
||||
"javascriptreact",
|
||||
"typescriptreact"
|
||||
],
|
||||
"eslint.format.enable": true,
|
||||
"eslint.workingDirectories": [
|
||||
{
|
||||
"mode": "auto"
|
||||
}
|
||||
],
|
||||
"markdown.extension.toc.updateOnSave": false,
|
||||
"files.insertFinalNewline": true,
|
||||
"editor.linkedEditing": true,
|
||||
"typescript.tsdk": "node_modules/typescript/lib",
|
||||
"cSpell.words": [
|
||||
"cmdk",
|
||||
"customizer",
|
||||
"jetship",
|
||||
"pixinvent",
|
||||
"shadcn",
|
||||
"themeselection",
|
||||
"turbopack",
|
||||
"vercel"
|
||||
]
|
||||
}
|
||||
11
CHANGELOG.md
Normal file
11
CHANGELOG.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<!-- Available h3 headings: Added, Fixed, Updated, Removed, Deprecated -->
|
||||
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## v1.0.0-alpha.1 (2025-04-23)
|
||||
|
||||
### Added
|
||||
|
||||
- Initial Release
|
||||
21
LICENSE.md
Normal file
21
LICENSE.md
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2025 shadcn/studio
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
144
README.md
Normal file
144
README.md
Normal file
|
|
@ -0,0 +1,144 @@
|
|||
<a href="https://shadcnstudio.com">
|
||||
<img alt="shadcn/studio logo" width="800" src="https://cdn.shadcnstudio.com/ss-assets/smm/marketing/shadcn-studio-smm-banner.png">
|
||||
</a><br/><br/>
|
||||
|
||||
[shadcn/studio](https://shadcnstudio.com) is an open-source shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful theme editor to craft, customize, and ship faster. 🚀
|
||||
|
||||
<p>
|
||||
<a href="https://github.com/themeselection/shadcn-studio/blob/main/LICENSE.md"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
||||
<a href="https://x.com/ShadCNStudio" target="_blank">
|
||||
<img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/ShadCNStudio">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<a href="https://themeselection.com" target="_blank">
|
||||
<img
|
||||
src="https://cdn.shadcnstudio.com/ts-assets/themeselection/logo/logo.png"
|
||||
alt="themeselection logo"
|
||||
height="30"
|
||||
/>
|
||||
</a>
|
||||
|
||||
Supported by [ThemeSelection](https://themeselection.com), with a commitment to empowering the open-source community.
|
||||
|
||||
---
|
||||
|
||||
## Table of Contents 📋
|
||||
|
||||
- [Table of Contents 📋](#table-of-contents-)
|
||||
- [Overview 🌏](#overview-)
|
||||
- [Not a standard library, but a distribution of components](#not-a-standard-library-but-a-distribution-of-components)
|
||||
- [Why should I use shadcn/studio? 💡](#why-should-i-use-shadcnstudio-)
|
||||
- [This is where shadcn/studio shines ✨](#this-is-where-shadcnstudio-shines-)
|
||||
- [Features ✨](#features-)
|
||||
- [Documentation 📚](#documentation-)
|
||||
- [Available Components 🧩](#available-components-)
|
||||
- [Component Examples](#component-examples)
|
||||
- [Community 🤝](#community-)
|
||||
- [Credits 🤘](#credits-)
|
||||
- [License ©](#license-)
|
||||
- [Useful Links 🎁](#useful-links-)
|
||||
|
||||
---
|
||||
|
||||
## Overview 🌏
|
||||
|
||||
**This isn't a traditional component library or a replacement for Shadcn**. Instead, it's a unique collection offers customizable variants of components, blocks, and templates. Preview, customize, and copy-paste them into your apps with ease.
|
||||
|
||||
Building on the solid foundation of the Shadcn registry, we've enhanced it with custom-designed components & blocks to give you a head start. This allows you to craft, customize, and ship your projects faster and more efficiently.
|
||||
|
||||
### Not a standard library, but a distribution of components
|
||||
|
||||
Following the philosophy of Shadcn, shadcn/studio isn't a conventional “install-from-NPM” library. Rather, it's an open-source distribution of components designed for maximum adaptability. You can copy the code, modify styles, adjust logic, or integrate it with other tools—free from the limitations of typical libraries. This "open code" model empowers you to customize with confidence and creativity.
|
||||
|
||||
## Why should I use shadcn/studio? 💡
|
||||
|
||||
shadcn/ui aims to provide core components with a unique distribution system, allowing developers to copy and paste reusable, customizable UI elements directly into their codebase.
|
||||
|
||||
While this approach offers flexibility and control, it comes with some limitations: a lack of diverse component variants examples, limited theme customization options, and limited pre-built blocks. Additionally, its extensive customization options, though powerful, can sometimes feel overwhelming, especially for those seeking a more guided or streamlined experience.
|
||||
|
||||
## This is where shadcn/studio shines ✨
|
||||
|
||||
An open-source Shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful theme editor to craft, customize, and ship faster 🚀. It provides a robust toolkit for building stunning, interactive user interfaces with ease.
|
||||
|
||||
- **Open-source:** Dive into a growing, community-driven collection of copy-and-paste components, blocks, and templates.
|
||||
- **Component & Blocks variants:** Access a diverse, collection of customizable shadcn component and block variants to quickly build and style your UI with ease.
|
||||
- **Animated variants with Motion:** Add smooth, modern animations to your components, enhancing user experiences with minimal effort.
|
||||
- **Powerful theme editor:** Tailor your UI effortlessly with real-time previews, ensuring consistent, branded designs delivered faster.
|
||||
|
||||
## Features ✨
|
||||
|
||||
1. **Live Theme Generator:** See your shadcn components transform instantly as you experiment with styles in real time.
|
||||
2. **Color Mastery:** Play with background, text, and border hues using a sleek color picker for a unified design.
|
||||
3. **Typography Fine-Tuning:** Perfect your text with adjustable font sizes, weights, and transformations for a polished look.
|
||||
4. **Tailwind v4 Compatibility:** Effortlessly use Tailwind v4, supporting OKLCH, HSL, RGB & HEX color formats.
|
||||
5. **Stunning Theme Starters:** Kick off with gorgeous pre-built themes and customize light or dark modes in a breeze.
|
||||
6. **Hold to Save Theme:** Preserve your custom themes with a quick hold, making them easy to reuse or share later.
|
||||
|
||||
## Documentation 📚
|
||||
|
||||
For comprehensive documentation, please visit [shadcnstudio.com](https://shadcnstudio.com).
|
||||
|
||||
## Available Components 🧩
|
||||
|
||||
shadcn/studio provides an open-source collection of copy-and-paste Shadcn Components designed to accelerate your project development. Below is a summary of the available component categories:
|
||||
|
||||
### Component Examples
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td width="33.3333%">Avatar</td>
|
||||
<td width="33.3333%">Badge</td>
|
||||
<td width="33.3333%">Breadcrumb</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="33.3333%" align="center">
|
||||
<a href="https://shadcnstudio.com/docs/components/avatar">
|
||||
<img alt="Shadcn Avatar" src="https://cdn.shadcnstudio.com/ss-assets/components-svg/components/avatar.svg">
|
||||
</a>
|
||||
</td>
|
||||
<td width="33.3333%" align="center">
|
||||
<a href="https://shadcnstudio.com/docs/components/badge">
|
||||
<img alt="Shadcn Badge" src="https://cdn.shadcnstudio.com/ss-assets/components-svg/components/badge.svg">
|
||||
</a>
|
||||
</td>
|
||||
<td width="33.3333%" align="center">
|
||||
<a href="https://shadcnstudio.com/docs/components/breadcrumb">
|
||||
<img alt="Shadcn Breadcrumb" src="https://cdn.shadcnstudio.com/ss-assets/components-svg/navigations/breadcrumb.svg">
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
[Explore all components](https://shadcnstudio.com/docs/components/avatar)
|
||||
|
||||
## Community 🤝
|
||||
|
||||
Join the shadcn/studio community to discuss the library, ask questions, and share your experiences:
|
||||
|
||||
- 🐦 [Follow us on Twitter](https://x.com/ShadCNStudio)
|
||||
- 🎮 [Join us on Discord](https://discord.com/invite/kBHkY7DekX)
|
||||
|
||||
## Credits 🤘
|
||||
|
||||
We are grateful for the contributions of the open-source community, particularly:
|
||||
|
||||
- [shadcn/ui](https://ui.shadcn.com/)
|
||||
- [tweakcn](https://tweakcn.com/) (Our Theme Editor is heavily inspired by tweakcn)
|
||||
|
||||
These projects form the backbone of shadcn/studio, allowing us to build a powerful shadcn registry of copy-and-paste components.
|
||||
|
||||
## License ©
|
||||
|
||||
- Copyright © [ThemeSelection](https://themeselection.com/)
|
||||
- Licensed under [MIT](https://github.com/themeselection/shadcn-studio/blob/main/LICENSE.md)
|
||||
- shadcn/studio is an open-source shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful theme editor to craft, customize, and ship faster.
|
||||
|
||||
## Useful Links 🎁
|
||||
|
||||
- [Saas Boilerplates](https://themeselection.com/item/category/saas-boilerplate)
|
||||
- [Next.js Admin Template](https://themeselection.com/item/category/next-js-admin-template/)
|
||||
- [Vue CheatSheet](https://vue-cheatsheet.themeselection.com/)
|
||||
- [Freebies](https://themeselection.com/item/category/freebies/)
|
||||
- [Free Admin Templates](https://themeselection.com/item/category/free-admin-templates/)
|
||||
- [Bootstrap 5 CheatSheet](https://bootstrap-cheatsheet.themeselection.com/)
|
||||
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": true,
|
||||
"tsx": true,
|
||||
"tailwind": {
|
||||
"config": "",
|
||||
"css": "src/app/globals.css",
|
||||
"baseColor": "zinc",
|
||||
"cssVariables": true,
|
||||
"prefix": ""
|
||||
},
|
||||
"aliases": {
|
||||
"components": "@/components",
|
||||
"hooks": "@/registry/new-york/hooks",
|
||||
"lib": "@/registry/new-york/lib",
|
||||
"utils": "@/registry/new-york/lib/utils",
|
||||
"ui": "@/registry/new-york/ui"
|
||||
},
|
||||
"iconLibrary": "lucide"
|
||||
}
|
||||
29
next.config.ts
Normal file
29
next.config.ts
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
import type { NextConfig } from 'next'
|
||||
|
||||
const nextConfig: NextConfig = {
|
||||
basePath: process.env.BASEPATH,
|
||||
redirects: async () => {
|
||||
return [
|
||||
{
|
||||
source: '/',
|
||||
destination: '/theme-editor',
|
||||
permanent: true
|
||||
},
|
||||
{
|
||||
source: '/docs',
|
||||
destination: '/docs/getting-started/introduction',
|
||||
permanent: true
|
||||
}
|
||||
]
|
||||
},
|
||||
images: {
|
||||
remotePatterns: [
|
||||
{
|
||||
protocol: 'https',
|
||||
hostname: 'images.unsplash.com'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
export default nextConfig
|
||||
85
package.json
Normal file
85
package.json
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
{
|
||||
"name": "shadcn-studio-internal",
|
||||
"version": "1.0.0-alpha.1",
|
||||
"license": "MIT",
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "next dev --turbopack",
|
||||
"build": "next build",
|
||||
"start": "next start",
|
||||
"lint": "next lint",
|
||||
"lint:fix": "next lint --fix",
|
||||
"format": "prettier --write \"src/**/*.{js,jsx,ts,tsx,md,mdx}\"",
|
||||
"check-types": "tsc --noEmit",
|
||||
"registry:build": "shadcn build",
|
||||
"registry:theme-generate": "tsx scripts/generate-theme-registry.ts",
|
||||
"clean": "rm -rf .next *.tsbuildinfo",
|
||||
"clean:node_modules": "rm -rf .next node_modules *.tsbuildinfo"
|
||||
},
|
||||
"dependencies": {
|
||||
"@radix-ui/react-accordion": "^1.2.3",
|
||||
"@radix-ui/react-avatar": "^1.1.3",
|
||||
"@radix-ui/react-checkbox": "^1.1.4",
|
||||
"@radix-ui/react-collapsible": "^1.1.3",
|
||||
"@radix-ui/react-context-menu": "^2.2.7",
|
||||
"@radix-ui/react-dialog": "^1.1.6",
|
||||
"@radix-ui/react-dropdown-menu": "^2.1.6",
|
||||
"@radix-ui/react-label": "^2.1.2",
|
||||
"@radix-ui/react-menubar": "^1.1.7",
|
||||
"@radix-ui/react-popover": "^1.1.6",
|
||||
"@radix-ui/react-radio-group": "^1.2.3",
|
||||
"@radix-ui/react-scroll-area": "^1.2.3",
|
||||
"@radix-ui/react-select": "^2.1.6",
|
||||
"@radix-ui/react-separator": "^1.1.2",
|
||||
"@radix-ui/react-slider": "^1.2.3",
|
||||
"@radix-ui/react-slot": "^1.1.2",
|
||||
"@radix-ui/react-switch": "^1.1.3",
|
||||
"@radix-ui/react-tabs": "^1.1.3",
|
||||
"@radix-ui/react-toggle": "^1.1.2",
|
||||
"@radix-ui/react-toggle-group": "^1.1.2",
|
||||
"@radix-ui/react-tooltip": "^1.1.8",
|
||||
"@tanstack/react-table": "^8.21.2",
|
||||
"chroma-js": "^3.1.2",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"cmdk": "^1.1.1",
|
||||
"date-fns": "^4.1.0",
|
||||
"hast-util-to-jsx-runtime": "^2.3.6",
|
||||
"lucide-react": "^0.483.0",
|
||||
"next": "^15.2.4",
|
||||
"next-themes": "^0.4.6",
|
||||
"react": "^19.0.0",
|
||||
"react-day-picker": "8.10.1",
|
||||
"react-dom": "^19.0.0",
|
||||
"react-resizable-panels": "^2.1.7",
|
||||
"react-use": "^17.6.0",
|
||||
"recharts": "^2.15.1",
|
||||
"server-only": "^0.0.1",
|
||||
"shadcn": "2.4.0-canary.13",
|
||||
"shepherd.js": "^14.5.0",
|
||||
"sonner": "^2.0.1",
|
||||
"tailwind-merge": "^3.0.2",
|
||||
"tw-animate-css": "^1.2.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tailwindcss/postcss": "^4.0.15",
|
||||
"@types/chroma-js": "^3.1.1",
|
||||
"@types/eslint": "^8.56.12",
|
||||
"@types/node": "^22.13.13",
|
||||
"@types/react": "^19.0.12",
|
||||
"@types/react-dom": "^19.0.4",
|
||||
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
||||
"@typescript-eslint/parser": "^7.18.0",
|
||||
"eslint": "^8.57.1",
|
||||
"eslint-config-next": "^15.2.4",
|
||||
"eslint-config-prettier": "^10.1.1",
|
||||
"eslint-plugin-import": "^2.31.0",
|
||||
"prettier": "^3.5.3",
|
||||
"prettier-plugin-tailwindcss": "^0.6.11",
|
||||
"shiki": "^3.2.2",
|
||||
"tailwindcss": "^4.0.15",
|
||||
"typescript": "5.5.4"
|
||||
}
|
||||
}
|
||||
8278
pnpm-lock.yaml
Normal file
8278
pnpm-lock.yaml
Normal file
File diff suppressed because it is too large
Load diff
5
postcss.config.mjs
Normal file
5
postcss.config.mjs
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
const config = {
|
||||
plugins: ['@tailwindcss/postcss']
|
||||
}
|
||||
|
||||
export default config
|
||||
16
public/r/avatar-01.json
Normal file
16
public/r/avatar-01.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-01",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-01.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarDemo = () => {\n return (\n <Avatar>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n )\n}\n\nexport default AvatarDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-01.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-02.json
Normal file
16
public/r/avatar-02.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-02",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-02.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarRingDemo = () => {\n return (\n <Avatar className='ring-ring ring-2'>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n )\n}\n\nexport default AvatarRingDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-02.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-03.json
Normal file
16
public/r/avatar-03.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-03",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-03.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarRoundedDemo = () => {\n return (\n <Avatar className='rounded-sm'>\n <AvatarImage\n src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png'\n alt='Hallie Richards'\n className='rounded-sm'\n />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n )\n}\n\nexport default AvatarRoundedDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-03.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-04.json
Normal file
16
public/r/avatar-04.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-04",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-04.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarSizeDemo = () => {\n return (\n <Avatar className='size-12'>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n )\n}\n\nexport default AvatarSizeDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-04.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-05.json
Normal file
16
public/r/avatar-05.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-05",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-05.tsx",
|
||||
"content": "import { Avatar, AvatarFallback } from '@/registry/new-york/ui/avatar'\n\nconst AvatarFallbackDemo = () => {\n return (\n <Avatar>\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n )\n}\n\nexport default AvatarFallbackDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-05.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/avatar-06.json
Normal file
19
public/r/avatar-06.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-06",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-06.tsx",
|
||||
"content": "import { HomeIcon } from 'lucide-react'\n\nimport { Avatar, AvatarFallback } from '@/registry/new-york/ui/avatar'\n\nconst AvatarIconDemo = () => {\n return (\n <Avatar>\n <AvatarFallback className='bg-indigo-500/10 text-indigo-500'>\n <HomeIcon className='size-4' />\n </AvatarFallback>\n </Avatar>\n )\n}\n\nexport default AvatarIconDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-06.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-07.json
Normal file
16
public/r/avatar-07.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-07",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-07.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarStatusBusyDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n <span className='border-background bg-destructive absolute -end-0.5 -bottom-0.5 size-3 rounded-full border-2'>\n <span className='sr-only'>Busy</span>\n </span>\n </div>\n )\n}\n\nexport default AvatarStatusBusyDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-07.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/avatar-08.json
Normal file
19
public/r/avatar-08.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-08",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-08.tsx",
|
||||
"content": "import { CheckIcon } from 'lucide-react'\n\nimport { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarStatusRingDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='ring-offset-background ring-2 ring-green-600 ring-offset-2 dark:ring-green-400'>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n <span className='absolute -end-1.5 -bottom-1.5 inline-flex size-4 items-center justify-center rounded-full bg-green-600 dark:bg-green-400'>\n <CheckIcon className='size-3 text-white' />\n </span>\n </div>\n )\n}\n\nexport default AvatarStatusRingDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-08.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-09.json
Normal file
16
public/r/avatar-09.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-09",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-09.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarStatusAwayDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='rounded-sm'>\n <AvatarImage\n src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png'\n alt='Hallie Richards'\n className='rounded-sm'\n />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n <span className='border-background absolute -end-1.5 -top-1.5 size-3 rounded-full border-2 bg-amber-600 dark:bg-amber-400'>\n <span className='sr-only'>Away</span>\n </span>\n </div>\n )\n}\n\nexport default AvatarStatusAwayDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-09.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/avatar-10.json
Normal file
19
public/r/avatar-10.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-10",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-10.tsx",
|
||||
"content": "import { PlusCircleIcon } from 'lucide-react'\n\nimport { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarPlusDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='size-10'>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n <button className='focus-visible:ring-ring/50 absolute -end-1 -bottom-1 inline-flex cursor-pointer items-center justify-center rounded-full focus-visible:ring-[3px] focus-visible:outline-none'>\n <PlusCircleIcon className='text-background size-5 fill-slate-400' />\n </button>\n </div>\n )\n}\n\nexport default AvatarPlusDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-10.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
17
public/r/avatar-11.json
Normal file
17
public/r/avatar-11.json
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-11",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-11.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst AvatarNotificationBadgeDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='size-10 rounded-sm'>\n <AvatarImage\n src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png'\n alt='Hallie Richards'\n className='rounded-sm'\n />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n <Badge className='absolute -end-2.5 -top-2.5 h-5 min-w-5 rounded-full bg-indigo-500 px-1 tabular-nums'>8</Badge>\n </div>\n )\n}\n\nexport default AvatarNotificationBadgeDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-11.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/avatar-12.json
Normal file
19
public/r/avatar-12.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-12",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-12.tsx",
|
||||
"content": "import { BadgeCheckIcon } from 'lucide-react'\n\nimport { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst AvatarVerifiedDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='size-10'>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback className='text-xs'>HR</AvatarFallback>\n </Avatar>\n <span className='absolute -end-1.5 -top-1.5'>\n <span className='sr-only'>Verified</span>\n <BadgeCheckIcon className='text-background size-5 fill-sky-500' />\n </span>\n </div>\n )\n}\n\nexport default AvatarVerifiedDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-12.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-13.json
Normal file
16
public/r/avatar-13.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-13",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-13.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupDemo = () => {\n return (\n <div className='flex -space-x-2'>\n {avatars.map((avatar, index) => (\n <Avatar key={index} className='ring-background ring-2'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n </div>\n )\n}\n\nexport default AvatarGroupDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-13.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-14.json
Normal file
16
public/r/avatar-14.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-14",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-14.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n }\n]\n\nconst AvatarGroupMaxDemo = () => {\n return (\n <div className='flex -space-x-2'>\n {avatars.map((avatar, index) => (\n <Avatar key={index} className='ring-background ring-2'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n <Avatar className='ring-background ring-2'>\n <AvatarFallback className='text-xs'>+9</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n\nexport default AvatarGroupMaxDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-14.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-15.json
Normal file
16
public/r/avatar-15.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-15",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-15.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupSizeDemo = () => {\n return (\n <div className='flex -space-x-2'>\n {avatars.map((avatar, index) => (\n <Avatar key={index} className='ring-background size-12 ring-2'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n </div>\n )\n}\n\nexport default AvatarGroupSizeDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-15.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
17
public/r/avatar-16.json
Normal file
17
public/r/avatar-16.json
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-16",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"tooltip"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-16.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/registry/new-york/ui/tooltip'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupTooltipDemo = () => {\n return (\n <div className='flex -space-x-2'>\n {avatars.map((avatar, index) => (\n <TooltipProvider delayDuration={0} key={index}>\n <Tooltip>\n <TooltipTrigger asChild>\n <Avatar className='ring-background ring-2 transition-all duration-300 ease-in-out hover:z-1 hover:-translate-y-1 hover:shadow-md'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n </TooltipTrigger>\n <TooltipContent>{avatar.name}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n ))}\n </div>\n )\n}\n\nexport default AvatarGroupTooltipDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-16.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-17.json
Normal file
16
public/r/avatar-17.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-17",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-17.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupTransitionDemo = () => {\n return (\n <div className='flex -space-x-2 hover:space-x-1'>\n {avatars.map((avatar, index) => (\n <Avatar key={index} className='ring-background ring-2 transition-all duration-300 ease-in-out'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n </div>\n )\n}\n\nexport default AvatarGroupTransitionDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-17.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
17
public/r/avatar-18.json
Normal file
17
public/r/avatar-18.json
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-18",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"tooltip"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-18.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/registry/new-york/ui/tooltip'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupTooltipTransitionDemo = () => {\n return (\n <div className='flex -space-x-2 hover:space-x-1'>\n {avatars.map((avatar, index) => (\n <TooltipProvider delayDuration={0} key={index}>\n <Tooltip>\n <TooltipTrigger asChild>\n <Avatar className='ring-background ring-2 transition-all duration-300 ease-in-out'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n </TooltipTrigger>\n <TooltipContent>{avatar.name}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n ))}\n </div>\n )\n}\n\nexport default AvatarGroupTooltipTransitionDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-18.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
20
public/r/avatar-19.json
Normal file
20
public/r/avatar-19.json
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-19",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"dropdown-menu"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-19.tsx",
|
||||
"content": "import { PlusIcon } from 'lucide-react'\n\nimport { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger\n} from '@/registry/new-york/ui/dropdown-menu'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-1.png',\n fallback: 'DR',\n name: 'Darlene Robertson'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-2.png',\n fallback: 'LA',\n name: 'Leslie Alexander'\n }\n]\n\nconst AvatarGroupDropdownDemo = () => {\n return (\n <div className='flex -space-x-2'>\n {avatars.slice(0, 3).map((avatar, index) => (\n <Avatar key={index} className='ring-background ring-2'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Avatar className='has-focus-visible:ring-ring/50 ring-background ring-2'>\n <AvatarFallback asChild>\n <button className='cursor-pointer'>\n <PlusIcon className='size-4' />\n </button>\n </AvatarFallback>\n </Avatar>\n </DropdownMenuTrigger>\n <DropdownMenuContent>\n {avatars.slice(3).map((avatar, index) => (\n <DropdownMenuItem key={index}>\n <Avatar>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n <span>{avatar.name}</span>\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n )\n}\n\nexport default AvatarGroupDropdownDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-19.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-20.json
Normal file
16
public/r/avatar-20.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-20",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-20.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupOutlineDemo = () => {\n return (\n <div className='bg-background flex items-center rounded-full border p-1 shadow-sm'>\n <div className='flex -space-x-2'>\n {avatars.map((avatar, index) => (\n <Avatar key={index} className='ring-background ring-2'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n </div>\n <span className='text-muted-foreground hover:text-foreground flex items-center justify-center rounded-full bg-transparent px-2 text-xs shadow-none hover:bg-transparent'>\n +3\n </span>\n </div>\n )\n}\n\nexport default AvatarGroupOutlineDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-20.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/avatar-21.json
Normal file
16
public/r/avatar-21.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "avatar-21",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-21.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst avatars = [\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-3.png',\n fallback: 'OS',\n name: 'Olivia Sparks'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-6.png',\n fallback: 'HL',\n name: 'Howard Lloyd'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png',\n fallback: 'HR',\n name: 'Hallie Richards'\n },\n {\n src: 'https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-16.png',\n fallback: 'JW',\n name: 'Jenny Wilson'\n }\n]\n\nconst AvatarGroupPopularityIndicatorDemo = () => {\n return (\n <div className='bg-background flex flex-wrap items-center justify-center rounded-full border p-1 shadow-sm'>\n <div className='flex -space-x-1'>\n {avatars.map((avatar, index) => (\n <Avatar key={index} className='ring-background size-6 ring-2'>\n <AvatarImage src={avatar.src} alt={avatar.name} />\n <AvatarFallback className='text-xs'>{avatar.fallback}</AvatarFallback>\n </Avatar>\n ))}\n </div>\n <p className='text-muted-foreground px-2 text-xs'>\n Loved by <strong className='text-foreground font-medium'>10K+</strong> developers.\n </p>\n </div>\n )\n}\n\nexport default AvatarGroupPopularityIndicatorDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-21.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-01.json
Normal file
16
public/r/badge-01.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-01",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-01.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeDemo = () => {\n return <Badge>Default</Badge>\n}\n\nexport default BadgeDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-01.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-02.json
Normal file
16
public/r/badge-02.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-02",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-02.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeSecondaryDemo = () => {\n return <Badge variant='secondary'>Secondary</Badge>\n}\n\nexport default BadgeSecondaryDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-02.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-03.json
Normal file
16
public/r/badge-03.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-03",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-03.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeDestructiveDemo = () => {\n return <Badge variant='destructive'>Destructive</Badge>\n}\n\nexport default BadgeDestructiveDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-03.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-04.json
Normal file
16
public/r/badge-04.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-04",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-04.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeOutlineDemo = () => {\n return <Badge variant='outline'>Outline</Badge>\n}\n\nexport default BadgeOutlineDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-04.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
13
public/r/badge-05.json
Normal file
13
public/r/badge-05.json
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-05",
|
||||
"type": "registry:component",
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-05.tsx",
|
||||
"content": "const BadgeDotDemo = () => {\n return (\n <span className='inline-flex w-fit shrink-0 items-center justify-center gap-1 px-2 py-0.5 text-xs font-medium whitespace-nowrap'>\n <span className='bg-primary size-2 rounded-full' aria-hidden='true' />\n Dot Badge\n </span>\n )\n}\n\nexport default BadgeDotDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-05.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-06.json
Normal file
16
public/r/badge-06.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-06",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-06.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeRoundedDemo = () => {\n return <Badge className='rounded-full'>Rounded</Badge>\n}\n\nexport default BadgeRoundedDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-06.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-07.json
Normal file
16
public/r/badge-07.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-07",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-07.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeNumberDemo = () => {\n return <Badge className='h-5 min-w-5 rounded-full px-1 tabular-nums'>8</Badge>\n}\n\nexport default BadgeNumberDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-07.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-08.json
Normal file
16
public/r/badge-08.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-08",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-08.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeLargeDemo = () => {\n return <Badge className='px-3 py-1'>Large</Badge>\n}\n\nexport default BadgeLargeDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-08.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-09.json
Normal file
16
public/r/badge-09.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-09",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-09.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeSmallDemo = () => {\n return <Badge className='px-1.5 py-px'>Small</Badge>\n}\n\nexport default BadgeSmallDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-09.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/badge-10.json
Normal file
19
public/r/badge-10.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-10",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-10.tsx",
|
||||
"content": "import { StarIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeWithIconDemo = () => {\n return (\n <Badge>\n <StarIcon className='size-3' />\n With Icon\n </Badge>\n )\n}\n\nexport default BadgeWithIconDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-10.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/badge-11.json
Normal file
19
public/r/badge-11.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-11",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-11.tsx",
|
||||
"content": "import { ArrowRightIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeLinkDemo = () => {\n return (\n <Badge asChild>\n <a href='#' className='focus-visible:ring-ring/50 focus-visible:ring-2 focus-visible:outline-0'>\n Link <ArrowRightIcon className='size-3' />\n </a>\n </Badge>\n )\n}\n\nexport default BadgeLinkDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-11.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/badge-12.json
Normal file
19
public/r/badge-12.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-12",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-12.tsx",
|
||||
"content": "'use client'\n\nimport { useState } from 'react'\n\nimport { XIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeClosableDemo = () => {\n const [isActive, setIsActive] = useState(true)\n\n if (!isActive) return null\n\n return (\n <Badge>\n Closable\n <button\n className='focus-visible:border-ring focus-visible:ring-ring/50 text-primary-foreground/60 hover:text-primary-foreground -my-px -ms-px -me-1.5 inline-flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[inherit] p-0 transition-[color,box-shadow] outline-none focus-visible:ring-[3px]'\n aria-label='Close'\n onClick={() => setIsActive(false)}\n >\n <XIcon className='size-3' aria-hidden='true' />\n </button>\n </Badge>\n )\n}\n\nexport default BadgeClosableDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-12.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
20
public/r/badge-13.json
Normal file
20
public/r/badge-13.json
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-13",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge",
|
||||
"checkbox"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-13.tsx",
|
||||
"content": "'use client'\n\nimport { useState, useId } from 'react'\n\nimport { CheckCircleIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\nimport { Checkbox } from '@/registry/new-york/ui/checkbox'\n\nconst BadgeSelectableDemo = () => {\n const [selected, setSelected] = useState(false)\n\n const id = useId()\n\n return (\n <Badge\n variant={selected ? 'secondary' : 'outline'}\n className='has-focus-visible:border-ring/50 has-focus-visible:ring-ring/50 relative cursor-pointer outline-none has-focus-visible:ring-2'\n >\n <Checkbox\n id={id}\n className='peer sr-only after:absolute after:inset-0'\n checked={selected}\n onCheckedChange={checked => setSelected(!!checked)}\n />\n <CheckCircleIcon\n className='hidden size-3 text-green-600 peer-data-[state=checked]:block dark:text-green-400'\n aria-hidden='true'\n />\n <label htmlFor={id} className='cursor-pointer select-none after:absolute after:inset-0'>\n {selected ? 'Selected' : 'Selectable'}\n </label>\n </Badge>\n )\n}\n\nexport default BadgeSelectableDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-13.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-14.json
Normal file
16
public/r/badge-14.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-14",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-14.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeGradientDemo = () => {\n return (\n <Badge className='border-transparent bg-gradient-to-r from-indigo-500 to-pink-500 [background-size:105%] bg-center text-white'>\n Gradient\n </Badge>\n )\n}\n\nexport default BadgeGradientDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-14.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-15.json
Normal file
16
public/r/badge-15.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-15",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-15.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeGradientOutlineDemo = () => {\n return (\n <div className='flex items-center justify-center rounded-full bg-gradient-to-r from-indigo-500 to-pink-500 p-0.5'>\n <Badge className='bg-background hover:bg-background text-foreground rounded-full border-none'>\n Gradient Outline\n </Badge>\n </div>\n )\n}\n\nexport default BadgeGradientOutlineDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-15.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-16.json
Normal file
16
public/r/badge-16.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-16",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-16.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeInProgressDemo = () => {\n return (\n <Badge className='rounded-full border-none bg-amber-600/10 text-amber-600 focus-visible:ring-amber-600/20 focus-visible:outline-none dark:bg-amber-400/10 dark:text-amber-400 dark:focus-visible:ring-amber-400/40 [a&]:hover:bg-amber-600/5 dark:[a&]:hover:bg-amber-400/5'>\n <span className='size-1.5 rounded-full bg-amber-600 dark:bg-amber-400' aria-hidden='true' />\n In Progress\n </Badge>\n )\n}\n\nexport default BadgeInProgressDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-16.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-17.json
Normal file
16
public/r/badge-17.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-17",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-17.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeBlockedDemo = () => {\n return (\n <Badge className='bg-destructive/10 [a&]:hover:bg-destructive/5 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 text-destructive rounded-full border-none focus-visible:outline-none'>\n <span className='bg-destructive size-1.5 rounded-full' aria-hidden='true' />\n Blocked\n </Badge>\n )\n}\n\nexport default BadgeBlockedDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-17.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-18.json
Normal file
16
public/r/badge-18.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-18",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-18.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeCompletedDemo = () => {\n return (\n <Badge className='rounded-full border-none bg-green-600/10 text-green-600 focus-visible:ring-green-600/20 focus-visible:outline-none dark:bg-green-400/10 dark:text-green-400 dark:focus-visible:ring-green-400/40 [a&]:hover:bg-green-600/5 dark:[a&]:hover:bg-green-400/5'>\n <span className='size-1.5 rounded-full bg-green-600 dark:bg-green-400' aria-hidden='true' />\n Completed\n </Badge>\n )\n}\n\nexport default BadgeCompletedDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-18.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/badge-19.json
Normal file
19
public/r/badge-19.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-19",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-19.tsx",
|
||||
"content": "import { AlertCircleIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgePendingDemo = () => {\n return (\n <Badge\n variant='outline'\n className='border-amber-600 text-amber-600 dark:border-amber-400 dark:text-amber-400 [a&]:hover:bg-amber-600/10 [a&]:hover:text-amber-600/90 dark:[a&]:hover:bg-amber-400/10 dark:[a&]:hover:text-amber-400/90'\n >\n <AlertCircleIcon className='size-3' />\n Pending\n </Badge>\n )\n}\n\nexport default BadgePendingDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-19.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/badge-20.json
Normal file
19
public/r/badge-20.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-20",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-20.tsx",
|
||||
"content": "import { BanIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeFailedDemo = () => {\n return (\n <Badge\n variant='outline'\n className='text-destructive [a&]:hover:bg-destructive/10 [a&]:hover:text-destructive/90 border-destructive'\n >\n <BanIcon className='size-3' />\n Failed\n </Badge>\n )\n}\n\nexport default BadgeFailedDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-20.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/badge-21.json
Normal file
19
public/r/badge-21.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-21",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-21.tsx",
|
||||
"content": "import { CheckCircleIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeSuccessfulDemo = () => {\n return (\n <Badge\n variant='outline'\n className='border-green-600 text-green-600 dark:border-green-400 dark:text-green-400 [a&]:hover:bg-green-600/10 [a&]:hover:text-green-600/90 dark:[a&]:hover:bg-green-400/10 dark:[a&]:hover:text-green-400/90'\n >\n <CheckCircleIcon className='size-3' />\n Successful\n </Badge>\n )\n}\n\nexport default BadgeSuccessfulDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-21.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-22.json
Normal file
16
public/r/badge-22.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-22",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-22.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeAvatarDemo = () => {\n return (\n <Badge variant='outline' className='rounded-full p-1 pe-2'>\n <img\n src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png'\n alt='Hallie Richards'\n className='size-6 rounded-full'\n />\n Avatar\n </Badge>\n )\n}\n\nexport default BadgeAvatarDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-22.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
20
public/r/badge-23.json
Normal file
20
public/r/badge-23.json
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-23",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-23.tsx",
|
||||
"content": "import { ShoppingCartIcon } from 'lucide-react'\n\nimport { Avatar, AvatarFallback } from '@/registry/new-york/ui/avatar'\nimport { Badge } from '@/registry/new-york/ui/badge'\n\nconst BadgeCartDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='size-9 rounded-sm'>\n <AvatarFallback className='rounded-sm'>\n <ShoppingCartIcon className='size-5' />\n </AvatarFallback>\n </Avatar>\n <Badge className='absolute -end-2.5 -top-2.5 h-5 min-w-5 rounded-full px-1 tabular-nums'>8</Badge>\n </div>\n )\n}\n\nexport default BadgeCartDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-23.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/badge-24.json
Normal file
16
public/r/badge-24.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "badge-24",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-24.tsx",
|
||||
"content": "import { Avatar, AvatarFallback, AvatarImage } from '@/registry/new-york/ui/avatar'\n\nconst BadgeStatusOnlineDemo = () => {\n return (\n <div className='relative w-fit'>\n <Avatar className='size-10'>\n <AvatarImage src='https://cdn.shadcnstudio.com/ss-assets/avatar/avatar-5.png' alt='Hallie Richards' />\n <AvatarFallback>HR</AvatarFallback>\n </Avatar>\n <span className='border-background absolute -end-0.5 -bottom-0.5 size-3 rounded-full border-2 bg-green-600 dark:bg-green-400'>\n <span className='sr-only'>Online</span>\n </span>\n </div>\n )\n}\n\nexport default BadgeStatusOnlineDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-24.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
public/r/breadcrumb-01.json
Normal file
16
public/r/breadcrumb-01.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-01",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-01.tsx",
|
||||
"content": "import {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\n\nconst BreadcrumbDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>Home</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>Documents</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Add Document</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-01.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/breadcrumb-02.json
Normal file
19
public/r/breadcrumb-02.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-02",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-02.tsx",
|
||||
"content": "import { HomeIcon } from 'lucide-react'\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\n\nconst BreadcrumbSlashSeparatorDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#' className='flex items-center gap-2'>\n <HomeIcon className='size-4' />\n Home\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator> / </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>Documents</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator> / </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbPage>Add Document</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbSlashSeparatorDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-02.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/breadcrumb-03.json
Normal file
19
public/r/breadcrumb-03.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-03",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-03.tsx",
|
||||
"content": "import { ChevronsRightIcon, FileIcon, FolderIcon, HomeIcon } from 'lucide-react'\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\n\nconst BreadcrumbChevronsSeparatorDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <HomeIcon className='size-4' />\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator>\n <ChevronsRightIcon />\n </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbLink href='#' className='flex items-center gap-2'>\n <FolderIcon className='size-4' />\n Documents\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator>\n <ChevronsRightIcon />\n </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbPage className='flex items-center gap-2'>\n <FileIcon className='inline size-4' />\n Add Document\n </BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbChevronsSeparatorDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-03.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/breadcrumb-04.json
Normal file
19
public/r/breadcrumb-04.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-04",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-04.tsx",
|
||||
"content": "import { DotIcon } from 'lucide-react'\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\n\nconst BreadcrumbDotSeparatorDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>Home</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator>\n <DotIcon className='size-4' />\n </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>Documents</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator>\n <DotIcon className='size-4' />\n </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbPage>Add Document</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbDotSeparatorDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-04.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
17
public/r/breadcrumb-05.json
Normal file
17
public/r/breadcrumb-05.json
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-05",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge",
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-05.tsx",
|
||||
"content": "import { Badge } from '@/registry/new-york/ui/badge'\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\n\nconst BreadcrumbTabsOutlineDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <Badge variant='outline' className='text-muted-foreground hover:text-foreground rounded-full'>\n Home\n </Badge>\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <Badge variant='outline' className='text-muted-foreground hover:text-foreground rounded-full'>\n Documents\n </Badge>\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>\n <Badge variant='outline' className='border-primary text-primary rounded-full'>\n Add Document\n </Badge>\n </BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbTabsOutlineDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-05.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
21
public/r/breadcrumb-06.json
Normal file
21
public/r/breadcrumb-06.json
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-06",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge",
|
||||
"breadcrumb",
|
||||
"dropdown-menu"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-06.tsx",
|
||||
"content": "import { ChevronDown, HomeIcon } from 'lucide-react'\n\nimport { Badge } from '@/registry/new-york/ui/badge'\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger\n} from '@/registry/new-york/ui/dropdown-menu'\n\nconst BreadcrumbWithDropdownDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <Badge variant='outline' className='text-muted-foreground hover:text-foreground rounded-full'>\n <HomeIcon className='size-3' />\n Home\n </Badge>\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator> / </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <Badge variant='outline' className='text-muted-foreground hover:text-foreground rounded-full'>\n Documents\n </Badge>\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator> / </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbPage>\n <DropdownMenu>\n <DropdownMenuTrigger className='flex items-center gap-1'>\n Add Document\n <ChevronDown className='size-4' />\n </DropdownMenuTrigger>\n <DropdownMenuContent align='start'>\n <DropdownMenuItem>Documentation</DropdownMenuItem>\n <DropdownMenuItem>Themes</DropdownMenuItem>\n <DropdownMenuItem>GitHub</DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbWithDropdownDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-06.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
20
public/r/breadcrumb-07.json
Normal file
20
public/r/breadcrumb-07.json
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-07",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb",
|
||||
"dropdown-menu"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-07.tsx",
|
||||
"content": "'use client'\n\nimport { useState } from 'react'\n\nimport { ChevronsRightIcon, FolderIcon, FolderOpenIcon, HomeIcon } from 'lucide-react'\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger\n} from '@/registry/new-york/ui/dropdown-menu'\n\nconst BreadcrumbWithIconDemo = () => {\n const [open, setOpen] = useState(false)\n\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <HomeIcon className='size-4' />\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator>\n <ChevronsRightIcon />\n </BreadcrumbSeparator>\n <BreadcrumbItem className='flex items-center gap-2'>\n <DropdownMenu open={open} onOpenChange={setOpen}>\n <DropdownMenuTrigger className='flex cursor-pointer items-center gap-1'>\n {open ? <FolderOpenIcon className='size-4' /> : <FolderIcon className='size-4' />}\n </DropdownMenuTrigger>\n <DropdownMenuContent align='start'>\n <DropdownMenuItem>Documentation</DropdownMenuItem>\n <DropdownMenuItem>Themes</DropdownMenuItem>\n <DropdownMenuItem>GitHub</DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </BreadcrumbItem>\n <BreadcrumbSeparator>\n <ChevronsRightIcon />\n </BreadcrumbSeparator>\n <BreadcrumbItem>\n <BreadcrumbPage>Add Document</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbWithIconDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-07.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
19
public/r/breadcrumb-08.json
Normal file
19
public/r/breadcrumb-08.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "breadcrumb-08",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-08.tsx",
|
||||
"content": "import { HomeIcon } from 'lucide-react'\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n} from '@/registry/new-york/ui/breadcrumb'\n\nconst BreadcrumbOutlineDemo = () => {\n return (\n <Breadcrumb>\n <BreadcrumbList className='h-8 gap-2 rounded-md border px-3 text-sm'>\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>\n <HomeIcon className='size-4' />\n </BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbLink href='#'>Documents</BreadcrumbLink>\n </BreadcrumbItem>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n <BreadcrumbPage>Add Document</BreadcrumbPage>\n </BreadcrumbItem>\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport default BreadcrumbOutlineDemo\n",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-08.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
90
public/r/themes/bold-tech.json
Normal file
90
public/r/themes/bold-tech.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "bold-tech",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.625rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(1.00 0 0)",
|
||||
"foreground": "oklch(0.36 0.14 278.70)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.36 0.14 278.70)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.36 0.14 278.70)",
|
||||
"primary": "oklch(0.61 0.22 292.73)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.96 0.02 295.27)",
|
||||
"secondary-foreground": "oklch(0.46 0.21 277.03)",
|
||||
"muted": "oklch(0.97 0.02 293.85)",
|
||||
"muted-foreground": "oklch(0.54 0.25 293.02)",
|
||||
"accent": "oklch(0.93 0.03 255.58)",
|
||||
"accent-foreground": "oklch(0.42 0.18 265.64)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.93 0.03 272.81)",
|
||||
"input": "oklch(0.93 0.03 272.81)",
|
||||
"ring": "oklch(0.61 0.22 292.73)",
|
||||
"chart-1": "oklch(0.61 0.22 292.73)",
|
||||
"chart-2": "oklch(0.54 0.25 293.02)",
|
||||
"chart-3": "oklch(0.49 0.24 292.59)",
|
||||
"chart-4": "oklch(0.43 0.21 292.77)",
|
||||
"chart-5": "oklch(0.38 0.18 293.75)",
|
||||
"radius": "0.625rem",
|
||||
"sidebar": "oklch(0.97 0.02 293.85)",
|
||||
"sidebar-foreground": "oklch(0.36 0.14 278.70)",
|
||||
"sidebar-primary": "oklch(0.61 0.22 292.73)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.93 0.03 255.58)",
|
||||
"sidebar-accent-foreground": "oklch(0.42 0.18 265.64)",
|
||||
"sidebar-border": "oklch(0.93 0.03 272.81)",
|
||||
"sidebar-ring": "oklch(0.61 0.22 292.73)",
|
||||
"font-sans": "Roboto, sans-serif",
|
||||
"font-serif": "Playfair Display, serif",
|
||||
"font-mono": "Fira Code, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.21 0.04 265.76)",
|
||||
"foreground": "oklch(0.93 0.03 272.81)",
|
||||
"card": "oklch(0.26 0.09 281.29)",
|
||||
"card-foreground": "oklch(0.93 0.03 272.81)",
|
||||
"popover": "oklch(0.26 0.09 281.29)",
|
||||
"popover-foreground": "oklch(0.93 0.03 272.81)",
|
||||
"primary": "oklch(0.61 0.22 292.73)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.26 0.09 281.29)",
|
||||
"secondary-foreground": "oklch(0.93 0.03 272.81)",
|
||||
"muted": "oklch(0.26 0.09 281.29)",
|
||||
"muted-foreground": "oklch(0.81 0.10 293.59)",
|
||||
"accent": "oklch(0.46 0.21 277.03)",
|
||||
"accent-foreground": "oklch(0.93 0.03 272.81)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.28 0.14 291.10)",
|
||||
"input": "oklch(0.28 0.14 291.10)",
|
||||
"ring": "oklch(0.61 0.22 292.73)",
|
||||
"chart-1": "oklch(0.71 0.16 293.55)",
|
||||
"chart-2": "oklch(0.61 0.22 292.73)",
|
||||
"chart-3": "oklch(0.54 0.25 293.02)",
|
||||
"chart-4": "oklch(0.49 0.24 292.59)",
|
||||
"chart-5": "oklch(0.43 0.21 292.77)",
|
||||
"sidebar": "oklch(0.21 0.04 265.76)",
|
||||
"sidebar-foreground": "oklch(0.93 0.03 272.81)",
|
||||
"sidebar-primary": "oklch(0.61 0.22 292.73)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.46 0.21 277.03)",
|
||||
"sidebar-accent-foreground": "oklch(0.93 0.03 272.81)",
|
||||
"sidebar-border": "oklch(0.28 0.14 291.10)",
|
||||
"sidebar-ring": "oklch(0.61 0.22 292.73)",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
133
public/r/themes/caffeine.json
Normal file
133
public/r/themes/caffeine.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "caffeine",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.24 0 0)",
|
||||
"card": "oklch(0.99 0 0)",
|
||||
"card-foreground": "oklch(0.24 0 0)",
|
||||
"popover": "oklch(0.99 0 0)",
|
||||
"popover-foreground": "oklch(0.24 0 0)",
|
||||
"primary": "oklch(0.43 0.04 42.00)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.92 0.07 76.67)",
|
||||
"secondary-foreground": "oklch(0.35 0.07 41.41)",
|
||||
"muted": "oklch(0.95 0 0)",
|
||||
"muted-foreground": "oklch(0.50 0 0)",
|
||||
"accent": "oklch(0.93 0 0)",
|
||||
"accent-foreground": "oklch(0.24 0 0)",
|
||||
"destructive": "oklch(0.63 0.19 33.26)",
|
||||
"border": "oklch(0.88 0 0)",
|
||||
"input": "oklch(0.88 0 0)",
|
||||
"ring": "oklch(0.43 0.04 42.00)",
|
||||
"chart-1": "oklch(0.43 0.04 42.00)",
|
||||
"chart-2": "oklch(0.92 0.07 76.67)",
|
||||
"chart-3": "oklch(0.93 0 0)",
|
||||
"chart-4": "oklch(0.94 0.05 75.02)",
|
||||
"chart-5": "oklch(0.43 0.04 42.00)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.99 0 0)",
|
||||
"sidebar-foreground": "oklch(0.26 0 0)",
|
||||
"sidebar-primary": "oklch(0.33 0 0)",
|
||||
"sidebar-primary-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-accent": "oklch(0.98 0 0)",
|
||||
"sidebar-accent-foreground": "oklch(0.33 0 0)",
|
||||
"sidebar-border": "oklch(0.94 0 0)",
|
||||
"sidebar-ring": "oklch(0.77 0 0)",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.18 0 0)",
|
||||
"foreground": "oklch(0.95 0 0)",
|
||||
"card": "oklch(0.21 0 0)",
|
||||
"card-foreground": "oklch(0.95 0 0)",
|
||||
"popover": "oklch(0.21 0 0)",
|
||||
"popover-foreground": "oklch(0.95 0 0)",
|
||||
"primary": "oklch(0.92 0.05 67.14)",
|
||||
"primary-foreground": "oklch(0.20 0.02 201.14)",
|
||||
"secondary": "oklch(0.32 0.02 67.00)",
|
||||
"secondary-foreground": "oklch(0.92 0.05 67.14)",
|
||||
"muted": "oklch(0.25 0 0)",
|
||||
"muted-foreground": "oklch(0.77 0 0)",
|
||||
"accent": "oklch(0.29 0 0)",
|
||||
"accent-foreground": "oklch(0.95 0 0)",
|
||||
"destructive": "oklch(0.63 0.19 33.26)",
|
||||
"border": "oklch(0.24 0.01 88.77)",
|
||||
"input": "oklch(0.40 0 0)",
|
||||
"ring": "oklch(0.92 0.05 67.14)",
|
||||
"chart-1": "oklch(0.92 0.05 67.14)",
|
||||
"chart-2": "oklch(0.32 0.02 67.00)",
|
||||
"chart-3": "oklch(0.29 0 0)",
|
||||
"chart-4": "oklch(0.35 0.02 67.11)",
|
||||
"chart-5": "oklch(0.92 0.05 67.14)",
|
||||
"sidebar": "oklch(0.21 0.01 285.56)",
|
||||
"sidebar-foreground": "oklch(0.97 0 0)",
|
||||
"sidebar-primary": "oklch(0.49 0.22 264.43)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.27 0.01 285.81)",
|
||||
"sidebar-accent-foreground": "oklch(0.97 0 0)",
|
||||
"sidebar-border": "oklch(0.27 0.01 285.81)",
|
||||
"sidebar-ring": "oklch(0.87 0.01 286.27)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
90
public/r/themes/candyland.json
Normal file
90
public/r/themes/candyland.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "candyland",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.5rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0.00 228.42)",
|
||||
"foreground": "oklch(0.32 0 0)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.32 0 0)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.32 0 0)",
|
||||
"primary": "oklch(0.87 0.07 7.11)",
|
||||
"primary-foreground": "oklch(0 0 0)",
|
||||
"secondary": "oklch(0.81 0.08 225.74)",
|
||||
"secondary-foreground": "oklch(0 0 0)",
|
||||
"muted": "oklch(0.88 0.03 98.07)",
|
||||
"muted-foreground": "oklch(0.54 0 0)",
|
||||
"accent": "oklch(0.97 0.21 109.76)",
|
||||
"accent-foreground": "oklch(0 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.87 0 0)",
|
||||
"input": "oklch(0.87 0 0)",
|
||||
"ring": "oklch(0.87 0.07 7.11)",
|
||||
"chart-1": "oklch(0.87 0.07 7.11)",
|
||||
"chart-2": "oklch(0.81 0.08 225.74)",
|
||||
"chart-3": "oklch(0.97 0.21 109.76)",
|
||||
"chart-4": "oklch(0.80 0.14 349.25)",
|
||||
"chart-5": "oklch(0.74 0.23 142.85)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.98 0.00 228.42)",
|
||||
"sidebar-foreground": "oklch(0.32 0 0)",
|
||||
"sidebar-primary": "oklch(0.87 0.07 7.11)",
|
||||
"sidebar-primary-foreground": "oklch(0 0 0)",
|
||||
"sidebar-accent": "oklch(0.97 0.21 109.76)",
|
||||
"sidebar-accent-foreground": "oklch(0 0 0)",
|
||||
"sidebar-border": "oklch(0.87 0 0)",
|
||||
"sidebar-ring": "oklch(0.87 0.07 7.11)",
|
||||
"font-sans": "Poppins, sans-serif",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "Roboto Mono, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.23 0.01 264.30)",
|
||||
"foreground": "oklch(0.92 0 0)",
|
||||
"card": "oklch(0.32 0.01 223.62)",
|
||||
"card-foreground": "oklch(0.92 0 0)",
|
||||
"popover": "oklch(0.32 0.01 223.62)",
|
||||
"popover-foreground": "oklch(0.92 0 0)",
|
||||
"primary": "oklch(0.80 0.14 349.25)",
|
||||
"primary-foreground": "oklch(0 0 0)",
|
||||
"secondary": "oklch(0.74 0.23 142.85)",
|
||||
"secondary-foreground": "oklch(0 0 0)",
|
||||
"muted": "oklch(0.39 0 0)",
|
||||
"muted-foreground": "oklch(0.72 0 0)",
|
||||
"accent": "oklch(0.81 0.08 225.74)",
|
||||
"accent-foreground": "oklch(0 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.39 0 0)",
|
||||
"input": "oklch(0.39 0 0)",
|
||||
"ring": "oklch(0.80 0.14 349.25)",
|
||||
"chart-1": "oklch(0.80 0.14 349.25)",
|
||||
"chart-2": "oklch(0.74 0.23 142.85)",
|
||||
"chart-3": "oklch(0.81 0.08 225.74)",
|
||||
"chart-4": "oklch(0.97 0.21 109.76)",
|
||||
"chart-5": "oklch(0.87 0.18 90.37)",
|
||||
"sidebar": "oklch(0.23 0.01 264.30)",
|
||||
"sidebar-foreground": "oklch(0.92 0 0)",
|
||||
"sidebar-primary": "oklch(0.80 0.14 349.25)",
|
||||
"sidebar-primary-foreground": "oklch(0 0 0)",
|
||||
"sidebar-accent": "oklch(0.81 0.08 225.74)",
|
||||
"sidebar-accent-foreground": "oklch(0 0 0)",
|
||||
"sidebar-border": "oklch(0.39 0 0)",
|
||||
"sidebar-ring": "oklch(0.80 0.14 349.25)",
|
||||
"radius": "0.5rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
133
public/r/themes/claude.json
Normal file
133
public/r/themes/claude.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "claude",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0.01 93.48)",
|
||||
"foreground": "oklch(0.34 0.03 94.42)",
|
||||
"card": "oklch(0.98 0.01 93.48)",
|
||||
"card-foreground": "oklch(0.19 0 0)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.27 0.02 99.70)",
|
||||
"primary": "oklch(0.62 0.14 39.15)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.92 0.01 87.42)",
|
||||
"secondary-foreground": "oklch(0.43 0.02 99.33)",
|
||||
"muted": "oklch(0.93 0.02 91.55)",
|
||||
"muted-foreground": "oklch(0.61 0.01 91.49)",
|
||||
"accent": "oklch(0.92 0.01 87.42)",
|
||||
"accent-foreground": "oklch(0.27 0.02 99.70)",
|
||||
"destructive": "oklch(0.19 0 0)",
|
||||
"border": "oklch(0.88 0.01 100.76)",
|
||||
"input": "oklch(0.76 0.02 96.91)",
|
||||
"ring": "oklch(0.59 0.17 252.92)",
|
||||
"chart-1": "oklch(0.56 0.13 42.95)",
|
||||
"chart-2": "oklch(0.69 0.16 290.29)",
|
||||
"chart-3": "oklch(0.88 0.03 91.64)",
|
||||
"chart-4": "oklch(0.88 0.04 298.21)",
|
||||
"chart-5": "oklch(0.56 0.13 41.94)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.97 0.01 93.49)",
|
||||
"sidebar-foreground": "oklch(0.36 0.01 106.85)",
|
||||
"sidebar-primary": "oklch(0.62 0.14 39.15)",
|
||||
"sidebar-primary-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-accent": "oklch(0.92 0.01 87.42)",
|
||||
"sidebar-accent-foreground": "oklch(0.33 0 0)",
|
||||
"sidebar-border": "oklch(0.94 0 0)",
|
||||
"sidebar-ring": "oklch(0.77 0 0)",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.27 0 0)",
|
||||
"foreground": "oklch(0.81 0.01 93.53)",
|
||||
"card": "oklch(0.27 0 0)",
|
||||
"card-foreground": "oklch(0.98 0.01 93.48)",
|
||||
"popover": "oklch(0.31 0 0)",
|
||||
"popover-foreground": "oklch(0.92 0 0)",
|
||||
"primary": "oklch(0.67 0.13 38.92)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.98 0.01 93.48)",
|
||||
"secondary-foreground": "oklch(0.31 0 0)",
|
||||
"muted": "oklch(0.22 0 0)",
|
||||
"muted-foreground": "oklch(0.77 0.02 100.64)",
|
||||
"accent": "oklch(0.21 0.01 88.79)",
|
||||
"accent-foreground": "oklch(0.97 0.01 93.49)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.36 0.01 106.85)",
|
||||
"input": "oklch(0.43 0.01 99.03)",
|
||||
"ring": "oklch(0.59 0.17 252.92)",
|
||||
"chart-1": "oklch(0.56 0.13 42.95)",
|
||||
"chart-2": "oklch(0.69 0.16 290.29)",
|
||||
"chart-3": "oklch(0.21 0.01 88.79)",
|
||||
"chart-4": "oklch(0.31 0.05 289.74)",
|
||||
"chart-5": "oklch(0.56 0.13 41.94)",
|
||||
"sidebar": "oklch(0.24 0 0)",
|
||||
"sidebar-foreground": "oklch(0.81 0.01 93.53)",
|
||||
"sidebar-primary": "oklch(0.33 0 0)",
|
||||
"sidebar-primary-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-accent": "oklch(0.17 0 0)",
|
||||
"sidebar-accent-foreground": "oklch(0.81 0.01 93.53)",
|
||||
"sidebar-border": "oklch(0.94 0 0)",
|
||||
"sidebar-ring": "oklch(0.77 0 0)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
90
public/r/themes/claymorphism.json
Normal file
90
public/r/themes/claymorphism.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "claymorphism",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "1.25rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.92 0.00 49.03)",
|
||||
"foreground": "oklch(0.28 0.04 260.03)",
|
||||
"card": "oklch(0.97 0 0)",
|
||||
"card-foreground": "oklch(0.28 0.04 260.03)",
|
||||
"popover": "oklch(0.97 0 0)",
|
||||
"popover-foreground": "oklch(0.28 0.04 260.03)",
|
||||
"primary": "oklch(0.59 0.20 277.12)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.87 0.00 56.48)",
|
||||
"secondary-foreground": "oklch(0.45 0.03 256.80)",
|
||||
"muted": "oklch(0.92 0.00 49.03)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.37)",
|
||||
"accent": "oklch(0.94 0.03 322.02)",
|
||||
"accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.87 0.00 56.48)",
|
||||
"input": "oklch(0.87 0.00 56.48)",
|
||||
"ring": "oklch(0.59 0.20 277.12)",
|
||||
"chart-1": "oklch(0.59 0.20 277.12)",
|
||||
"chart-2": "oklch(0.51 0.23 276.97)",
|
||||
"chart-3": "oklch(0.46 0.21 277.03)",
|
||||
"chart-4": "oklch(0.40 0.18 277.37)",
|
||||
"chart-5": "oklch(0.36 0.14 278.70)",
|
||||
"radius": "1.25rem",
|
||||
"sidebar": "oklch(0.87 0.00 56.48)",
|
||||
"sidebar-foreground": "oklch(0.28 0.04 260.03)",
|
||||
"sidebar-primary": "oklch(0.59 0.20 277.12)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.94 0.03 322.02)",
|
||||
"sidebar-accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-border": "oklch(0.87 0.00 56.48)",
|
||||
"sidebar-ring": "oklch(0.59 0.20 277.12)",
|
||||
"font-sans": "Plus Jakarta Sans, sans-serif",
|
||||
"font-serif": "Lora, serif",
|
||||
"font-mono": "Roboto Mono, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.22 0.01 67.44)",
|
||||
"foreground": "oklch(0.93 0.01 255.51)",
|
||||
"card": "oklch(0.28 0.01 59.35)",
|
||||
"card-foreground": "oklch(0.93 0.01 255.51)",
|
||||
"popover": "oklch(0.28 0.01 59.35)",
|
||||
"popover-foreground": "oklch(0.93 0.01 255.51)",
|
||||
"primary": "oklch(0.68 0.16 276.94)",
|
||||
"primary-foreground": "oklch(0.22 0.01 67.44)",
|
||||
"secondary": "oklch(0.34 0.01 59.44)",
|
||||
"secondary-foreground": "oklch(0.87 0.01 258.36)",
|
||||
"muted": "oklch(0.28 0.01 59.35)",
|
||||
"muted-foreground": "oklch(0.71 0.02 261.33)",
|
||||
"accent": "oklch(0.39 0.01 59.49)",
|
||||
"accent-foreground": "oklch(0.87 0.01 258.36)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.34 0.01 59.44)",
|
||||
"input": "oklch(0.34 0.01 59.44)",
|
||||
"ring": "oklch(0.68 0.16 276.94)",
|
||||
"chart-1": "oklch(0.68 0.16 276.94)",
|
||||
"chart-2": "oklch(0.59 0.20 277.12)",
|
||||
"chart-3": "oklch(0.51 0.23 276.97)",
|
||||
"chart-4": "oklch(0.46 0.21 277.03)",
|
||||
"chart-5": "oklch(0.40 0.18 277.37)",
|
||||
"sidebar": "oklch(0.34 0.01 59.44)",
|
||||
"sidebar-foreground": "oklch(0.93 0.01 255.51)",
|
||||
"sidebar-primary": "oklch(0.68 0.16 276.94)",
|
||||
"sidebar-primary-foreground": "oklch(0.22 0.01 67.44)",
|
||||
"sidebar-accent": "oklch(0.39 0.01 59.49)",
|
||||
"sidebar-accent-foreground": "oklch(0.87 0.01 258.36)",
|
||||
"sidebar-border": "oklch(0.34 0.01 59.44)",
|
||||
"sidebar-ring": "oklch(0.68 0.16 276.94)",
|
||||
"radius": "1.25rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
133
public/r/themes/clean-slate.json
Normal file
133
public/r/themes/clean-slate.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "clean-slate",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Inter, sans-serif",
|
||||
"font-mono": "JetBrains Mono, monospace",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.28 0.04 260.33)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.28 0.04 260.33)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.28 0.04 260.33)",
|
||||
"primary": "oklch(0.59 0.20 277.06)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.93 0.01 261.82)",
|
||||
"secondary-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"muted": "oklch(0.97 0 0)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.41)",
|
||||
"accent": "oklch(0.93 0.03 273.66)",
|
||||
"accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.87 0.01 261.81)",
|
||||
"input": "oklch(0.87 0.01 261.81)",
|
||||
"ring": "oklch(0.59 0.20 277.06)",
|
||||
"chart-1": "oklch(0.59 0.20 277.06)",
|
||||
"chart-2": "oklch(0.51 0.23 276.97)",
|
||||
"chart-3": "oklch(0.46 0.21 277.06)",
|
||||
"chart-4": "oklch(0.40 0.18 277.16)",
|
||||
"chart-5": "oklch(0.36 0.14 278.65)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.97 0 0)",
|
||||
"sidebar-foreground": "oklch(0.28 0.04 260.33)",
|
||||
"sidebar-primary": "oklch(0.59 0.20 277.06)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.93 0.03 273.66)",
|
||||
"sidebar-accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-border": "oklch(0.87 0.01 261.81)",
|
||||
"sidebar-ring": "oklch(0.59 0.20 277.06)",
|
||||
"font-sans": "Inter, sans-serif",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"font-mono": "JetBrains Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "8px",
|
||||
"shadow-spread": "-1px",
|
||||
"shadow-offset-x": "0px",
|
||||
"shadow-offset-y": "4px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0px 4px 8px -1px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0px 4px 8px -1px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0px 4px 8px -1px oklch(0.00 0 0 / 0.10), 0px 1px 2px -2px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0px 4px 8px -1px oklch(0.00 0 0 / 0.10), 0px 1px 2px -2px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0px 4px 8px -1px oklch(0.00 0 0 / 0.10), 0px 2px 4px -2px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0px 4px 8px -1px oklch(0.00 0 0 / 0.10), 0px 4px 6px -2px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0px 4px 8px -1px oklch(0.00 0 0 / 0.10), 0px 8px 10px -2px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0px 4px 8px -1px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.21 0.04 264.04)",
|
||||
"foreground": "oklch(0.93 0.01 256.71)",
|
||||
"card": "oklch(0.28 0.04 260.33)",
|
||||
"card-foreground": "oklch(0.93 0.01 256.71)",
|
||||
"popover": "oklch(0.28 0.04 260.33)",
|
||||
"popover-foreground": "oklch(0.93 0.01 256.71)",
|
||||
"primary": "oklch(0.68 0.16 276.93)",
|
||||
"primary-foreground": "oklch(0.21 0.04 264.04)",
|
||||
"secondary": "oklch(0.34 0.03 261.83)",
|
||||
"secondary-foreground": "oklch(0.87 0.01 261.81)",
|
||||
"muted": "oklch(0.28 0.04 260.33)",
|
||||
"muted-foreground": "oklch(0.71 0.02 261.33)",
|
||||
"accent": "oklch(0.37 0.03 259.73)",
|
||||
"accent-foreground": "oklch(0.87 0.01 261.81)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.45 0.03 257.68)",
|
||||
"input": "oklch(0.45 0.03 257.68)",
|
||||
"ring": "oklch(0.68 0.16 276.93)",
|
||||
"chart-1": "oklch(0.68 0.16 276.93)",
|
||||
"chart-2": "oklch(0.59 0.20 277.06)",
|
||||
"chart-3": "oklch(0.51 0.23 276.97)",
|
||||
"chart-4": "oklch(0.46 0.21 277.06)",
|
||||
"chart-5": "oklch(0.40 0.18 277.16)",
|
||||
"sidebar": "oklch(0.28 0.04 260.33)",
|
||||
"sidebar-foreground": "oklch(0.93 0.01 256.71)",
|
||||
"sidebar-primary": "oklch(0.68 0.16 276.93)",
|
||||
"sidebar-primary-foreground": "oklch(0.21 0.04 264.04)",
|
||||
"sidebar-accent": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-accent-foreground": "oklch(0.87 0.01 261.81)",
|
||||
"sidebar-border": "oklch(0.45 0.03 257.68)",
|
||||
"sidebar-ring": "oklch(0.68 0.16 276.93)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/corporate.json
Normal file
133
public/r/themes/corporate.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "corporate",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Inter, sans-serif",
|
||||
"font-mono": "IBM Plex Mono, monospace",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"radius": "0.375rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.21 0.03 263.61)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.21 0.03 263.61)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.21 0.03 263.61)",
|
||||
"primary": "oklch(0.48 0.20 260.47)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.97 0 0)",
|
||||
"secondary-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"muted": "oklch(0.97 0 0)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.41)",
|
||||
"accent": "oklch(0.95 0.02 260.18)",
|
||||
"accent-foreground": "oklch(0.48 0.20 260.47)",
|
||||
"destructive": "oklch(0.58 0.22 27.29)",
|
||||
"border": "oklch(0.93 0.01 261.82)",
|
||||
"input": "oklch(0.93 0.01 261.82)",
|
||||
"ring": "oklch(0.48 0.20 260.47)",
|
||||
"chart-1": "oklch(0.48 0.20 260.47)",
|
||||
"chart-2": "oklch(0.56 0.24 260.92)",
|
||||
"chart-3": "oklch(0.40 0.16 259.61)",
|
||||
"chart-4": "oklch(0.43 0.16 259.82)",
|
||||
"chart-5": "oklch(0.29 0.07 261.20)",
|
||||
"radius": "0.375rem",
|
||||
"sidebar": "oklch(0.97 0 0)",
|
||||
"sidebar-foreground": "oklch(0.21 0.03 263.61)",
|
||||
"sidebar-primary": "oklch(0.48 0.20 260.47)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.95 0.02 260.18)",
|
||||
"sidebar-accent-foreground": "oklch(0.48 0.20 260.47)",
|
||||
"sidebar-border": "oklch(0.93 0.01 261.82)",
|
||||
"sidebar-ring": "oklch(0.48 0.20 260.47)",
|
||||
"font-sans": "Inter, sans-serif",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"font-mono": "IBM Plex Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.26 0.03 262.67)",
|
||||
"foreground": "oklch(0.93 0.01 261.82)",
|
||||
"card": "oklch(0.30 0.03 260.51)",
|
||||
"card-foreground": "oklch(0.93 0.01 261.82)",
|
||||
"popover": "oklch(0.30 0.03 260.51)",
|
||||
"popover-foreground": "oklch(0.93 0.01 261.82)",
|
||||
"primary": "oklch(0.56 0.24 260.92)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.35 0.04 261.40)",
|
||||
"secondary-foreground": "oklch(0.93 0.01 261.82)",
|
||||
"muted": "oklch(0.30 0.03 260.51)",
|
||||
"muted-foreground": "oklch(0.71 0.02 261.33)",
|
||||
"accent": "oklch(0.33 0.04 264.63)",
|
||||
"accent-foreground": "oklch(0.93 0.01 261.82)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.35 0.04 261.40)",
|
||||
"input": "oklch(0.35 0.04 261.40)",
|
||||
"ring": "oklch(0.56 0.24 260.92)",
|
||||
"chart-1": "oklch(0.56 0.24 260.92)",
|
||||
"chart-2": "oklch(0.48 0.20 260.47)",
|
||||
"chart-3": "oklch(0.69 0.17 255.59)",
|
||||
"chart-4": "oklch(0.43 0.16 259.82)",
|
||||
"chart-5": "oklch(0.29 0.07 261.20)",
|
||||
"sidebar": "oklch(0.26 0.03 262.67)",
|
||||
"sidebar-foreground": "oklch(0.93 0.01 261.82)",
|
||||
"sidebar-primary": "oklch(0.56 0.24 260.92)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.33 0.04 264.63)",
|
||||
"sidebar-accent-foreground": "oklch(0.93 0.01 261.82)",
|
||||
"sidebar-border": "oklch(0.35 0.04 261.40)",
|
||||
"sidebar-ring": "oklch(0.56 0.24 260.92)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
90
public/r/themes/cyberpunk.json
Normal file
90
public/r/themes/cyberpunk.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "cyberpunk",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.5rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.16 0.04 281.83)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"primary": "oklch(0.67 0.29 341.42)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.96 0.02 286.08)",
|
||||
"secondary-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"muted": "oklch(0.96 0.02 286.08)",
|
||||
"muted-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"accent": "oklch(0.89 0.17 171.26)",
|
||||
"accent-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"destructive": "oklch(0.65 0.23 34.04)",
|
||||
"border": "oklch(0.92 0.01 224.97)",
|
||||
"input": "oklch(0.92 0.01 224.97)",
|
||||
"ring": "oklch(0.67 0.29 341.42)",
|
||||
"chart-1": "oklch(0.67 0.29 341.42)",
|
||||
"chart-2": "oklch(0.55 0.29 299.10)",
|
||||
"chart-3": "oklch(0.84 0.15 209.27)",
|
||||
"chart-4": "oklch(0.89 0.17 171.26)",
|
||||
"chart-5": "oklch(0.92 0.19 101.40)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.96 0.02 286.08)",
|
||||
"sidebar-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"sidebar-primary": "oklch(0.67 0.29 341.42)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.89 0.17 171.26)",
|
||||
"sidebar-accent-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"sidebar-border": "oklch(0.92 0.01 224.97)",
|
||||
"sidebar-ring": "oklch(0.67 0.29 341.42)",
|
||||
"font-sans": "Outfit, sans-serif",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "Fira Code, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.16 0.04 281.83)",
|
||||
"foreground": "oklch(0.95 0.01 260.77)",
|
||||
"card": "oklch(0.25 0.06 281.15)",
|
||||
"card-foreground": "oklch(0.95 0.01 260.77)",
|
||||
"popover": "oklch(0.25 0.06 281.15)",
|
||||
"popover-foreground": "oklch(0.95 0.01 260.77)",
|
||||
"primary": "oklch(0.67 0.29 341.42)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.25 0.06 281.15)",
|
||||
"secondary-foreground": "oklch(0.95 0.01 260.77)",
|
||||
"muted": "oklch(0.25 0.06 281.15)",
|
||||
"muted-foreground": "oklch(0.62 0.05 278.12)",
|
||||
"accent": "oklch(0.89 0.17 171.26)",
|
||||
"accent-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"destructive": "oklch(0.65 0.23 34.04)",
|
||||
"border": "oklch(0.33 0.08 280.79)",
|
||||
"input": "oklch(0.33 0.08 280.79)",
|
||||
"ring": "oklch(0.67 0.29 341.42)",
|
||||
"chart-1": "oklch(0.67 0.29 341.42)",
|
||||
"chart-2": "oklch(0.55 0.29 299.10)",
|
||||
"chart-3": "oklch(0.84 0.15 209.27)",
|
||||
"chart-4": "oklch(0.89 0.17 171.26)",
|
||||
"chart-5": "oklch(0.92 0.19 101.40)",
|
||||
"sidebar": "oklch(0.16 0.04 281.83)",
|
||||
"sidebar-foreground": "oklch(0.95 0.01 260.77)",
|
||||
"sidebar-primary": "oklch(0.67 0.29 341.42)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.89 0.17 171.26)",
|
||||
"sidebar-accent-foreground": "oklch(0.16 0.04 281.83)",
|
||||
"sidebar-border": "oklch(0.33 0.08 280.79)",
|
||||
"sidebar-ring": "oklch(0.67 0.29 341.42)",
|
||||
"radius": "0.5rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
133
public/r/themes/elegant-luxury.json
Normal file
133
public/r/themes/elegant-luxury.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "elegant-luxury",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Poppins, sans-serif",
|
||||
"font-mono": "IBM Plex Mono, monospace",
|
||||
"font-serif": "Libre Baskerville, serif",
|
||||
"radius": "0.375rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.22 0 0)",
|
||||
"card": "oklch(0.98 0 0)",
|
||||
"card-foreground": "oklch(0.22 0 0)",
|
||||
"popover": "oklch(0.98 0 0)",
|
||||
"popover-foreground": "oklch(0.22 0 0)",
|
||||
"primary": "oklch(0.47 0.15 25.06)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.96 0.04 88.18)",
|
||||
"secondary-foreground": "oklch(0.48 0.10 75.09)",
|
||||
"muted": "oklch(0.94 0.01 48.70)",
|
||||
"muted-foreground": "oklch(0.44 0.01 73.63)",
|
||||
"accent": "oklch(0.96 0.06 94.84)",
|
||||
"accent-foreground": "oklch(0.40 0.13 25.81)",
|
||||
"destructive": "oklch(0.44 0.16 26.84)",
|
||||
"border": "oklch(0.94 0.03 81.74)",
|
||||
"input": "oklch(0.94 0.03 81.74)",
|
||||
"ring": "oklch(0.47 0.15 25.06)",
|
||||
"chart-1": "oklch(0.51 0.19 27.52)",
|
||||
"chart-2": "oklch(0.47 0.15 25.06)",
|
||||
"chart-3": "oklch(0.40 0.13 25.81)",
|
||||
"chart-4": "oklch(0.56 0.15 49.06)",
|
||||
"chart-5": "oklch(0.47 0.12 46.52)",
|
||||
"radius": "0.375rem",
|
||||
"sidebar": "oklch(0.94 0.01 48.70)",
|
||||
"sidebar-foreground": "oklch(0.22 0 0)",
|
||||
"sidebar-primary": "oklch(0.47 0.15 25.06)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.96 0.06 94.84)",
|
||||
"sidebar-accent-foreground": "oklch(0.40 0.13 25.81)",
|
||||
"sidebar-border": "oklch(0.94 0.03 81.74)",
|
||||
"sidebar-ring": "oklch(0.47 0.15 25.06)",
|
||||
"font-sans": "Poppins, sans-serif",
|
||||
"font-serif": "Libre Baskerville, serif",
|
||||
"font-mono": "IBM Plex Mono, monospace",
|
||||
"shadow-color": "hsl(0 63% 18%)",
|
||||
"shadow-opacity": "0.12",
|
||||
"shadow-blur": "16px",
|
||||
"shadow-spread": "-2px",
|
||||
"shadow-offset-x": "1px",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.06)",
|
||||
"shadow-xs": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.06)",
|
||||
"shadow-sm": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.12), 1px 1px 2px -3px oklch(0.28 0.09 24.83 / 0.12)",
|
||||
"shadow": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.12), 1px 1px 2px -3px oklch(0.28 0.09 24.83 / 0.12)",
|
||||
"shadow-md": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.12), 1px 2px 4px -3px oklch(0.28 0.09 24.83 / 0.12)",
|
||||
"shadow-lg": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.12), 1px 4px 6px -3px oklch(0.28 0.09 24.83 / 0.12)",
|
||||
"shadow-xl": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.12), 1px 8px 10px -3px oklch(0.28 0.09 24.83 / 0.12)",
|
||||
"shadow-2xl": "1px 1px 16px -2px oklch(0.28 0.09 24.83 / 0.30)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.22 0.01 52.96)",
|
||||
"foreground": "oklch(0.97 0 0)",
|
||||
"card": "oklch(0.27 0.01 39.35)",
|
||||
"card-foreground": "oklch(0.97 0 0)",
|
||||
"popover": "oklch(0.27 0.01 39.35)",
|
||||
"popover-foreground": "oklch(0.97 0 0)",
|
||||
"primary": "oklch(0.51 0.19 27.52)",
|
||||
"primary-foreground": "oklch(0.98 0 0)",
|
||||
"secondary": "oklch(0.47 0.12 46.52)",
|
||||
"secondary-foreground": "oklch(0.96 0.06 94.84)",
|
||||
"muted": "oklch(0.27 0.01 39.35)",
|
||||
"muted-foreground": "oklch(0.87 0 0)",
|
||||
"accent": "oklch(0.56 0.15 49.06)",
|
||||
"accent-foreground": "oklch(0.96 0.06 94.84)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.37 0.01 73.58)",
|
||||
"input": "oklch(0.37 0.01 73.58)",
|
||||
"ring": "oklch(0.51 0.19 27.52)",
|
||||
"chart-1": "oklch(0.71 0.17 21.96)",
|
||||
"chart-2": "oklch(0.64 0.21 25.39)",
|
||||
"chart-3": "oklch(0.58 0.22 27.29)",
|
||||
"chart-4": "oklch(0.84 0.16 84.06)",
|
||||
"chart-5": "oklch(0.77 0.16 69.82)",
|
||||
"sidebar": "oklch(0.22 0.01 52.96)",
|
||||
"sidebar-foreground": "oklch(0.97 0 0)",
|
||||
"sidebar-primary": "oklch(0.51 0.19 27.52)",
|
||||
"sidebar-primary-foreground": "oklch(0.98 0 0)",
|
||||
"sidebar-accent": "oklch(0.56 0.15 49.06)",
|
||||
"sidebar-accent-foreground": "oklch(0.96 0.06 94.84)",
|
||||
"sidebar-border": "oklch(0.37 0.01 73.58)",
|
||||
"sidebar-ring": "oklch(0.51 0.19 27.52)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/ghibli-studio.json
Normal file
133
public/r/themes/ghibli-studio.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "ghibli-studio",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Nunito, sans-serif",
|
||||
"font-mono": "JetBrains Mono, monospace",
|
||||
"font-serif": "PT Serif, serif",
|
||||
"radius": "0.625rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.91 0.05 82.78)",
|
||||
"foreground": "oklch(0.41 0.08 78.86)",
|
||||
"card": "oklch(0.92 0.04 84.56)",
|
||||
"card-foreground": "oklch(0.41 0.08 74.04)",
|
||||
"popover": "oklch(0.92 0.04 84.56)",
|
||||
"popover-foreground": "oklch(0.41 0.08 74.04)",
|
||||
"primary": "oklch(0.71 0.10 111.96)",
|
||||
"primary-foreground": "oklch(0.98 0.01 2.18)",
|
||||
"secondary": "oklch(0.88 0.05 83.32)",
|
||||
"secondary-foreground": "oklch(0.51 0.08 78.21)",
|
||||
"muted": "oklch(0.86 0.06 82.94)",
|
||||
"muted-foreground": "oklch(0.51 0.08 74.78)",
|
||||
"accent": "oklch(0.86 0.05 85.12)",
|
||||
"accent-foreground": "oklch(0.26 0.02 356.72)",
|
||||
"destructive": "oklch(0.63 0.24 29.21)",
|
||||
"border": "oklch(0.74 0.06 79.64)",
|
||||
"input": "oklch(0.74 0.06 79.64)",
|
||||
"ring": "oklch(0.51 0.08 74.78)",
|
||||
"chart-1": "oklch(0.66 0.19 41.68)",
|
||||
"chart-2": "oklch(0.70 0.12 183.58)",
|
||||
"chart-3": "oklch(0.48 0.08 211.35)",
|
||||
"chart-4": "oklch(0.84 0.17 84.99)",
|
||||
"chart-5": "oklch(0.74 0.17 60.02)",
|
||||
"radius": "0.625rem",
|
||||
"sidebar": "oklch(0.87 0.06 84.46)",
|
||||
"sidebar-foreground": "oklch(0.41 0.08 78.86)",
|
||||
"sidebar-primary": "oklch(0.26 0.02 356.72)",
|
||||
"sidebar-primary-foreground": "oklch(0.98 0.01 2.18)",
|
||||
"sidebar-accent": "oklch(0.83 0.06 84.44)",
|
||||
"sidebar-accent-foreground": "oklch(0.26 0.02 356.72)",
|
||||
"sidebar-border": "oklch(0.91 0 0)",
|
||||
"sidebar-ring": "oklch(0.71 0 0)",
|
||||
"font-sans": "Nunito, sans-serif",
|
||||
"font-serif": "PT Serif, serif",
|
||||
"font-mono": "JetBrains Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.20 0.01 52.89)",
|
||||
"foreground": "oklch(0.88 0.05 79.11)",
|
||||
"card": "oklch(0.25 0.01 48.28)",
|
||||
"card-foreground": "oklch(0.88 0.05 79.11)",
|
||||
"popover": "oklch(0.25 0.01 48.28)",
|
||||
"popover-foreground": "oklch(0.88 0.05 79.11)",
|
||||
"primary": "oklch(0.64 0.05 114.58)",
|
||||
"primary-foreground": "oklch(0.98 0.01 2.18)",
|
||||
"secondary": "oklch(0.33 0.02 60.70)",
|
||||
"secondary-foreground": "oklch(0.88 0.05 83.32)",
|
||||
"muted": "oklch(0.27 0.01 39.35)",
|
||||
"muted-foreground": "oklch(0.74 0.06 79.64)",
|
||||
"accent": "oklch(0.33 0.02 60.70)",
|
||||
"accent-foreground": "oklch(0.86 0.05 85.12)",
|
||||
"destructive": "oklch(0.63 0.24 29.21)",
|
||||
"border": "oklch(0.33 0.02 60.70)",
|
||||
"input": "oklch(0.33 0.02 60.70)",
|
||||
"ring": "oklch(0.64 0.05 114.58)",
|
||||
"chart-1": "oklch(0.66 0.19 41.68)",
|
||||
"chart-2": "oklch(0.70 0.12 183.58)",
|
||||
"chart-3": "oklch(0.48 0.08 211.35)",
|
||||
"chart-4": "oklch(0.84 0.17 84.99)",
|
||||
"chart-5": "oklch(0.74 0.17 60.02)",
|
||||
"sidebar": "oklch(0.23 0.01 60.90)",
|
||||
"sidebar-foreground": "oklch(0.88 0.05 79.11)",
|
||||
"sidebar-primary": "oklch(0.64 0.05 114.58)",
|
||||
"sidebar-primary-foreground": "oklch(0.98 0.01 2.18)",
|
||||
"sidebar-accent": "oklch(0.33 0.02 60.70)",
|
||||
"sidebar-accent-foreground": "oklch(0.86 0.05 85.12)",
|
||||
"sidebar-border": "oklch(0.33 0.02 60.70)",
|
||||
"sidebar-ring": "oklch(0.64 0.05 114.58)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/midnight-bloom.json
Normal file
133
public/r/themes/midnight-bloom.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "midnight-bloom",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Montserrat, sans-serif",
|
||||
"font-mono": "Source Code Pro, monospace",
|
||||
"font-serif": "Playfair Display, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.32 0 0)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.32 0 0)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.32 0 0)",
|
||||
"primary": "oklch(0.57 0.20 283.26)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.82 0.07 249.99)",
|
||||
"secondary-foreground": "oklch(0.32 0 0)",
|
||||
"muted": "oklch(0.82 0.02 90.54)",
|
||||
"muted-foreground": "oklch(0.54 0 0)",
|
||||
"accent": "oklch(0.65 0.06 117.02)",
|
||||
"accent-foreground": "oklch(1.00 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.87 0 0)",
|
||||
"input": "oklch(0.87 0 0)",
|
||||
"ring": "oklch(0.57 0.20 283.26)",
|
||||
"chart-1": "oklch(0.57 0.20 283.26)",
|
||||
"chart-2": "oklch(0.53 0.17 314.68)",
|
||||
"chart-3": "oklch(0.34 0.18 301.34)",
|
||||
"chart-4": "oklch(0.67 0.14 261.15)",
|
||||
"chart-5": "oklch(0.59 0.10 245.35)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.98 0 0)",
|
||||
"sidebar-foreground": "oklch(0.32 0 0)",
|
||||
"sidebar-primary": "oklch(0.57 0.20 283.26)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.65 0.06 117.02)",
|
||||
"sidebar-accent-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-border": "oklch(0.87 0 0)",
|
||||
"sidebar-ring": "oklch(0.57 0.20 283.26)",
|
||||
"font-sans": "Montserrat, sans-serif",
|
||||
"font-serif": "Playfair Display, serif",
|
||||
"font-mono": "Source Code Pro, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "10px",
|
||||
"shadow-spread": "-2px",
|
||||
"shadow-offset-x": "0px",
|
||||
"shadow-offset-y": "5px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0px 5px 10px -2px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0px 5px 10px -2px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0px 5px 10px -2px oklch(0.00 0 0 / 0.10), 0px 1px 2px -3px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0px 5px 10px -2px oklch(0.00 0 0 / 0.10), 0px 1px 2px -3px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0px 5px 10px -2px oklch(0.00 0 0 / 0.10), 0px 2px 4px -3px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0px 5px 10px -2px oklch(0.00 0 0 / 0.10), 0px 4px 6px -3px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0px 5px 10px -2px oklch(0.00 0 0 / 0.10), 0px 8px 10px -3px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0px 5px 10px -2px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.23 0.01 268.25)",
|
||||
"foreground": "oklch(0.92 0 0)",
|
||||
"card": "oklch(0.32 0.01 229.15)",
|
||||
"card-foreground": "oklch(0.92 0 0)",
|
||||
"popover": "oklch(0.32 0.01 229.15)",
|
||||
"popover-foreground": "oklch(0.92 0 0)",
|
||||
"primary": "oklch(0.57 0.20 283.26)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.34 0.18 301.34)",
|
||||
"secondary-foreground": "oklch(0.92 0 0)",
|
||||
"muted": "oklch(0.39 0 0)",
|
||||
"muted-foreground": "oklch(0.72 0 0)",
|
||||
"accent": "oklch(0.67 0.14 261.15)",
|
||||
"accent-foreground": "oklch(0.92 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.39 0 0)",
|
||||
"input": "oklch(0.39 0 0)",
|
||||
"ring": "oklch(0.57 0.20 283.26)",
|
||||
"chart-1": "oklch(0.57 0.20 283.26)",
|
||||
"chart-2": "oklch(0.53 0.17 314.68)",
|
||||
"chart-3": "oklch(0.34 0.18 301.34)",
|
||||
"chart-4": "oklch(0.67 0.14 261.15)",
|
||||
"chart-5": "oklch(0.59 0.10 245.35)",
|
||||
"sidebar": "oklch(0.23 0.01 268.25)",
|
||||
"sidebar-foreground": "oklch(0.92 0 0)",
|
||||
"sidebar-primary": "oklch(0.57 0.20 283.26)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.67 0.14 261.15)",
|
||||
"sidebar-accent-foreground": "oklch(0.92 0 0)",
|
||||
"sidebar-border": "oklch(0.39 0 0)",
|
||||
"sidebar-ring": "oklch(0.57 0.20 283.26)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/modern-minimal.json
Normal file
133
public/r/themes/modern-minimal.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "modern-minimal",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "JetBrains Mono, monospace",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"radius": "0.375rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(1.00 0 0)",
|
||||
"foreground": "oklch(0.32 0 0)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.32 0 0)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.32 0 0)",
|
||||
"primary": "oklch(0.62 0.19 259.76)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.97 0 0)",
|
||||
"secondary-foreground": "oklch(0.45 0.03 257.68)",
|
||||
"muted": "oklch(0.98 0 0)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.41)",
|
||||
"accent": "oklch(0.95 0.03 233.56)",
|
||||
"accent-foreground": "oklch(0.38 0.14 265.59)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.93 0.01 261.82)",
|
||||
"input": "oklch(0.93 0.01 261.82)",
|
||||
"ring": "oklch(0.62 0.19 259.76)",
|
||||
"chart-1": "oklch(0.62 0.19 259.76)",
|
||||
"chart-2": "oklch(0.55 0.22 262.96)",
|
||||
"chart-3": "oklch(0.49 0.22 264.43)",
|
||||
"chart-4": "oklch(0.42 0.18 265.55)",
|
||||
"chart-5": "oklch(0.38 0.14 265.59)",
|
||||
"radius": "0.375rem",
|
||||
"sidebar": "oklch(0.98 0 0)",
|
||||
"sidebar-foreground": "oklch(0.14 0 0)",
|
||||
"sidebar-primary": "oklch(0.20 0 0)",
|
||||
"sidebar-primary-foreground": "oklch(0.98 0 0)",
|
||||
"sidebar-accent": "oklch(0.97 0 0)",
|
||||
"sidebar-accent-foreground": "oklch(0.20 0 0)",
|
||||
"sidebar-border": "oklch(0.92 0 0)",
|
||||
"sidebar-ring": "oklch(0.71 0 0)",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"font-mono": "JetBrains Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.20 0 0)",
|
||||
"foreground": "oklch(0.92 0 0)",
|
||||
"card": "oklch(0.27 0 0)",
|
||||
"card-foreground": "oklch(0.92 0 0)",
|
||||
"popover": "oklch(0.27 0 0)",
|
||||
"popover-foreground": "oklch(0.92 0 0)",
|
||||
"primary": "oklch(0.62 0.19 259.76)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.27 0 0)",
|
||||
"secondary-foreground": "oklch(0.92 0 0)",
|
||||
"muted": "oklch(0.27 0 0)",
|
||||
"muted-foreground": "oklch(0.72 0 0)",
|
||||
"accent": "oklch(0.38 0.14 265.59)",
|
||||
"accent-foreground": "oklch(0.88 0.06 254.63)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.37 0 0)",
|
||||
"input": "oklch(0.37 0 0)",
|
||||
"ring": "oklch(0.62 0.19 259.76)",
|
||||
"chart-1": "oklch(0.71 0.14 254.69)",
|
||||
"chart-2": "oklch(0.62 0.19 259.76)",
|
||||
"chart-3": "oklch(0.55 0.22 262.96)",
|
||||
"chart-4": "oklch(0.49 0.22 264.43)",
|
||||
"chart-5": "oklch(0.42 0.18 265.55)",
|
||||
"sidebar": "oklch(0.21 0.01 285.56)",
|
||||
"sidebar-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-primary": "oklch(0.49 0.24 264.41)",
|
||||
"sidebar-primary-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-accent": "oklch(0.27 0.01 285.81)",
|
||||
"sidebar-accent-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-border": "oklch(1.00 0 0 / 10%)",
|
||||
"sidebar-ring": "oklch(0.55 0.02 285.76)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/nature.json
Normal file
133
public/r/themes/nature.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "nature",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Montserrat, sans-serif",
|
||||
"font-mono": "Source Code Pro, monospace",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.97 0.01 81.76)",
|
||||
"foreground": "oklch(0.30 0.04 29.20)",
|
||||
"card": "oklch(0.97 0.01 81.76)",
|
||||
"card-foreground": "oklch(0.30 0.04 29.20)",
|
||||
"popover": "oklch(0.97 0.01 81.76)",
|
||||
"popover-foreground": "oklch(0.30 0.04 29.20)",
|
||||
"primary": "oklch(0.52 0.13 144.33)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.96 0.02 147.54)",
|
||||
"secondary-foreground": "oklch(0.43 0.12 144.33)",
|
||||
"muted": "oklch(0.94 0.01 72.65)",
|
||||
"muted-foreground": "oklch(0.45 0.05 38.69)",
|
||||
"accent": "oklch(0.90 0.05 146.01)",
|
||||
"accent-foreground": "oklch(0.43 0.12 144.33)",
|
||||
"destructive": "oklch(0.54 0.19 26.90)",
|
||||
"border": "oklch(0.88 0.02 77.29)",
|
||||
"input": "oklch(0.88 0.02 77.29)",
|
||||
"ring": "oklch(0.52 0.13 144.33)",
|
||||
"chart-1": "oklch(0.67 0.16 144.06)",
|
||||
"chart-2": "oklch(0.58 0.14 144.14)",
|
||||
"chart-3": "oklch(0.52 0.13 144.33)",
|
||||
"chart-4": "oklch(0.43 0.12 144.33)",
|
||||
"chart-5": "oklch(0.22 0.05 145.19)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.94 0.01 72.65)",
|
||||
"sidebar-foreground": "oklch(0.30 0.04 29.20)",
|
||||
"sidebar-primary": "oklch(0.52 0.13 144.33)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.90 0.05 146.01)",
|
||||
"sidebar-accent-foreground": "oklch(0.43 0.12 144.33)",
|
||||
"sidebar-border": "oklch(0.88 0.02 77.29)",
|
||||
"sidebar-ring": "oklch(0.52 0.13 144.33)",
|
||||
"font-sans": "Montserrat, sans-serif",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"font-mono": "Source Code Pro, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.27 0.03 150.18)",
|
||||
"foreground": "oklch(0.94 0.01 72.65)",
|
||||
"card": "oklch(0.33 0.03 146.53)",
|
||||
"card-foreground": "oklch(0.94 0.01 72.65)",
|
||||
"popover": "oklch(0.33 0.03 146.53)",
|
||||
"popover-foreground": "oklch(0.94 0.01 72.65)",
|
||||
"primary": "oklch(0.67 0.16 144.06)",
|
||||
"primary-foreground": "oklch(0.22 0.05 145.19)",
|
||||
"secondary": "oklch(0.39 0.03 143.09)",
|
||||
"secondary-foreground": "oklch(0.90 0.02 142.94)",
|
||||
"muted": "oklch(0.33 0.03 146.53)",
|
||||
"muted-foreground": "oklch(0.86 0.02 77.29)",
|
||||
"accent": "oklch(0.58 0.14 144.14)",
|
||||
"accent-foreground": "oklch(0.94 0.01 72.65)",
|
||||
"destructive": "oklch(0.54 0.19 26.90)",
|
||||
"border": "oklch(0.39 0.03 143.09)",
|
||||
"input": "oklch(0.39 0.03 143.09)",
|
||||
"ring": "oklch(0.67 0.16 144.06)",
|
||||
"chart-1": "oklch(0.77 0.12 145.23)",
|
||||
"chart-2": "oklch(0.72 0.14 144.92)",
|
||||
"chart-3": "oklch(0.67 0.16 144.06)",
|
||||
"chart-4": "oklch(0.63 0.15 144.32)",
|
||||
"chart-5": "oklch(0.58 0.14 144.14)",
|
||||
"sidebar": "oklch(0.27 0.03 150.18)",
|
||||
"sidebar-foreground": "oklch(0.94 0.01 72.65)",
|
||||
"sidebar-primary": "oklch(0.67 0.16 144.06)",
|
||||
"sidebar-primary-foreground": "oklch(0.22 0.05 145.19)",
|
||||
"sidebar-accent": "oklch(0.58 0.14 144.14)",
|
||||
"sidebar-accent-foreground": "oklch(0.94 0.01 72.65)",
|
||||
"sidebar-border": "oklch(0.39 0.03 143.09)",
|
||||
"sidebar-ring": "oklch(0.67 0.16 144.06)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/neo-brutalism.json
Normal file
133
public/r/themes/neo-brutalism.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "neo-brutalism",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "DM Sans, sans-serif",
|
||||
"font-mono": "Space Mono, monospace",
|
||||
"font-serif": "ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0px",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(1.00 0 0)",
|
||||
"foreground": "oklch(0 0 0)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0 0 0)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0 0 0)",
|
||||
"primary": "oklch(0.65 0.24 26.92)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.97 0.21 109.74)",
|
||||
"secondary-foreground": "oklch(0 0 0)",
|
||||
"muted": "oklch(0.96 0 0)",
|
||||
"muted-foreground": "oklch(0.32 0 0)",
|
||||
"accent": "oklch(0.56 0.24 260.83)",
|
||||
"accent-foreground": "oklch(1.00 0 0)",
|
||||
"destructive": "oklch(0 0 0)",
|
||||
"border": "oklch(0 0 0)",
|
||||
"input": "oklch(0 0 0)",
|
||||
"ring": "oklch(0.65 0.24 26.92)",
|
||||
"chart-1": "oklch(0.65 0.24 26.92)",
|
||||
"chart-2": "oklch(0.97 0.21 109.74)",
|
||||
"chart-3": "oklch(0.56 0.24 260.83)",
|
||||
"chart-4": "oklch(0.73 0.25 142.50)",
|
||||
"chart-5": "oklch(0.59 0.27 328.36)",
|
||||
"radius": "0px",
|
||||
"sidebar": "oklch(0.96 0 0)",
|
||||
"sidebar-foreground": "oklch(0 0 0)",
|
||||
"sidebar-primary": "oklch(0.65 0.24 26.92)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.56 0.24 260.83)",
|
||||
"sidebar-accent-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-border": "oklch(0 0 0)",
|
||||
"sidebar-ring": "oklch(0.65 0.24 26.92)",
|
||||
"font-sans": "DM Sans, sans-serif",
|
||||
"font-serif": "ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "Space Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "1",
|
||||
"shadow-blur": "0px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "4px",
|
||||
"shadow-offset-y": "4px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "4px 4px 0px 0px oklch(0.00 0 0 / 0.50)",
|
||||
"shadow-xs": "4px 4px 0px 0px oklch(0.00 0 0 / 0.50)",
|
||||
"shadow-sm": "4px 4px 0px 0px oklch(0.00 0 0 / 1.00), 4px 1px 2px -1px oklch(0.00 0 0 / 1.00)",
|
||||
"shadow": "4px 4px 0px 0px oklch(0.00 0 0 / 1.00), 4px 1px 2px -1px oklch(0.00 0 0 / 1.00)",
|
||||
"shadow-md": "4px 4px 0px 0px oklch(0.00 0 0 / 1.00), 4px 2px 4px -1px oklch(0.00 0 0 / 1.00)",
|
||||
"shadow-lg": "4px 4px 0px 0px oklch(0.00 0 0 / 1.00), 4px 4px 6px -1px oklch(0.00 0 0 / 1.00)",
|
||||
"shadow-xl": "4px 4px 0px 0px oklch(0.00 0 0 / 1.00), 4px 8px 10px -1px oklch(0.00 0 0 / 1.00)",
|
||||
"shadow-2xl": "4px 4px 0px 0px oklch(0.00 0 0 / 2.50)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0 0 0)",
|
||||
"foreground": "oklch(1.00 0 0)",
|
||||
"card": "oklch(0.32 0 0)",
|
||||
"card-foreground": "oklch(1.00 0 0)",
|
||||
"popover": "oklch(0.32 0 0)",
|
||||
"popover-foreground": "oklch(1.00 0 0)",
|
||||
"primary": "oklch(0.70 0.19 23.04)",
|
||||
"primary-foreground": "oklch(0 0 0)",
|
||||
"secondary": "oklch(0.97 0.20 109.61)",
|
||||
"secondary-foreground": "oklch(0 0 0)",
|
||||
"muted": "oklch(0.32 0 0)",
|
||||
"muted-foreground": "oklch(0.85 0 0)",
|
||||
"accent": "oklch(0.68 0.18 251.63)",
|
||||
"accent-foreground": "oklch(0 0 0)",
|
||||
"destructive": "oklch(1.00 0 0)",
|
||||
"border": "oklch(1.00 0 0)",
|
||||
"input": "oklch(1.00 0 0)",
|
||||
"ring": "oklch(0.70 0.19 23.04)",
|
||||
"chart-1": "oklch(0.70 0.19 23.04)",
|
||||
"chart-2": "oklch(0.97 0.20 109.61)",
|
||||
"chart-3": "oklch(0.68 0.18 251.63)",
|
||||
"chart-4": "oklch(0.74 0.23 142.87)",
|
||||
"chart-5": "oklch(0.61 0.25 328.13)",
|
||||
"sidebar": "oklch(0 0 0)",
|
||||
"sidebar-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-primary": "oklch(0.70 0.19 23.04)",
|
||||
"sidebar-primary-foreground": "oklch(0 0 0)",
|
||||
"sidebar-accent": "oklch(0.68 0.18 251.63)",
|
||||
"sidebar-accent-foreground": "oklch(0 0 0)",
|
||||
"sidebar-border": "oklch(1.00 0 0)",
|
||||
"sidebar-ring": "oklch(0.70 0.19 23.04)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
90
public/r/themes/northern-lights.json
Normal file
90
public/r/themes/northern-lights.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "northern-lights",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.5rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0 0)",
|
||||
"foreground": "oklch(0.32 0 0)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.32 0 0)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.32 0 0)",
|
||||
"primary": "oklch(0.65 0.15 150.30)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.67 0.14 261.34)",
|
||||
"secondary-foreground": "oklch(1.00 0 0)",
|
||||
"muted": "oklch(0.88 0.03 98.07)",
|
||||
"muted-foreground": "oklch(0.54 0 0)",
|
||||
"accent": "oklch(0.83 0.11 211.95)",
|
||||
"accent-foreground": "oklch(0.32 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.87 0 0)",
|
||||
"input": "oklch(0.87 0 0)",
|
||||
"ring": "oklch(0.65 0.15 150.30)",
|
||||
"chart-1": "oklch(0.65 0.15 150.30)",
|
||||
"chart-2": "oklch(0.67 0.14 261.34)",
|
||||
"chart-3": "oklch(0.83 0.11 211.95)",
|
||||
"chart-4": "oklch(0.59 0.10 245.73)",
|
||||
"chart-5": "oklch(0.59 0.16 148.24)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.98 0 0)",
|
||||
"sidebar-foreground": "oklch(0.32 0 0)",
|
||||
"sidebar-primary": "oklch(0.65 0.15 150.30)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.83 0.11 211.95)",
|
||||
"sidebar-accent-foreground": "oklch(0.32 0 0)",
|
||||
"sidebar-border": "oklch(0.87 0 0)",
|
||||
"sidebar-ring": "oklch(0.65 0.15 150.30)",
|
||||
"font-sans": "Plus Jakarta Sans, sans-serif",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"font-mono": "JetBrains Mono, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.23 0.01 264.30)",
|
||||
"foreground": "oklch(0.92 0 0)",
|
||||
"card": "oklch(0.32 0.01 223.62)",
|
||||
"card-foreground": "oklch(0.92 0 0)",
|
||||
"popover": "oklch(0.32 0.01 223.62)",
|
||||
"popover-foreground": "oklch(0.92 0 0)",
|
||||
"primary": "oklch(0.65 0.15 150.30)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.59 0.10 245.73)",
|
||||
"secondary-foreground": "oklch(0.92 0 0)",
|
||||
"muted": "oklch(0.39 0 0)",
|
||||
"muted-foreground": "oklch(0.72 0 0)",
|
||||
"accent": "oklch(0.67 0.14 261.34)",
|
||||
"accent-foreground": "oklch(0.92 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.39 0 0)",
|
||||
"input": "oklch(0.39 0 0)",
|
||||
"ring": "oklch(0.65 0.15 150.30)",
|
||||
"chart-1": "oklch(0.65 0.15 150.30)",
|
||||
"chart-2": "oklch(0.59 0.10 245.73)",
|
||||
"chart-3": "oklch(0.67 0.14 261.34)",
|
||||
"chart-4": "oklch(0.83 0.11 211.95)",
|
||||
"chart-5": "oklch(0.59 0.16 148.24)",
|
||||
"sidebar": "oklch(0.23 0.01 264.30)",
|
||||
"sidebar-foreground": "oklch(0.92 0 0)",
|
||||
"sidebar-primary": "oklch(0.65 0.15 150.30)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.67 0.14 261.34)",
|
||||
"sidebar-accent-foreground": "oklch(0.92 0 0)",
|
||||
"sidebar-border": "oklch(0.39 0 0)",
|
||||
"sidebar-ring": "oklch(0.65 0.15 150.30)",
|
||||
"radius": "0.5rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
90
public/r/themes/ocean-breeze.json
Normal file
90
public/r/themes/ocean-breeze.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "ocean-breeze",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.5rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.98 0.01 244.22)",
|
||||
"foreground": "oklch(0.37 0.03 259.73)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"primary": "oklch(0.72 0.19 149.58)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.95 0.02 236.80)",
|
||||
"secondary-foreground": "oklch(0.45 0.03 256.80)",
|
||||
"muted": "oklch(0.97 0.00 264.70)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.37)",
|
||||
"accent": "oklch(0.95 0.05 163.01)",
|
||||
"accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.93 0.01 264.60)",
|
||||
"input": "oklch(0.93 0.01 264.60)",
|
||||
"ring": "oklch(0.72 0.19 149.58)",
|
||||
"chart-1": "oklch(0.72 0.19 149.58)",
|
||||
"chart-2": "oklch(0.70 0.15 162.47)",
|
||||
"chart-3": "oklch(0.60 0.13 163.22)",
|
||||
"chart-4": "oklch(0.51 0.10 165.61)",
|
||||
"chart-5": "oklch(0.43 0.09 166.91)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.95 0.02 236.80)",
|
||||
"sidebar-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-primary": "oklch(0.72 0.19 149.58)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.95 0.05 163.01)",
|
||||
"sidebar-accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-border": "oklch(0.93 0.01 264.60)",
|
||||
"sidebar-ring": "oklch(0.72 0.19 149.58)",
|
||||
"font-sans": "DM Sans, sans-serif",
|
||||
"font-serif": "Lora, serif",
|
||||
"font-mono": "IBM Plex Mono, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.21 0.04 265.76)",
|
||||
"foreground": "oklch(0.87 0.01 258.36)",
|
||||
"card": "oklch(0.28 0.04 260.03)",
|
||||
"card-foreground": "oklch(0.87 0.01 258.36)",
|
||||
"popover": "oklch(0.28 0.04 260.03)",
|
||||
"popover-foreground": "oklch(0.87 0.01 258.36)",
|
||||
"primary": "oklch(0.77 0.15 163.22)",
|
||||
"primary-foreground": "oklch(0.21 0.04 265.76)",
|
||||
"secondary": "oklch(0.34 0.03 260.91)",
|
||||
"secondary-foreground": "oklch(0.71 0.01 286.14)",
|
||||
"muted": "oklch(0.28 0.04 260.03)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.37)",
|
||||
"accent": "oklch(0.37 0.03 259.73)",
|
||||
"accent-foreground": "oklch(0.71 0.01 286.14)",
|
||||
"destructive": "oklch(0.64 0.21 25.33)",
|
||||
"border": "oklch(0.45 0.03 256.80)",
|
||||
"input": "oklch(0.45 0.03 256.80)",
|
||||
"ring": "oklch(0.77 0.15 163.22)",
|
||||
"chart-1": "oklch(0.77 0.15 163.22)",
|
||||
"chart-2": "oklch(0.78 0.13 181.90)",
|
||||
"chart-3": "oklch(0.72 0.19 149.58)",
|
||||
"chart-4": "oklch(0.70 0.15 162.47)",
|
||||
"chart-5": "oklch(0.60 0.13 163.22)",
|
||||
"sidebar": "oklch(0.28 0.04 260.03)",
|
||||
"sidebar-foreground": "oklch(0.87 0.01 258.36)",
|
||||
"sidebar-primary": "oklch(0.77 0.15 163.22)",
|
||||
"sidebar-primary-foreground": "oklch(0.21 0.04 265.76)",
|
||||
"sidebar-accent": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-accent-foreground": "oklch(0.71 0.01 286.14)",
|
||||
"sidebar-border": "oklch(0.45 0.03 256.80)",
|
||||
"sidebar-ring": "oklch(0.77 0.15 163.22)",
|
||||
"radius": "0.5rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
133
public/r/themes/pastel-dreams.json
Normal file
133
public/r/themes/pastel-dreams.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "pastel-dreams",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Open Sans, sans-serif",
|
||||
"font-mono": "IBM Plex Mono, monospace",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"radius": "1.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.97 0.01 316.68)",
|
||||
"foreground": "oklch(0.37 0.03 259.73)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"primary": "oklch(0.71 0.16 293.40)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.91 0.05 306.07)",
|
||||
"secondary-foreground": "oklch(0.45 0.03 257.68)",
|
||||
"muted": "oklch(0.95 0.03 307.19)",
|
||||
"muted-foreground": "oklch(0.55 0.02 264.41)",
|
||||
"accent": "oklch(0.94 0.03 322.47)",
|
||||
"accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"destructive": "oklch(0.81 0.10 19.47)",
|
||||
"border": "oklch(0.91 0.05 306.07)",
|
||||
"input": "oklch(0.91 0.05 306.07)",
|
||||
"ring": "oklch(0.71 0.16 293.40)",
|
||||
"chart-1": "oklch(0.71 0.16 293.40)",
|
||||
"chart-2": "oklch(0.61 0.22 292.63)",
|
||||
"chart-3": "oklch(0.54 0.25 293.03)",
|
||||
"chart-4": "oklch(0.49 0.24 292.70)",
|
||||
"chart-5": "oklch(0.43 0.21 292.63)",
|
||||
"radius": "1.5rem",
|
||||
"sidebar": "oklch(0.91 0.05 306.07)",
|
||||
"sidebar-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-primary": "oklch(0.71 0.16 293.40)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.94 0.03 322.47)",
|
||||
"sidebar-accent-foreground": "oklch(0.37 0.03 259.73)",
|
||||
"sidebar-border": "oklch(0.91 0.05 306.07)",
|
||||
"sidebar-ring": "oklch(0.71 0.16 293.40)",
|
||||
"font-sans": "Open Sans, sans-serif",
|
||||
"font-serif": "Source Serif 4, serif",
|
||||
"font-mono": "IBM Plex Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.08",
|
||||
"shadow-blur": "16px",
|
||||
"shadow-spread": "-4px",
|
||||
"shadow-offset-x": "0px",
|
||||
"shadow-offset-y": "8px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0px 8px 16px -4px oklch(0.00 0 0 / 0.04)",
|
||||
"shadow-xs": "0px 8px 16px -4px oklch(0.00 0 0 / 0.04)",
|
||||
"shadow-sm": "0px 8px 16px -4px oklch(0.00 0 0 / 0.08), 0px 1px 2px -5px oklch(0.00 0 0 / 0.08)",
|
||||
"shadow": "0px 8px 16px -4px oklch(0.00 0 0 / 0.08), 0px 1px 2px -5px oklch(0.00 0 0 / 0.08)",
|
||||
"shadow-md": "0px 8px 16px -4px oklch(0.00 0 0 / 0.08), 0px 2px 4px -5px oklch(0.00 0 0 / 0.08)",
|
||||
"shadow-lg": "0px 8px 16px -4px oklch(0.00 0 0 / 0.08), 0px 4px 6px -5px oklch(0.00 0 0 / 0.08)",
|
||||
"shadow-xl": "0px 8px 16px -4px oklch(0.00 0 0 / 0.08), 0px 8px 10px -5px oklch(0.00 0 0 / 0.08)",
|
||||
"shadow-2xl": "0px 8px 16px -4px oklch(0.00 0 0 / 0.20)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.22 0.01 52.96)",
|
||||
"foreground": "oklch(0.93 0.03 273.66)",
|
||||
"card": "oklch(0.28 0.03 307.25)",
|
||||
"card-foreground": "oklch(0.93 0.03 273.66)",
|
||||
"popover": "oklch(0.28 0.03 307.25)",
|
||||
"popover-foreground": "oklch(0.93 0.03 273.66)",
|
||||
"primary": "oklch(0.79 0.12 295.97)",
|
||||
"primary-foreground": "oklch(0.22 0.01 52.96)",
|
||||
"secondary": "oklch(0.34 0.04 309.13)",
|
||||
"secondary-foreground": "oklch(0.87 0.01 261.81)",
|
||||
"muted": "oklch(0.28 0.03 307.25)",
|
||||
"muted-foreground": "oklch(0.71 0.02 261.33)",
|
||||
"accent": "oklch(0.39 0.05 304.68)",
|
||||
"accent-foreground": "oklch(0.87 0.01 261.81)",
|
||||
"destructive": "oklch(0.81 0.10 19.47)",
|
||||
"border": "oklch(0.34 0.04 309.13)",
|
||||
"input": "oklch(0.34 0.04 309.13)",
|
||||
"ring": "oklch(0.79 0.12 295.97)",
|
||||
"chart-1": "oklch(0.79 0.12 295.97)",
|
||||
"chart-2": "oklch(0.71 0.16 293.40)",
|
||||
"chart-3": "oklch(0.61 0.22 292.63)",
|
||||
"chart-4": "oklch(0.54 0.25 293.03)",
|
||||
"chart-5": "oklch(0.49 0.24 292.70)",
|
||||
"sidebar": "oklch(0.34 0.04 309.13)",
|
||||
"sidebar-foreground": "oklch(0.93 0.03 273.66)",
|
||||
"sidebar-primary": "oklch(0.79 0.12 295.97)",
|
||||
"sidebar-primary-foreground": "oklch(0.22 0.01 52.96)",
|
||||
"sidebar-accent": "oklch(0.39 0.05 304.68)",
|
||||
"sidebar-accent-foreground": "oklch(0.87 0.01 261.81)",
|
||||
"sidebar-border": "oklch(0.34 0.04 309.13)",
|
||||
"sidebar-ring": "oklch(0.79 0.12 295.97)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/perplexity.json
Normal file
133
public/r/themes/perplexity.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "perplexity",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Inter, sans-serif",
|
||||
"font-mono": "Roboto Mono, monospace",
|
||||
"font-serif": "Lora, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.95 0.01 196.81)",
|
||||
"foreground": "oklch(0.38 0.06 211.49)",
|
||||
"card": "oklch(0.97 0.01 196.81)",
|
||||
"card-foreground": "oklch(0.38 0.06 211.49)",
|
||||
"popover": "oklch(0.97 0.01 196.81)",
|
||||
"popover-foreground": "oklch(0.38 0.06 211.49)",
|
||||
"primary": "oklch(0.72 0.12 210.36)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.97 0.01 247.91)",
|
||||
"secondary-foreground": "oklch(0.14 0 0)",
|
||||
"muted": "oklch(0.97 0.01 247.91)",
|
||||
"muted-foreground": "oklch(0.55 0.04 256.40)",
|
||||
"accent": "oklch(0.96 0.02 204.34)",
|
||||
"accent-foreground": "oklch(0.57 0.10 213.73)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.93 0.01 256.71)",
|
||||
"input": "oklch(0.93 0.01 256.71)",
|
||||
"ring": "oklch(0.72 0.12 210.36)",
|
||||
"chart-1": "oklch(0.72 0.12 210.36)",
|
||||
"chart-2": "oklch(0.57 0.10 213.73)",
|
||||
"chart-3": "oklch(0.79 0.12 209.45)",
|
||||
"chart-4": "oklch(0.76 0.11 208.70)",
|
||||
"chart-5": "oklch(0.83 0.10 208.33)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.98 0 0)",
|
||||
"sidebar-foreground": "oklch(0.14 0 0)",
|
||||
"sidebar-primary": "oklch(0.72 0.12 210.36)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.96 0.02 204.34)",
|
||||
"sidebar-accent-foreground": "oklch(0.57 0.10 213.73)",
|
||||
"sidebar-border": "oklch(0.93 0.01 256.71)",
|
||||
"sidebar-ring": "oklch(0.72 0.12 210.36)",
|
||||
"font-sans": "Inter, sans-serif",
|
||||
"font-serif": "Lora, serif",
|
||||
"font-mono": "Roboto Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.21 0.02 226.02)",
|
||||
"foreground": "oklch(0.85 0.13 194.97)",
|
||||
"card": "oklch(0.23 0.03 218.18)",
|
||||
"card-foreground": "oklch(0.85 0.13 194.97)",
|
||||
"popover": "oklch(0.23 0.03 218.18)",
|
||||
"popover-foreground": "oklch(0.85 0.13 194.97)",
|
||||
"primary": "oklch(0.72 0.12 210.36)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.27 0.01 285.81)",
|
||||
"secondary-foreground": "oklch(0.97 0 0)",
|
||||
"muted": "oklch(0.24 0 0)",
|
||||
"muted-foreground": "oklch(0.71 0.01 286.23)",
|
||||
"accent": "oklch(0.24 0 0)",
|
||||
"accent-foreground": "oklch(0.97 0 0)",
|
||||
"destructive": "oklch(0.64 0.21 25.39)",
|
||||
"border": "oklch(0.29 0 0)",
|
||||
"input": "oklch(0.29 0 0)",
|
||||
"ring": "oklch(0.72 0.12 210.36)",
|
||||
"chart-1": "oklch(0.72 0.12 210.36)",
|
||||
"chart-2": "oklch(0.79 0.12 209.45)",
|
||||
"chart-3": "oklch(0.76 0.11 208.70)",
|
||||
"chart-4": "oklch(0.83 0.10 208.33)",
|
||||
"chart-5": "oklch(0.57 0.10 213.73)",
|
||||
"sidebar": "oklch(0.19 0 0)",
|
||||
"sidebar-foreground": "oklch(0.97 0 0)",
|
||||
"sidebar-primary": "oklch(0.72 0.12 210.36)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.24 0 0)",
|
||||
"sidebar-accent-foreground": "oklch(0.97 0 0)",
|
||||
"sidebar-border": "oklch(0.29 0 0)",
|
||||
"sidebar-ring": "oklch(0.72 0.12 210.36)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
90
public/r/themes/retro-arcade.json
Normal file
90
public/r/themes/retro-arcade.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "retro-arcade",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.25rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.97 0.03 90.07)",
|
||||
"foreground": "oklch(0.31 0.05 219.64)",
|
||||
"card": "oklch(0.93 0.03 92.37)",
|
||||
"card-foreground": "oklch(0.31 0.05 219.64)",
|
||||
"popover": "oklch(0.93 0.03 92.37)",
|
||||
"popover-foreground": "oklch(0.31 0.05 219.64)",
|
||||
"primary": "oklch(0.59 0.20 355.90)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.64 0.10 187.37)",
|
||||
"secondary-foreground": "oklch(1.00 0 0)",
|
||||
"muted": "oklch(0.70 0.02 196.71)",
|
||||
"muted-foreground": "oklch(0.31 0.05 219.64)",
|
||||
"accent": "oklch(0.58 0.17 39.50)",
|
||||
"accent-foreground": "oklch(1.00 0 0)",
|
||||
"destructive": "oklch(0.59 0.21 27.12)",
|
||||
"border": "oklch(0.65 0.02 205.20)",
|
||||
"input": "oklch(0.65 0.02 205.20)",
|
||||
"ring": "oklch(0.59 0.20 355.90)",
|
||||
"chart-1": "oklch(0.61 0.14 244.92)",
|
||||
"chart-2": "oklch(0.64 0.10 187.37)",
|
||||
"chart-3": "oklch(0.59 0.20 355.90)",
|
||||
"chart-4": "oklch(0.58 0.17 39.50)",
|
||||
"chart-5": "oklch(0.59 0.21 27.12)",
|
||||
"radius": "0.25rem",
|
||||
"sidebar": "oklch(0.97 0.03 90.07)",
|
||||
"sidebar-foreground": "oklch(0.31 0.05 219.64)",
|
||||
"sidebar-primary": "oklch(0.59 0.20 355.90)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.64 0.10 187.37)",
|
||||
"sidebar-accent-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-border": "oklch(0.65 0.02 205.20)",
|
||||
"sidebar-ring": "oklch(0.59 0.20 355.90)",
|
||||
"font-sans": "Outfit, sans-serif",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "Space Mono, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.27 0.05 219.80)",
|
||||
"foreground": "oklch(0.70 0.02 196.71)",
|
||||
"card": "oklch(0.31 0.05 219.64)",
|
||||
"card-foreground": "oklch(0.70 0.02 196.71)",
|
||||
"popover": "oklch(0.31 0.05 219.64)",
|
||||
"popover-foreground": "oklch(0.70 0.02 196.71)",
|
||||
"primary": "oklch(0.59 0.20 355.90)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.64 0.10 187.37)",
|
||||
"secondary-foreground": "oklch(1.00 0 0)",
|
||||
"muted": "oklch(0.52 0.03 219.11)",
|
||||
"muted-foreground": "oklch(0.70 0.02 196.71)",
|
||||
"accent": "oklch(0.58 0.17 39.50)",
|
||||
"accent-foreground": "oklch(1.00 0 0)",
|
||||
"destructive": "oklch(0.59 0.21 27.12)",
|
||||
"border": "oklch(0.52 0.03 219.11)",
|
||||
"input": "oklch(0.52 0.03 219.11)",
|
||||
"ring": "oklch(0.59 0.20 355.90)",
|
||||
"chart-1": "oklch(0.61 0.14 244.92)",
|
||||
"chart-2": "oklch(0.64 0.10 187.37)",
|
||||
"chart-3": "oklch(0.59 0.20 355.90)",
|
||||
"chart-4": "oklch(0.58 0.17 39.50)",
|
||||
"chart-5": "oklch(0.59 0.21 27.12)",
|
||||
"sidebar": "oklch(0.27 0.05 219.80)",
|
||||
"sidebar-foreground": "oklch(0.70 0.02 196.71)",
|
||||
"sidebar-primary": "oklch(0.59 0.20 355.90)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.64 0.10 187.37)",
|
||||
"sidebar-accent-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-border": "oklch(0.52 0.03 219.11)",
|
||||
"sidebar-ring": "oklch(0.59 0.20 355.90)",
|
||||
"radius": "0.25rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
133
public/r/themes/slack.json
Normal file
133
public/r/themes/slack.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "slack",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Lato, sans-serif",
|
||||
"font-mono": "Roboto Mono, monospace",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"radius": "0.5rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(1.00 0 0)",
|
||||
"foreground": "oklch(0.23 0 0)",
|
||||
"card": "oklch(0.98 0 0)",
|
||||
"card-foreground": "oklch(0.23 0 0)",
|
||||
"popover": "oklch(0.98 0 0)",
|
||||
"popover-foreground": "oklch(0.23 0 0)",
|
||||
"primary": "oklch(0.37 0.14 323.40)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.96 0.01 311.36)",
|
||||
"secondary-foreground": "oklch(0.31 0.11 327.10)",
|
||||
"muted": "oklch(0.97 0 0)",
|
||||
"muted-foreground": "oklch(0.49 0 0)",
|
||||
"accent": "oklch(0.88 0.02 323.34)",
|
||||
"accent-foreground": "oklch(0.31 0.11 327.10)",
|
||||
"destructive": "oklch(0.59 0.22 11.39)",
|
||||
"border": "oklch(0.91 0 0)",
|
||||
"input": "oklch(0.91 0 0)",
|
||||
"ring": "oklch(0.37 0.14 323.40)",
|
||||
"chart-1": "oklch(0.31 0.11 327.10)",
|
||||
"chart-2": "oklch(0.37 0.14 323.40)",
|
||||
"chart-3": "oklch(0.59 0.22 11.39)",
|
||||
"chart-4": "oklch(0.77 0.13 222.66)",
|
||||
"chart-5": "oklch(0.69 0.14 160.27)",
|
||||
"radius": "0.5rem",
|
||||
"sidebar": "oklch(0.96 0.01 311.36)",
|
||||
"sidebar-foreground": "oklch(0.23 0 0)",
|
||||
"sidebar-primary": "oklch(0.37 0.14 323.40)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.88 0.02 323.34)",
|
||||
"sidebar-accent-foreground": "oklch(0.31 0.11 327.10)",
|
||||
"sidebar-border": "oklch(0.91 0 0)",
|
||||
"sidebar-ring": "oklch(0.37 0.14 323.40)",
|
||||
"font-sans": "Lato, sans-serif",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"font-mono": "Roboto Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.23 0.01 260.69)",
|
||||
"foreground": "oklch(0.93 0 0)",
|
||||
"card": "oklch(0.26 0.01 260.70)",
|
||||
"card-foreground": "oklch(0.93 0 0)",
|
||||
"popover": "oklch(0.26 0.01 260.70)",
|
||||
"popover-foreground": "oklch(0.93 0 0)",
|
||||
"primary": "oklch(0.58 0.14 327.21)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.30 0.01 254.00)",
|
||||
"secondary-foreground": "oklch(0.93 0 0)",
|
||||
"muted": "oklch(0.26 0.01 260.70)",
|
||||
"muted-foreground": "oklch(0.68 0 0)",
|
||||
"accent": "oklch(0.33 0.03 326.28)",
|
||||
"accent-foreground": "oklch(0.93 0 0)",
|
||||
"destructive": "oklch(0.59 0.22 11.39)",
|
||||
"border": "oklch(0.30 0.01 268.37)",
|
||||
"input": "oklch(0.30 0.01 268.37)",
|
||||
"ring": "oklch(0.58 0.14 327.21)",
|
||||
"chart-1": "oklch(0.58 0.14 327.21)",
|
||||
"chart-2": "oklch(0.77 0.13 222.66)",
|
||||
"chart-3": "oklch(0.69 0.14 160.27)",
|
||||
"chart-4": "oklch(0.59 0.22 11.39)",
|
||||
"chart-5": "oklch(0.80 0.15 82.32)",
|
||||
"sidebar": "oklch(0.23 0.01 260.69)",
|
||||
"sidebar-foreground": "oklch(0.93 0 0)",
|
||||
"sidebar-primary": "oklch(0.58 0.14 327.21)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.33 0.03 326.28)",
|
||||
"sidebar-accent-foreground": "oklch(0.93 0 0)",
|
||||
"sidebar-border": "oklch(0.30 0.01 268.37)",
|
||||
"sidebar-ring": "oklch(0.58 0.14 327.21)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/sunset-horizon.json
Normal file
133
public/r/themes/sunset-horizon.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "sunset-horizon",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Montserrat, sans-serif",
|
||||
"font-mono": "Ubuntu Mono, monospace",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"radius": "0.625rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.99 0.01 67.74)",
|
||||
"foreground": "oklch(0.34 0.01 7.89)",
|
||||
"card": "oklch(1.00 0 0)",
|
||||
"card-foreground": "oklch(0.34 0.01 7.89)",
|
||||
"popover": "oklch(1.00 0 0)",
|
||||
"popover-foreground": "oklch(0.34 0.01 7.89)",
|
||||
"primary": "oklch(0.74 0.16 34.57)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.96 0.02 28.97)",
|
||||
"secondary-foreground": "oklch(0.56 0.13 32.65)",
|
||||
"muted": "oklch(0.97 0.02 44.86)",
|
||||
"muted-foreground": "oklch(0.49 0.05 27.86)",
|
||||
"accent": "oklch(0.83 0.11 57.89)",
|
||||
"accent-foreground": "oklch(0.34 0.01 7.89)",
|
||||
"destructive": "oklch(0.61 0.21 22.21)",
|
||||
"border": "oklch(0.93 0.04 40.57)",
|
||||
"input": "oklch(0.93 0.04 40.57)",
|
||||
"ring": "oklch(0.74 0.16 34.57)",
|
||||
"chart-1": "oklch(0.74 0.16 34.57)",
|
||||
"chart-2": "oklch(0.83 0.11 57.89)",
|
||||
"chart-3": "oklch(0.88 0.08 56.41)",
|
||||
"chart-4": "oklch(0.82 0.11 41.27)",
|
||||
"chart-5": "oklch(0.64 0.13 32.06)",
|
||||
"radius": "0.625rem",
|
||||
"sidebar": "oklch(0.97 0.02 44.86)",
|
||||
"sidebar-foreground": "oklch(0.34 0.01 7.89)",
|
||||
"sidebar-primary": "oklch(0.74 0.16 34.57)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.83 0.11 57.89)",
|
||||
"sidebar-accent-foreground": "oklch(0.34 0.01 7.89)",
|
||||
"sidebar-border": "oklch(0.93 0.04 40.57)",
|
||||
"sidebar-ring": "oklch(0.74 0.16 34.57)",
|
||||
"font-sans": "Montserrat, sans-serif",
|
||||
"font-serif": "Merriweather, serif",
|
||||
"font-mono": "Ubuntu Mono, monospace",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.09",
|
||||
"shadow-blur": "12px",
|
||||
"shadow-spread": "-3px",
|
||||
"shadow-offset-x": "0px",
|
||||
"shadow-offset-y": "6px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0px 6px 12px -3px oklch(0.00 0 0 / 0.04)",
|
||||
"shadow-xs": "0px 6px 12px -3px oklch(0.00 0 0 / 0.04)",
|
||||
"shadow-sm": "0px 6px 12px -3px oklch(0.00 0 0 / 0.09), 0px 1px 2px -4px oklch(0.00 0 0 / 0.09)",
|
||||
"shadow": "0px 6px 12px -3px oklch(0.00 0 0 / 0.09), 0px 1px 2px -4px oklch(0.00 0 0 / 0.09)",
|
||||
"shadow-md": "0px 6px 12px -3px oklch(0.00 0 0 / 0.09), 0px 2px 4px -4px oklch(0.00 0 0 / 0.09)",
|
||||
"shadow-lg": "0px 6px 12px -3px oklch(0.00 0 0 / 0.09), 0px 4px 6px -4px oklch(0.00 0 0 / 0.09)",
|
||||
"shadow-xl": "0px 6px 12px -3px oklch(0.00 0 0 / 0.09), 0px 8px 10px -4px oklch(0.00 0 0 / 0.09)",
|
||||
"shadow-2xl": "0px 6px 12px -3px oklch(0.00 0 0 / 0.22)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.26 0.02 351.79)",
|
||||
"foreground": "oklch(0.94 0.01 48.70)",
|
||||
"card": "oklch(0.32 0.02 339.89)",
|
||||
"card-foreground": "oklch(0.94 0.01 48.70)",
|
||||
"popover": "oklch(0.32 0.02 339.89)",
|
||||
"popover-foreground": "oklch(0.94 0.01 48.70)",
|
||||
"primary": "oklch(0.74 0.16 34.57)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.36 0.02 342.33)",
|
||||
"secondary-foreground": "oklch(0.94 0.01 48.70)",
|
||||
"muted": "oklch(0.32 0.02 339.89)",
|
||||
"muted-foreground": "oklch(0.84 0.02 50.14)",
|
||||
"accent": "oklch(0.83 0.11 57.89)",
|
||||
"accent-foreground": "oklch(0.26 0.02 351.79)",
|
||||
"destructive": "oklch(0.61 0.21 22.21)",
|
||||
"border": "oklch(0.36 0.02 342.33)",
|
||||
"input": "oklch(0.36 0.02 342.33)",
|
||||
"ring": "oklch(0.74 0.16 34.57)",
|
||||
"chart-1": "oklch(0.74 0.16 34.57)",
|
||||
"chart-2": "oklch(0.83 0.11 57.89)",
|
||||
"chart-3": "oklch(0.88 0.08 56.41)",
|
||||
"chart-4": "oklch(0.82 0.11 41.27)",
|
||||
"chart-5": "oklch(0.64 0.13 32.06)",
|
||||
"sidebar": "oklch(0.26 0.02 351.79)",
|
||||
"sidebar-foreground": "oklch(0.94 0.01 48.70)",
|
||||
"sidebar-primary": "oklch(0.74 0.16 34.57)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.83 0.11 57.89)",
|
||||
"sidebar-accent-foreground": "oklch(0.26 0.02 351.79)",
|
||||
"sidebar-border": "oklch(0.36 0.02 342.33)",
|
||||
"sidebar-ring": "oklch(0.74 0.16 34.57)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
133
public/r/themes/valorant.json
Normal file
133
public/r/themes/valorant.json
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "valorant",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"css": {
|
||||
"@layer base": {
|
||||
"body": {
|
||||
"letter-spacing": "var(--tracking-normal)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "Barlow",
|
||||
"font-mono": "JetBrains Mono",
|
||||
"font-serif": "Merriweather",
|
||||
"radius": "0rem",
|
||||
"tracking-tighter": "calc(var(--tracking-normal) - 0.05em)",
|
||||
"tracking-tight": "calc(var(--tracking-normal) - 0.025em)",
|
||||
"tracking-wide": "calc(var(--tracking-normal) + 0.025em)",
|
||||
"tracking-wider": "calc(var(--tracking-normal) + 0.05em)",
|
||||
"tracking-widest": "calc(var(--tracking-normal) + 0.1em)"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.97 0.02 12.89)",
|
||||
"foreground": "oklch(0.24 0.07 17.95)",
|
||||
"card": "oklch(0.98 0.01 17.50)",
|
||||
"card-foreground": "oklch(0.26 0.07 19.47)",
|
||||
"popover": "oklch(0.98 0.01 17.50)",
|
||||
"popover-foreground": "oklch(0.26 0.07 19.47)",
|
||||
"primary": "oklch(0.67 0.22 21.22)",
|
||||
"primary-foreground": "oklch(0.99 0 0)",
|
||||
"secondary": "oklch(0.95 0.02 10.30)",
|
||||
"secondary-foreground": "oklch(0.24 0.07 17.95)",
|
||||
"muted": "oklch(0.98 0.01 17.50)",
|
||||
"muted-foreground": "oklch(0.26 0.07 19.47)",
|
||||
"accent": "oklch(0.99 0 0)",
|
||||
"accent-foreground": "oklch(0.43 0.13 20.48)",
|
||||
"destructive": "oklch(0.80 0.17 73.59)",
|
||||
"border": "oklch(0.91 0.05 10.24)",
|
||||
"input": "oklch(0.90 0.05 11.99)",
|
||||
"ring": "oklch(0.92 0.04 12.26)",
|
||||
"chart-1": "oklch(0.86 0.18 88.48)",
|
||||
"chart-2": "oklch(0.62 0.21 255.62)",
|
||||
"chart-3": "oklch(0.54 0.29 297.65)",
|
||||
"chart-4": "oklch(0.95 0.10 98.75)",
|
||||
"chart-5": "oklch(0.87 0.12 100.10)",
|
||||
"radius": "0rem",
|
||||
"sidebar": "oklch(0.97 0.02 12.89)",
|
||||
"sidebar-foreground": "oklch(0.26 0.07 19.47)",
|
||||
"sidebar-primary": "oklch(0.67 0.22 21.22)",
|
||||
"sidebar-primary-foreground": "oklch(0.98 0.01 17.50)",
|
||||
"sidebar-accent": "oklch(0.98 0.01 17.50)",
|
||||
"sidebar-accent-foreground": "oklch(0.43 0.13 20.48)",
|
||||
"sidebar-border": "oklch(0.91 0.05 10.24)",
|
||||
"sidebar-ring": "oklch(0.92 0.04 12.26)",
|
||||
"font-sans": "Barlow",
|
||||
"font-serif": "Merriweather",
|
||||
"font-mono": "JetBrains Mono",
|
||||
"shadow-color": "oklch(0.3 0.0891 19.6)",
|
||||
"shadow-opacity": "0.08",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0px",
|
||||
"shadow-offset-y": "0px",
|
||||
"spacing": "0.25rem",
|
||||
"shadow-2xs": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.04)",
|
||||
"shadow-xs": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.04)",
|
||||
"shadow-sm": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.08), 0px 1px 2px -1px oklch(0.30 0.09 19.60 / 0.08)",
|
||||
"shadow": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.08), 0px 1px 2px -1px oklch(0.30 0.09 19.60 / 0.08)",
|
||||
"shadow-md": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.08), 0px 2px 4px -1px oklch(0.30 0.09 19.60 / 0.08)",
|
||||
"shadow-lg": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.08), 0px 4px 6px -1px oklch(0.30 0.09 19.60 / 0.08)",
|
||||
"shadow-xl": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.08), 0px 8px 10px -1px oklch(0.30 0.09 19.60 / 0.08)",
|
||||
"shadow-2xl": "0px 0px 3px 0px oklch(0.30 0.09 19.60 / 0.20)",
|
||||
"tracking-normal": "0em"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.16 0.03 16.52)",
|
||||
"foreground": "oklch(0.99 0 0)",
|
||||
"card": "oklch(0.21 0.05 18.42)",
|
||||
"card-foreground": "oklch(0.98 0 0)",
|
||||
"popover": "oklch(0.26 0.07 19.47)",
|
||||
"popover-foreground": "oklch(0.99 0 0)",
|
||||
"primary": "oklch(0.67 0.22 21.22)",
|
||||
"primary-foreground": "oklch(0.99 0 0)",
|
||||
"secondary": "oklch(0.30 0.09 19.60)",
|
||||
"secondary-foreground": "oklch(0.95 0.02 10.30)",
|
||||
"muted": "oklch(0.26 0.07 19.47)",
|
||||
"muted-foreground": "oklch(0.99 0 0)",
|
||||
"accent": "oklch(0.43 0.13 20.48)",
|
||||
"accent-foreground": "oklch(0.99 0 0)",
|
||||
"destructive": "oklch(0.80 0.17 73.59)",
|
||||
"border": "oklch(0.31 0.09 19.47)",
|
||||
"input": "oklch(0.39 0.12 20.38)",
|
||||
"ring": "oklch(0.50 0.16 20.99)",
|
||||
"chart-1": "oklch(0.86 0.18 88.48)",
|
||||
"chart-2": "oklch(0.62 0.21 255.62)",
|
||||
"chart-3": "oklch(0.54 0.29 297.65)",
|
||||
"chart-4": "oklch(0.95 0.10 98.75)",
|
||||
"chart-5": "oklch(0.87 0.12 100.10)",
|
||||
"sidebar": "oklch(0.26 0.07 19.47)",
|
||||
"sidebar-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-primary": "oklch(0.67 0.22 21.22)",
|
||||
"sidebar-primary-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-accent": "oklch(0.43 0.13 20.48)",
|
||||
"sidebar-accent-foreground": "oklch(0.99 0 0)",
|
||||
"sidebar-border": "oklch(0.39 0.12 20.38)",
|
||||
"sidebar-ring": "oklch(0.50 0.16 20.99)",
|
||||
"shadow-color": "hsl(0 0% 0%)",
|
||||
"shadow-opacity": "0.1",
|
||||
"shadow-blur": "3px",
|
||||
"shadow-spread": "0px",
|
||||
"shadow-offset-x": "0",
|
||||
"shadow-offset-y": "1px",
|
||||
"letter-spacing": "0em",
|
||||
"spacing": "0.25rem",
|
||||
"radius": "0.625rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"shadow-2xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-xs": "0 1px 3px 0px oklch(0.00 0 0 / 0.05)",
|
||||
"shadow-sm": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 1px 2px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-md": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 2px 4px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-lg": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 4px 6px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.10), 0 8px 10px -1px oklch(0.00 0 0 / 0.10)",
|
||||
"shadow-2xl": "0 1px 3px 0px oklch(0.00 0 0 / 0.25)"
|
||||
}
|
||||
}
|
||||
}
|
||||
90
public/r/themes/vintage-paper.json
Normal file
90
public/r/themes/vintage-paper.json
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
||||
"name": "vintage-paper",
|
||||
"type": "registry:style",
|
||||
"dependencies": [],
|
||||
"registryDependencies": [],
|
||||
"cssVars": {
|
||||
"theme": {
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"radius": "0.25rem"
|
||||
},
|
||||
"light": {
|
||||
"background": "oklch(0.96 0.02 90.19)",
|
||||
"foreground": "oklch(0.38 0.02 64.34)",
|
||||
"card": "oklch(0.99 0.01 87.41)",
|
||||
"card-foreground": "oklch(0.38 0.02 64.34)",
|
||||
"popover": "oklch(0.99 0.01 87.41)",
|
||||
"popover-foreground": "oklch(0.38 0.02 64.34)",
|
||||
"primary": "oklch(0.62 0.08 65.54)",
|
||||
"primary-foreground": "oklch(1.00 0 0)",
|
||||
"secondary": "oklch(0.88 0.03 85.55)",
|
||||
"secondary-foreground": "oklch(0.43 0.03 64.93)",
|
||||
"muted": "oklch(0.92 0.02 83.04)",
|
||||
"muted-foreground": "oklch(0.54 0.04 71.16)",
|
||||
"accent": "oklch(0.83 0.04 88.79)",
|
||||
"accent-foreground": "oklch(0.38 0.02 64.34)",
|
||||
"destructive": "oklch(0.55 0.14 32.92)",
|
||||
"border": "oklch(0.86 0.03 84.57)",
|
||||
"input": "oklch(0.86 0.03 84.57)",
|
||||
"ring": "oklch(0.62 0.08 65.54)",
|
||||
"chart-1": "oklch(0.62 0.08 65.54)",
|
||||
"chart-2": "oklch(0.56 0.06 68.58)",
|
||||
"chart-3": "oklch(0.49 0.06 72.68)",
|
||||
"chart-4": "oklch(0.68 0.06 64.77)",
|
||||
"chart-5": "oklch(0.73 0.06 66.69)",
|
||||
"radius": "0.25rem",
|
||||
"sidebar": "oklch(0.92 0.02 83.04)",
|
||||
"sidebar-foreground": "oklch(0.38 0.02 64.34)",
|
||||
"sidebar-primary": "oklch(0.62 0.08 65.54)",
|
||||
"sidebar-primary-foreground": "oklch(1.00 0 0)",
|
||||
"sidebar-accent": "oklch(0.83 0.04 88.79)",
|
||||
"sidebar-accent-foreground": "oklch(0.38 0.02 64.34)",
|
||||
"sidebar-border": "oklch(0.86 0.03 84.57)",
|
||||
"sidebar-ring": "oklch(0.62 0.08 65.54)",
|
||||
"font-sans": "Libre Baskerville, serif",
|
||||
"font-serif": "Lora, serif",
|
||||
"font-mono": "IBM Plex Mono, monospace"
|
||||
},
|
||||
"dark": {
|
||||
"background": "oklch(0.27 0.01 57.66)",
|
||||
"foreground": "oklch(0.92 0.02 83.04)",
|
||||
"card": "oklch(0.32 0.02 59.07)",
|
||||
"card-foreground": "oklch(0.92 0.02 83.04)",
|
||||
"popover": "oklch(0.32 0.02 59.07)",
|
||||
"popover-foreground": "oklch(0.92 0.02 83.04)",
|
||||
"primary": "oklch(0.73 0.06 66.69)",
|
||||
"primary-foreground": "oklch(0.27 0.01 57.66)",
|
||||
"secondary": "oklch(0.38 0.02 57.13)",
|
||||
"secondary-foreground": "oklch(0.92 0.02 83.04)",
|
||||
"muted": "oklch(0.32 0.02 59.07)",
|
||||
"muted-foreground": "oklch(0.80 0.02 82.09)",
|
||||
"accent": "oklch(0.42 0.03 56.34)",
|
||||
"accent-foreground": "oklch(0.92 0.02 83.04)",
|
||||
"destructive": "oklch(0.55 0.14 32.92)",
|
||||
"border": "oklch(0.38 0.02 57.13)",
|
||||
"input": "oklch(0.38 0.02 57.13)",
|
||||
"ring": "oklch(0.73 0.06 66.69)",
|
||||
"chart-1": "oklch(0.73 0.06 66.69)",
|
||||
"chart-2": "oklch(0.68 0.06 64.77)",
|
||||
"chart-3": "oklch(0.62 0.08 65.54)",
|
||||
"chart-4": "oklch(0.56 0.06 68.58)",
|
||||
"chart-5": "oklch(0.49 0.06 72.68)",
|
||||
"sidebar": "oklch(0.27 0.01 57.66)",
|
||||
"sidebar-foreground": "oklch(0.92 0.02 83.04)",
|
||||
"sidebar-primary": "oklch(0.73 0.06 66.69)",
|
||||
"sidebar-primary-foreground": "oklch(0.27 0.01 57.66)",
|
||||
"sidebar-accent": "oklch(0.42 0.03 56.34)",
|
||||
"sidebar-accent-foreground": "oklch(0.92 0.02 83.04)",
|
||||
"sidebar-border": "oklch(0.38 0.02 57.13)",
|
||||
"sidebar-ring": "oklch(0.73 0.06 66.69)",
|
||||
"radius": "0.25rem",
|
||||
"font-sans": "'Geist', 'Geist Fallback', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'",
|
||||
"font-serif": "\"Geist\", \"Geist Fallback\", ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif",
|
||||
"font-mono": "\"Geist Mono\", \"Geist Mono Fallback\", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"
|
||||
}
|
||||
},
|
||||
"css": {}
|
||||
}
|
||||
813
registry.json
Normal file
813
registry.json
Normal file
|
|
@ -0,0 +1,813 @@
|
|||
{
|
||||
"$schema": "https://ui.shadcn.com/schema/registry.json",
|
||||
"name": "acme",
|
||||
"homepage": "https://shadcn-studio-internal.vercel.app",
|
||||
"items": [
|
||||
{
|
||||
"name": "avatar-01",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-01.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-01.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-02",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-02.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-02.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-03",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-03.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-03.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-04",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-04.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-04.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-05",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-05.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-05.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-06",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-06.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-06.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-07",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-07.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-07.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-08",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-08.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-08.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-09",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-09.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-09.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-10",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-10.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-10.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-11",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-11.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-11.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-12",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-12.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-12.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-13",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-13.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-13.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-14",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-14.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-14.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-15",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-15.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-15.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-16",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"tooltip"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-16.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-16.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-17",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-17.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-17.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-18",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"tooltip"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-18.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-18.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-19",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"dropdown-menu"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-19.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-19.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-20",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-20.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-20.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "avatar-21",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/avatar/avatar-21.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/avatar/avatar-21.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-01",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-01.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-01.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-02",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-02.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-02.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-03",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-03.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-03.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-04",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-04.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-04.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-05",
|
||||
"type": "registry:component",
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-05.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-05.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-06",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-06.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-06.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-07",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-07.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-07.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-08",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-08.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-08.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-09",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-09.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-09.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-10",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-10.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-10.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-11",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-11.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-11.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-12",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-12.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-12.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-13",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge",
|
||||
"checkbox"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-13.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-13.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-14",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-14.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-14.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-15",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-15.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-15.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-16",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-16.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-16.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-17",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-17.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-17.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-18",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-18.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-18.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-19",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-19.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-19.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-20",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-20.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-20.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-21",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-21.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-21.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-22",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-22.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-22.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-23",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"avatar",
|
||||
"badge"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-23.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-23.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "badge-24",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"avatar"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/badge/badge-24.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/badge/badge-24.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-01",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-01.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-01.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-02",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-02.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-02.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-03",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-03.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-03.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-04",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-04.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-04.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-05",
|
||||
"type": "registry:component",
|
||||
"registryDependencies": [
|
||||
"badge",
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-05.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-05.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-06",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"badge",
|
||||
"breadcrumb",
|
||||
"dropdown-menu"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-06.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-06.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-07",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb",
|
||||
"dropdown-menu"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-07.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-07.tsx"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "breadcrumb-08",
|
||||
"type": "registry:component",
|
||||
"dependencies": [
|
||||
"lucide-react"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"breadcrumb"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"path": "src/registry/new-york/components/breadcrumb/breadcrumb-08.tsx",
|
||||
"type": "registry:component",
|
||||
"target": "components/shadcn-studio/breadcrumb/breadcrumb-08.tsx"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
160
scripts/generate-theme-registry.ts
Normal file
160
scripts/generate-theme-registry.ts
Normal file
|
|
@ -0,0 +1,160 @@
|
|||
import fs from 'fs'
|
||||
import path from 'path'
|
||||
|
||||
// Type Imports
|
||||
import type { ThemeStyles, ThemeStyleProps } from '@/types/theme'
|
||||
import type { ColorFormat } from '@/utils/color-converter'
|
||||
|
||||
// Utils
|
||||
import { colorFormatter } from '@/utils/color-converter'
|
||||
import { getPresetThemeStyles, presets } from '@/utils/theme-presets'
|
||||
import { defaultDarkThemeStyles, defaultLightThemeStyles } from '@/config/theme'
|
||||
import { getShadowMap } from '@/utils/shadows'
|
||||
|
||||
const THEMES_DIR = path.join(process.cwd(), 'public', 'r', 'themes')
|
||||
|
||||
// Ensure the themes directory exists
|
||||
if (!fs.existsSync(THEMES_DIR)) {
|
||||
fs.mkdirSync(THEMES_DIR, { recursive: true })
|
||||
}
|
||||
|
||||
// Convert HSL color to the format expected by shadcn registry
|
||||
const convertToRegistryColor = (color: string): string => {
|
||||
return colorFormatter(color, 'oklch')
|
||||
}
|
||||
|
||||
// Helper to get a value from either dark or light theme
|
||||
const getThemeValue = (dark: ThemeStyleProps, light: ThemeStyleProps, key: keyof ThemeStyleProps): string => {
|
||||
return light[key] || dark[key] || ''
|
||||
}
|
||||
|
||||
// Convert theme styles to registry format
|
||||
const convertThemeStyles = (styles: ThemeStyles) => {
|
||||
const { light, dark, css } = styles
|
||||
|
||||
const convertTheme = (theme: ThemeStyleProps | Partial<ThemeStyleProps>): ThemeStyleProps => {
|
||||
const result: ThemeStyleProps = {
|
||||
...defaultLightThemeStyles,
|
||||
...theme
|
||||
}
|
||||
|
||||
const convertColor = (color?: string) => convertToRegistryColor(color || '')
|
||||
|
||||
// Convert all color values
|
||||
result.background = convertColor(theme.background)
|
||||
result.foreground = convertColor(theme.foreground)
|
||||
result.card = convertColor(theme.card)
|
||||
result['card-foreground'] = convertColor(theme['card-foreground'])
|
||||
result.popover = convertColor(theme.popover)
|
||||
result['popover-foreground'] = convertColor(theme['popover-foreground'])
|
||||
result.primary = convertColor(theme.primary)
|
||||
result['primary-foreground'] = convertColor(theme['primary-foreground'])
|
||||
result.secondary = convertColor(theme.secondary)
|
||||
result['secondary-foreground'] = convertColor(theme['secondary-foreground'])
|
||||
result.muted = convertColor(theme.muted)
|
||||
result['muted-foreground'] = convertColor(theme['muted-foreground'])
|
||||
result.accent = convertColor(theme.accent)
|
||||
result['accent-foreground'] = convertColor(theme['accent-foreground'])
|
||||
result.destructive = convertColor(theme.destructive)
|
||||
result.border = convertColor(theme.border)
|
||||
result.input = convertColor(theme.input)
|
||||
result.ring = convertColor(theme.ring)
|
||||
result['chart-1'] = convertColor(theme['chart-1'])
|
||||
result['chart-2'] = convertColor(theme['chart-2'])
|
||||
result['chart-3'] = convertColor(theme['chart-3'])
|
||||
result['chart-4'] = convertColor(theme['chart-4'])
|
||||
result['chart-5'] = convertColor(theme['chart-5'])
|
||||
result.sidebar = convertColor(theme.sidebar)
|
||||
result['sidebar-foreground'] = convertColor(theme['sidebar-foreground'])
|
||||
result['sidebar-primary'] = convertColor(theme['sidebar-primary'])
|
||||
result['sidebar-primary-foreground'] = convertColor(theme['sidebar-primary-foreground'])
|
||||
result['sidebar-accent'] = convertColor(theme['sidebar-accent'])
|
||||
result['sidebar-accent-foreground'] = convertColor(theme['sidebar-accent-foreground'])
|
||||
result['sidebar-border'] = convertColor(theme['sidebar-border'])
|
||||
result['sidebar-ring'] = convertColor(theme['sidebar-ring'])
|
||||
|
||||
return result
|
||||
}
|
||||
|
||||
return {
|
||||
light: { ...defaultLightThemeStyles, ...convertTheme(light) },
|
||||
dark: { ...defaultDarkThemeStyles, ...convertTheme(dark) },
|
||||
css: css
|
||||
}
|
||||
}
|
||||
|
||||
const generateThemeRegistry = (name: string, color: ColorFormat) => {
|
||||
const { light, dark, css } = convertThemeStyles(getPresetThemeStyles(name))
|
||||
|
||||
const lightShadows = getShadowMap(light, color)
|
||||
const darkShadows = getShadowMap(dark, color)
|
||||
|
||||
// Create a version of light without letter-spacing
|
||||
const lightWithoutLetterSpacing = { ...light }
|
||||
|
||||
delete lightWithoutLetterSpacing['letter-spacing']
|
||||
|
||||
const registryItem = {
|
||||
$schema: 'https://ui.shadcn.com/schema/registry-item.json',
|
||||
name,
|
||||
type: 'registry:style',
|
||||
dependencies: [],
|
||||
registryDependencies: [],
|
||||
css: {
|
||||
'@layer base': {
|
||||
body: {
|
||||
'letter-spacing': 'var(--tracking-normal)'
|
||||
}
|
||||
},
|
||||
...css
|
||||
},
|
||||
cssVars: {
|
||||
theme: {
|
||||
'font-sans': getThemeValue(dark, light, 'font-sans') || 'Inter, sans-serif',
|
||||
'font-mono': getThemeValue(dark, light, 'font-mono') || 'monospace',
|
||||
'font-serif': getThemeValue(dark, light, 'font-serif') || 'serif',
|
||||
radius: getThemeValue(dark, light, 'radius') || '0.5rem',
|
||||
'tracking-tighter': 'calc(var(--tracking-normal) - 0.05em)',
|
||||
'tracking-tight': 'calc(var(--tracking-normal) - 0.025em)',
|
||||
'tracking-wide': 'calc(var(--tracking-normal) + 0.025em)',
|
||||
'tracking-wider': 'calc(var(--tracking-normal) + 0.05em)',
|
||||
'tracking-widest': 'calc(var(--tracking-normal) + 0.1em)'
|
||||
},
|
||||
light: {
|
||||
...lightWithoutLetterSpacing,
|
||||
'shadow-2xs': lightShadows['shadow-2xs'],
|
||||
'shadow-xs': lightShadows['shadow-xs'],
|
||||
'shadow-sm': lightShadows['shadow-sm'],
|
||||
shadow: lightShadows['shadow'],
|
||||
'shadow-md': lightShadows['shadow-md'],
|
||||
'shadow-lg': lightShadows['shadow-lg'],
|
||||
'shadow-xl': lightShadows['shadow-xl'],
|
||||
'shadow-2xl': lightShadows['shadow-2xl'],
|
||||
'tracking-normal': getThemeValue(dark, light, 'letter-spacing') || '0em',
|
||||
spacing: getThemeValue(dark, light, 'spacing') || '0.25rem'
|
||||
},
|
||||
dark: {
|
||||
...dark,
|
||||
'shadow-2xs': darkShadows['shadow-2xs'],
|
||||
'shadow-xs': darkShadows['shadow-xs'],
|
||||
'shadow-sm': darkShadows['shadow-sm'],
|
||||
shadow: darkShadows['shadow'],
|
||||
'shadow-md': darkShadows['shadow-md'],
|
||||
'shadow-lg': darkShadows['shadow-lg'],
|
||||
'shadow-xl': darkShadows['shadow-xl'],
|
||||
'shadow-2xl': darkShadows['shadow-2xl']
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return registryItem
|
||||
}
|
||||
|
||||
// Generate registry files for all presets
|
||||
Object.keys(presets).forEach(name => {
|
||||
const registryItem = generateThemeRegistry(name, 'oklch')
|
||||
const filePath = path.join(THEMES_DIR, `${name}.json`)
|
||||
|
||||
fs.writeFileSync(filePath, JSON.stringify(registryItem, null, 2))
|
||||
console.log(`Generated registry file for theme: ${name}`)
|
||||
})
|
||||
81
src/app/(front)/components/page.tsx
Normal file
81
src/app/(front)/components/page.tsx
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
// Next Imports
|
||||
import Link from 'next/link'
|
||||
import type { Metadata } from 'next'
|
||||
|
||||
// Config Imports
|
||||
import { categories } from '@/config/components'
|
||||
|
||||
// SVG Imports
|
||||
import MoreComponents from '@/assets/svg/MoreComponents'
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'Shadcn Components',
|
||||
description:
|
||||
'An open-source collection of copy-and-paste Shadcn Components designed to accelerate your project development.',
|
||||
openGraph: {
|
||||
title: 'Shadcn Components',
|
||||
description:
|
||||
'An open-source collection of copy-and-paste Shadcn Components designed to accelerate your project development.',
|
||||
url: 'https://shadcnstudio.com/components',
|
||||
images: [
|
||||
{
|
||||
url: 'https://cdn.shadcnstudio.com/ss-assets/smm/marketing/shadcn-studio-smm-banner.png',
|
||||
type: 'image/png',
|
||||
width: 1200,
|
||||
height: 630,
|
||||
alt: 'Shadcn Studio - Craft Stunning Shadcn UI, Lightning Fast'
|
||||
}
|
||||
]
|
||||
},
|
||||
twitter: {
|
||||
card: 'summary_large_image',
|
||||
title: 'Shadcn Components',
|
||||
description:
|
||||
'An open-source collection of copy-and-paste Shadcn Components designed to accelerate your project development.'
|
||||
},
|
||||
alternates: {
|
||||
canonical: 'https://shadcnstudio.com/components'
|
||||
}
|
||||
}
|
||||
|
||||
const Page = () => {
|
||||
return (
|
||||
<div className='flex flex-col items-start justify-center space-y-4 p-4 sm:space-y-8 sm:p-8'>
|
||||
<div className='flex flex-col space-y-3'>
|
||||
<h1 className='text-2xl font-bold sm:text-3xl'>Shadcn Components</h1>
|
||||
<p className='text-muted-foreground'>
|
||||
An open-source collection of copy-and-paste Shadcn Components designed to accelerate your project development.
|
||||
Below is a summary of the available component categories:
|
||||
</p>
|
||||
</div>
|
||||
<div className='grid w-full gap-4 sm:grid-cols-2 sm:gap-6 md:grid-cols-3 xl:grid-cols-4'>
|
||||
{categories
|
||||
.filter(category => !category.isComingSoon)
|
||||
.map(category => (
|
||||
<div key={category.slug} className='group overflow-hidden rounded-xl border'>
|
||||
<Link href={`/docs/components/${category.slug}`}>
|
||||
<div className='bg-primary/[0.045] flex h-52 items-center justify-center border-b dark:bg-transparent'>
|
||||
<category.svg className='transition-all duration-300 group-hover:scale-110' />
|
||||
</div>
|
||||
<div className='flex flex-col gap-0.5 p-4 text-center'>
|
||||
<h2 className='text-lg font-medium'>{category.name}</h2>
|
||||
<p className='text-muted-foreground text-sm'>{`${category.components.length} ${category.components.length === 1 ? 'Component' : 'Components'}`}</p>
|
||||
</div>
|
||||
</Link>
|
||||
</div>
|
||||
))}
|
||||
<div className='group overflow-hidden rounded-xl border'>
|
||||
<div className='bg-primary/[0.045] flex h-52 items-center justify-center border-b dark:bg-transparent'>
|
||||
<MoreComponents className='transition-all duration-300 group-hover:scale-110' />
|
||||
</div>
|
||||
<div className='flex flex-col gap-0.5 p-4 text-center'>
|
||||
<h2 className='text-lg font-medium'>More Components</h2>
|
||||
<p className='text-muted-foreground text-sm'>Coming Soon</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default Page
|
||||
11
src/app/(front)/layout.tsx
Normal file
11
src/app/(front)/layout.tsx
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
// React Imports
|
||||
import type { ReactNode } from 'react'
|
||||
|
||||
// Component Imports
|
||||
import FrontLayout from '@/components/layout/FrontLayout'
|
||||
|
||||
const Layout = ({ children }: { children: ReactNode }) => {
|
||||
return <FrontLayout>{children}</FrontLayout>
|
||||
}
|
||||
|
||||
export default Layout
|
||||
231
src/app/(front)/theme-editor/page.tsx
Normal file
231
src/app/(front)/theme-editor/page.tsx
Normal file
|
|
@ -0,0 +1,231 @@
|
|||
// React Imports
|
||||
import type { ReactNode } from 'react'
|
||||
|
||||
// Next Imports
|
||||
import type { Metadata } from 'next'
|
||||
|
||||
// Third-party Imports
|
||||
import { PlusIcon, Sparkles } from 'lucide-react'
|
||||
import * as AccordionPrimitive from '@radix-ui/react-accordion'
|
||||
|
||||
// Component Imports
|
||||
import { Accordion, AccordionContent, AccordionItem } from '@/registry/new-york/ui/accordion'
|
||||
import { Badge } from '@/registry/new-york/ui/badge'
|
||||
import { Card, CardContent, CardHeader } from '@/registry/new-york/ui/card'
|
||||
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/registry/new-york/ui/tabs'
|
||||
import CardsDemo from '@/components/examples/cards'
|
||||
import MailPage from '@/components/examples/mail'
|
||||
import DashboardPage from '@/components/examples/dashboard'
|
||||
import MusicPage from '@/components/examples/music'
|
||||
|
||||
// Util Imports
|
||||
import { cn } from '@/registry/new-york/lib/utils'
|
||||
|
||||
// Data Imports
|
||||
import { features } from '@/assets/data/features'
|
||||
import { roadmap } from '@/assets/data/roadmap'
|
||||
import { faqs } from '@/assets/data/faqs'
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'Shadcn Theme Editor',
|
||||
description: 'Preview your theme changes across different components and layouts.',
|
||||
openGraph: {
|
||||
title: 'Shadcn Theme Editor',
|
||||
description: 'Preview your theme changes across different components and layouts.',
|
||||
url: 'https://shadcnstudio.com/theme-editor',
|
||||
images: [
|
||||
{
|
||||
url: 'https://cdn.shadcnstudio.com/ss-assets/smm/marketing/shadcn-studio-smm-banner.png',
|
||||
type: 'image/png',
|
||||
width: 1200,
|
||||
height: 630,
|
||||
alt: 'Shadcn Studio - Craft Stunning Shadcn UI, Lightning Fast'
|
||||
}
|
||||
]
|
||||
},
|
||||
twitter: {
|
||||
card: 'summary_large_image',
|
||||
title: 'Shadcn Theme Editor',
|
||||
description: 'Preview your theme changes across different components and layouts.'
|
||||
},
|
||||
alternates: {
|
||||
canonical: 'https://shadcnstudio.com/theme-editor'
|
||||
}
|
||||
}
|
||||
|
||||
const ThemeEditor = () => {
|
||||
return (
|
||||
<div className='p-4 sm:p-8'>
|
||||
<section className='pb-12 sm:pb-20'>
|
||||
<div className='mb-12 flex flex-col items-center justify-center gap-4'>
|
||||
<Badge variant='outline' className='rounded-full px-3 py-1.5 text-sm shadow-md'>
|
||||
<Sparkles className='size-4' />
|
||||
Visual Theme Editor
|
||||
</Badge>
|
||||
<h1 className='text-center text-3xl font-bold tracking-tight sm:text-4xl'>Shadcn Theme Editor</h1>
|
||||
<p className='text-muted-foreground max-w-[800px] text-center'>
|
||||
Preview your theme changes across different components and layouts.
|
||||
</p>
|
||||
</div>
|
||||
<Tabs defaultValue='examples' className='h-full w-full gap-6'>
|
||||
<TabsList className='w-full'>
|
||||
<TabsTrigger value='examples' className='cursor-pointer'>
|
||||
Examples
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='mail' className='cursor-pointer'>
|
||||
Mail
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='dashboard' className='cursor-pointer'>
|
||||
Dashboard
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='music' className='cursor-pointer'>
|
||||
Music
|
||||
</TabsTrigger>
|
||||
</TabsList>
|
||||
|
||||
<TabsContent value='examples'>
|
||||
<CardsDemo />
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value='mail'>
|
||||
<MailPage />
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value='dashboard'>
|
||||
<DashboardPage />
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value='music'>
|
||||
<MusicPage />
|
||||
</TabsContent>
|
||||
</Tabs>
|
||||
</section>
|
||||
<section className='py-12 sm:py-20'>
|
||||
<div className='mb-12 flex flex-col items-center justify-center gap-4'>
|
||||
<Badge variant='outline' className='rounded-full px-3 py-1.5 text-sm shadow-md'>
|
||||
<Sparkles className='size-4' />
|
||||
Features
|
||||
</Badge>
|
||||
<h2 className='text-center text-3xl font-bold tracking-tight sm:text-4xl'>
|
||||
Design Your Perfect UI with Ease
|
||||
</h2>
|
||||
<p className='text-muted-foreground max-w-[800px] text-center'>
|
||||
Transform your shadcn components in real time—customize, save, and ship stunning interfaces faster than
|
||||
ever.
|
||||
</p>
|
||||
</div>
|
||||
<div className='mx-auto grid max-w-6xl gap-6 sm:grid-cols-2 lg:grid-cols-3'>
|
||||
{features.map((feature, index) => (
|
||||
<Card key={index} className='group gap-0'>
|
||||
<CardHeader className='pb-3'>
|
||||
<CardDecorator>
|
||||
<feature.icon className='size-6' aria-hidden />
|
||||
</CardDecorator>
|
||||
<h3 className='mt-6 text-xl font-semibold'>{feature.title}</h3>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<p className='text-muted-foreground text-sm'>{feature.description}</p>
|
||||
</CardContent>
|
||||
</Card>
|
||||
))}
|
||||
</div>
|
||||
</section>
|
||||
<section id='roadmap' className='py-12 sm:py-20'>
|
||||
<div className='mb-12 flex flex-col items-center justify-center gap-4'>
|
||||
<Badge variant='outline' className='rounded-full px-3 py-1.5 text-sm shadow-md'>
|
||||
<Sparkles className='size-4' />
|
||||
Roadmap
|
||||
</Badge>
|
||||
<h2 className='text-center text-3xl font-bold tracking-tight sm:text-4xl'>What's Coming Next</h2>
|
||||
<p className='text-muted-foreground max-w-[800px] text-center'>
|
||||
Discover the latest updates and features we're working on to enhance your experience.
|
||||
</p>
|
||||
</div>
|
||||
<div className='mx-auto grid max-w-6xl gap-6 sm:grid-cols-2 lg:grid-cols-3'>
|
||||
{roadmap.map((item, index) => (
|
||||
<Card key={index} className='group gap-0'>
|
||||
<CardContent className='relative'>
|
||||
<div className='bg-muted mb-3 flex h-12 w-12 items-center justify-center rounded-full'>
|
||||
<item.icon className='size-6' aria-hidden />
|
||||
</div>
|
||||
<h3 className='mb-2 text-xl font-semibold'>{item.title}</h3>
|
||||
<p className='text-muted-foreground text-sm'>{item.description}</p>
|
||||
<Badge
|
||||
variant={item.status === 'In Progress' ? 'outline' : 'secondary'}
|
||||
className={cn('absolute end-6 top-0 shadow')}
|
||||
>
|
||||
{item.status}
|
||||
</Badge>
|
||||
</CardContent>
|
||||
</Card>
|
||||
))}
|
||||
</div>
|
||||
</section>
|
||||
<section className='py-12 sm:py-20'>
|
||||
<div className='mb-12 flex flex-col items-center justify-center gap-4'>
|
||||
<Badge variant='outline' className='rounded-full px-3 py-1.5 text-sm shadow-md'>
|
||||
<Sparkles className='size-4' />
|
||||
FAQ
|
||||
</Badge>
|
||||
<h2 className='text-center text-3xl font-bold tracking-tight sm:text-4xl'>Frequently Asked Questions</h2>
|
||||
<p className='text-muted-foreground max-w-[800px] text-center'>
|
||||
Find answers to common questions about shadcn/studio.
|
||||
</p>
|
||||
</div>
|
||||
<div className='mx-auto grid w-full max-w-6xl gap-x-10 md:grid-cols-2'>
|
||||
<Accordion type='single' collapsible className='w-full'>
|
||||
{faqs.slice(0, 4).map(({ question, answer }, index) => (
|
||||
<AccordionItem key={question} value={`question-${index}`}>
|
||||
<AccordionPrimitive.Header className='flex'>
|
||||
<AccordionPrimitive.Trigger
|
||||
className={cn(
|
||||
'flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-45',
|
||||
'text-start text-lg'
|
||||
)}
|
||||
>
|
||||
{question}
|
||||
<PlusIcon className='text-muted-foreground h-5 w-5 shrink-0 transition-transform duration-200' />
|
||||
</AccordionPrimitive.Trigger>
|
||||
</AccordionPrimitive.Header>
|
||||
<AccordionContent className='text-muted-foreground'>{answer}</AccordionContent>
|
||||
</AccordionItem>
|
||||
))}
|
||||
</Accordion>
|
||||
<Accordion type='single' collapsible className='w-full'>
|
||||
{faqs.slice(4).map(({ question, answer }, index) => (
|
||||
<AccordionItem key={question} value={`question-${index + 5}`}>
|
||||
<AccordionPrimitive.Header className='flex'>
|
||||
<AccordionPrimitive.Trigger
|
||||
className={cn(
|
||||
'flex flex-1 items-center justify-between py-4 font-medium tracking-tight transition-all hover:underline [&[data-state=open]>svg]:rotate-45',
|
||||
'text-start text-lg'
|
||||
)}
|
||||
>
|
||||
{question}
|
||||
<PlusIcon className='text-muted-foreground h-5 w-5 shrink-0 transition-transform duration-200' />
|
||||
</AccordionPrimitive.Trigger>
|
||||
</AccordionPrimitive.Header>
|
||||
<AccordionContent className='text-muted-foreground'>{answer}</AccordionContent>
|
||||
</AccordionItem>
|
||||
))}
|
||||
</Accordion>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
const CardDecorator = ({ children }: { children: ReactNode }) => (
|
||||
<div className='relative mx-auto size-36 duration-200 [--color-border:color-mix(in_oklab,var(--color-zinc-950)10%,transparent)] group-hover:[--color-border:color-mix(in_oklab,var(--color-zinc-950)20%,transparent)] dark:[--color-border:color-mix(in_oklab,var(--color-white)15%,transparent)] dark:group-hover:bg-white/5 dark:group-hover:[--color-border:color-mix(in_oklab,var(--color-white)20%,transparent)]'>
|
||||
<div
|
||||
aria-hidden
|
||||
className='absolute inset-0 bg-[linear-gradient(to_right,var(--color-border)_1px,transparent_1px),linear-gradient(to_bottom,var(--color-border)_1px,transparent_1px)] bg-[size:24px_24px]'
|
||||
/>
|
||||
<div aria-hidden className='to-background absolute inset-0 bg-radial from-transparent to-75%' />
|
||||
<div className='bg-background absolute inset-0 m-auto flex size-12 items-center justify-center border-t border-l'>
|
||||
{children}
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
|
||||
export default ThemeEditor
|
||||
98
src/app/(pages)/docs/components/[category]/page.tsx
Normal file
98
src/app/(pages)/docs/components/[category]/page.tsx
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
// Next Imports
|
||||
import { notFound } from 'next/navigation'
|
||||
import type { Metadata, ResolvingMetadata } from 'next'
|
||||
|
||||
// Component Imports
|
||||
import ComponentsGrid from '@/components/ComponentsGrid'
|
||||
import ComponentDetails from '@/components/ComponentDetails'
|
||||
import ComponentCard from '@/components/ComponentCard'
|
||||
import ComponentLoader from '@/components/ComponentLoader'
|
||||
|
||||
// Config Imports
|
||||
import { categories, getCategory } from '@/config/components'
|
||||
|
||||
// Util Imports
|
||||
import { getComponentsByNames } from '@/utils/components'
|
||||
|
||||
type Props = {
|
||||
params: Promise<{ category: string }>
|
||||
}
|
||||
|
||||
export async function generateMetadata({ params }: Props, parent: ResolvingMetadata): Promise<Metadata> {
|
||||
const category = getCategory((await params).category)
|
||||
|
||||
if (!category || category.isComingSoon) {
|
||||
return {}
|
||||
}
|
||||
|
||||
const components = getComponentsByNames(category.components.map(item => item.name))
|
||||
const parentMetadata = await parent
|
||||
|
||||
const isSingleComponent = components.length === 1
|
||||
|
||||
return {
|
||||
title: `Shadcn ${category.name}`,
|
||||
description: isSingleComponent
|
||||
? `Elevate your UI with a Shadcn ${category.name.toLowerCase()} component, built using React and Tailwind CSS.`
|
||||
: `Elevate your UI with a growing collection of ${components.length}+ Shadcn ${category.name.toLowerCase()} components, built using React and Tailwind CSS.`,
|
||||
openGraph: {
|
||||
title: `Shadcn ${category.name}`,
|
||||
description: isSingleComponent
|
||||
? `Elevate your UI with a Shadcn ${category.name.toLowerCase()} component, built using React and Tailwind CSS.`
|
||||
: `Elevate your UI with a growing collection of ${components.length}+ Shadcn ${category.name.toLowerCase()} components, built using React and Tailwind CSS.`,
|
||||
url: `https://shadcnstudio.com/docs/components/${category.slug}`,
|
||||
images: parentMetadata.openGraph?.images
|
||||
},
|
||||
twitter: {
|
||||
card: parentMetadata.twitter?.card || 'summary_large_image',
|
||||
title: `Shadcn ${category.name}`,
|
||||
description: isSingleComponent
|
||||
? `Elevate your UI with a Shadcn ${category.name.toLowerCase()} component, built using React and Tailwind CSS.`
|
||||
: `Elevate your UI with a growing collection of ${components.length}+ Shadcn ${category.name.toLowerCase()} components, built using React and Tailwind CSS.`
|
||||
},
|
||||
alternates: {
|
||||
canonical: `https://shadcnstudio.com/docs/components/${category.slug}`
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export async function generateStaticParams() {
|
||||
return categories
|
||||
.filter(category => !category.isComingSoon)
|
||||
.map(category => ({
|
||||
category: category.slug
|
||||
}))
|
||||
}
|
||||
|
||||
const Page = async ({ params }: { params: Promise<{ category: string }> }) => {
|
||||
const category = getCategory((await params).category)
|
||||
|
||||
if (!category || category.isComingSoon) {
|
||||
notFound()
|
||||
}
|
||||
|
||||
const components = getComponentsByNames(category.components.map(item => item.name))
|
||||
|
||||
return (
|
||||
<div className='flex flex-1 flex-col space-y-4 p-4 sm:space-y-8 sm:p-8'>
|
||||
<div className='flex flex-col space-y-3'>
|
||||
<h1 className='text-2xl font-bold sm:text-3xl'>{`Shadcn ${category.name}`}</h1>
|
||||
<p className='text-muted-foreground'>
|
||||
{components.length === 1
|
||||
? `Elevate your UI with a Shadcn ${category.name.toLowerCase()} component, built using React and Tailwind CSS.`
|
||||
: `Elevate your UI with a growing collection of ${components.length}+ Shadcn ${category.name.toLowerCase()} components, built using React and Tailwind CSS.`}
|
||||
</p>
|
||||
</div>
|
||||
<ComponentsGrid {...category.breakpoints}>
|
||||
{components.map(component => (
|
||||
<ComponentCard key={component.name} component={component}>
|
||||
<ComponentLoader component={component} category={category.slug} />
|
||||
<ComponentDetails component={component} />
|
||||
</ComponentCard>
|
||||
))}
|
||||
</ComponentsGrid>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default Page
|
||||
142
src/app/(pages)/docs/getting-started/introduction/page.tsx
Normal file
142
src/app/(pages)/docs/getting-started/introduction/page.tsx
Normal file
|
|
@ -0,0 +1,142 @@
|
|||
// Next Imports
|
||||
import type { Metadata } from 'next'
|
||||
|
||||
// Third-party Imports
|
||||
import { PlusIcon } from 'lucide-react'
|
||||
import * as AccordionPrimitive from '@radix-ui/react-accordion'
|
||||
|
||||
// Component Imports
|
||||
import { Accordion, AccordionContent, AccordionItem } from '@/registry/new-york/ui/accordion'
|
||||
|
||||
// Data Imports
|
||||
import { introFaqs } from '@/assets/data/faqs'
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'Introduction',
|
||||
description:
|
||||
'An open-source Shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful theme editor to craft, customize, and ship faster.',
|
||||
openGraph: {
|
||||
title: 'Introduction',
|
||||
description:
|
||||
'An open-source Shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful theme editor to craft, customize, and ship faster.',
|
||||
url: 'https://shadcnstudio.com/docs/getting-started/introduction',
|
||||
images: [
|
||||
{
|
||||
url: 'https://cdn.shadcnstudio.com/ss-assets/smm/marketing/shadcn-studio-smm-banner.png',
|
||||
type: 'image/png',
|
||||
width: 1200,
|
||||
height: 630,
|
||||
alt: 'Shadcn Studio - Craft Stunning Shadcn UI, Lightning Fast'
|
||||
}
|
||||
]
|
||||
},
|
||||
twitter: {
|
||||
card: 'summary_large_image',
|
||||
title: 'Introduction',
|
||||
description:
|
||||
'An open-source Shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful theme editor to craft, customize, and ship faster.'
|
||||
},
|
||||
alternates: {
|
||||
canonical: 'https://shadcnstudio.com/docs/getting-started/introduction'
|
||||
}
|
||||
}
|
||||
|
||||
const DocsPage = () => {
|
||||
return (
|
||||
<div className='flex flex-1 flex-col space-y-6 p-4 sm:space-y-10 sm:p-8'>
|
||||
<div className='flex flex-col items-start space-y-3'>
|
||||
<h1 className='text-2xl font-bold sm:text-3xl'>Introduction</h1>
|
||||
<p className='text-muted-foreground'>
|
||||
An open-source Shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful
|
||||
theme editor to craft, customize, and ship faster.
|
||||
</p>
|
||||
</div>
|
||||
<div className='flex flex-col items-start space-y-3'>
|
||||
<h2 className='text-xl font-bold'>What is shadcn/studio?</h2>
|
||||
<p className='text-foreground/80'>
|
||||
<strong className='text-foreground font-semibold'>
|
||||
This isn't a traditional component library or a replacement for Shadcn
|
||||
</strong>
|
||||
. Instead, it's a unique collection offers customizable variants of components, blocks, and templates.
|
||||
Preview, customize, and copy-paste them into your apps with ease.
|
||||
</p>
|
||||
<p className='text-foreground/80'>
|
||||
Building on the solid foundation of the Shadcn registry, we've enhanced it with custom-designed
|
||||
components & blocks to give you a head start. This allows you to craft, customize, and ship your projects
|
||||
faster and more efficiently.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className='flex flex-col items-start space-y-3'>
|
||||
<h2 className='text-xl font-bold'>Not a Standard Library, but a Distribution of Components</h2>
|
||||
<p className='text-foreground/80'>
|
||||
Following the philosophy of Shadcn, shadcn/studio isn't a conventional “install-from-NPM” library.
|
||||
Rather, it's an open-source distribution of components designed for maximum adaptability. You can copy
|
||||
the code, modify styles, adjust logic, or integrate it with other tools—free from the limitations of typical
|
||||
libraries. This "open code" model empowers you to customize with confidence and creativity.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className='flex flex-col items-start space-y-3'>
|
||||
<h2 className='text-xl font-bold'>Why Should I use shadcn/studio?</h2>
|
||||
<p className='text-foreground/80'>
|
||||
shadcn/ui aims to provide core components with a unique distribution system, allowing developers to copy and
|
||||
paste reusable, customizable UI elements directly into their codebase.
|
||||
</p>
|
||||
|
||||
<p className='text-foreground/80'>
|
||||
While this approach offers flexibility and control, it comes with some limitations: a lack of diverse
|
||||
component variants examples, limited theme customization options, and limited pre-built blocks. Additionally,
|
||||
its extensive customization options, though powerful, can sometimes feel overwhelming, especially for those
|
||||
seeking a more guided or streamlined experience.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className='flex flex-col items-start space-y-3'>
|
||||
<h3 className='text-md font-bold'>This is where shadcn/studio shines ✨</h3>
|
||||
<p className='text-foreground/80'>
|
||||
An open-source Shadcn registry of copy-and-paste components, blocks, and templates—paired with a powerful
|
||||
theme editor to craft, customize, and ship faster 🚀. It provides a robust toolkit for building stunning,
|
||||
interactive user interfaces with ease.
|
||||
</p>
|
||||
<ul className='text-foreground/80 ms-8 list-disc space-y-2 lg:max-w-7/10'>
|
||||
<li>
|
||||
<span className='text-foreground font-semibold'>Open-source:</span> Dive into a growing, community-driven
|
||||
collection of copy-and-paste components, blocks, and templates.
|
||||
</li>
|
||||
<li>
|
||||
<span className='text-foreground font-semibold'>Component & Blocks variants:</span> Access a diverse,
|
||||
collection of customizable shadcn component and block variants to quickly build and style your UI with ease.
|
||||
</li>
|
||||
<li>
|
||||
<span className='text-foreground font-semibold'>Animated variants with Motion:</span> Add smooth, modern
|
||||
animations to your components, enhancing user experiences with minimal effort.
|
||||
</li>
|
||||
<li>
|
||||
<span className='text-foreground font-semibold'>Powerful theme editor:</span> Tailor your UI effortlessly
|
||||
with real-time previews, ensuring consistent, branded designs delivered faster.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div className='flex flex-col items-start space-y-3'>
|
||||
<h2 className='text-xl font-bold'>Frequently Asked Questions</h2>
|
||||
<Accordion type='single' collapsible className='w-full'>
|
||||
{introFaqs.map(({ question, answer }, index) => (
|
||||
<AccordionItem key={question} value={`question-${index}`}>
|
||||
<AccordionPrimitive.Header className='flex'>
|
||||
<AccordionPrimitive.Trigger className='text-foreground/80 flex flex-1 items-center justify-between py-3 text-start font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-45'>
|
||||
{question}
|
||||
<PlusIcon className='text-muted-foreground h-5 w-5 shrink-0 transition-transform duration-200' />
|
||||
</AccordionPrimitive.Trigger>
|
||||
</AccordionPrimitive.Header>
|
||||
<AccordionContent className='text-muted-foreground'>{answer}</AccordionContent>
|
||||
</AccordionItem>
|
||||
))}
|
||||
</Accordion>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default DocsPage
|
||||
16
src/app/(pages)/layout.tsx
Normal file
16
src/app/(pages)/layout.tsx
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
// React Imports
|
||||
import type { ReactNode } from 'react'
|
||||
|
||||
// Component Imports
|
||||
import { SidebarProvider } from '@/registry/new-york/ui/sidebar'
|
||||
import PagesLayout from '@/components/layout/PagesLayout'
|
||||
|
||||
const Layout = ({ children }: { children: ReactNode }) => {
|
||||
return (
|
||||
<SidebarProvider>
|
||||
<PagesLayout>{children}</PagesLayout>
|
||||
</SidebarProvider>
|
||||
)
|
||||
}
|
||||
|
||||
export default Layout
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue