Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/hope #34

Merged
merged 45 commits into from
Feb 4, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
4c07f05
🎨 style: unify code style by replacing single quotes with double quot…
nyxb Feb 2, 2025
c4943d9
✨ feat(commands): add build command for nyxb registry components
nyxb Feb 2, 2025
37cf455
🎨 style(registry): update string literals to use double quotes for co…
nyxb Feb 2, 2025
706c376
🧹 chore: update VSCode settings to use Biome as default formatter and…
nyxb Feb 2, 2025
5936faa
✨ feat(charts): add new chart components for data visualization
nyxb Feb 2, 2025
0e762bc
🎨 style(charts.tsx, layout.tsx): update import paths and improve layo…
nyxb Feb 2, 2025
552fd38
🎨 style(theme-customizer.tsx): update icon imports and improve code r…
nyxb Feb 2, 2025
9a4603a
🔥 refactor(web): remove unused V0Button component
nyxb Feb 2, 2025
f062a44
✨ feat(typography): add typography examples to registry for better de…
nyxb Feb 2, 2025
8a218e0
🎨 style(page.tsx): adjust indentation for better readability
nyxb Feb 3, 2025
e4f1d6d
.
nyxb Feb 3, 2025
acd51fd
♻️ refactor(edit-in-v0.ts): simplify registry URL generation and remo…
nyxb Feb 3, 2025
bba05b2
🎨 style(page-header.tsx): update class names for improved readability…
nyxb Feb 3, 2025
1270f82
✨ feat(sidebar-nav.tsx): enhance sidebar navigation with label support
nyxb Feb 3, 2025
acc00e7
✨ feat(docs): enhance sidebar navigation with collapsible sections
nyxb Feb 3, 2025
4627185
✨ feat(web): add terminal component and demo to registry
nyxb Feb 3, 2025
64e8fe1
.
nyxb Feb 4, 2025
d1d7f7b
.
nyxb Feb 4, 2025
398a327
🧹 chore(.npmrc): add strict-peer-dependencies and duplicate auto-inst…
nyxb Feb 4, 2025
12e8453
🛠️ build(nixpacks.toml): add additional system libraries to nixPkgs f…
nyxb Feb 4, 2025
86a29f3
🧹 chore(nixpacks.toml): reorder package installation to separate apt …
nyxb Feb 4, 2025
d63b196
🛠️ build(nixpacks.toml): add npm global bin to PATH for consistent co…
nyxb Feb 4, 2025
a076c04
🛠️ build(nixpacks.toml): update npm global installation path and comm…
nyxb Feb 4, 2025
24cf010
🧹 chore(nixpacks.toml): simplify npm global path configuration and up…
nyxb Feb 4, 2025
3dbe7bd
🧹 chore(nixpacks.toml): remove unnecessary apt package installations …
nyxb Feb 4, 2025
bc2913a
🧹 chore(nixpacks.toml): remove unnecessary whitespace and align array…
nyxb Feb 4, 2025
9aa816f
🛠️ build(nixpacks.toml): switch from corepack to global pnpm installa…
nyxb Feb 4, 2025
ce85632
🛠️ build(nixpacks.toml): add npm global bin to PATH to ensure global …
nyxb Feb 4, 2025
b7ea291
📚 docs: add discussion template for block requests to guide users in …
nyxb Feb 4, 2025
619e7ee
🛠️ build(nixpacks.toml): add additional libraries for Chromium depend…
nyxb Feb 4, 2025
185202f
🛠️ build(nixpacks.toml): add apt package installation phase to suppor…
nyxb Feb 4, 2025
301cf53
🧹 chore(nixpacks.toml): simplify configuration by merging aptPkgs int…
nyxb Feb 4, 2025
ecdb2ee
🛠️ build(nixpacks.toml): add biome package installation and refine we…
nyxb Feb 4, 2025
abe73f3
🛠️ build(nixpacks.toml): add workspace flag to biome installation com…
nyxb Feb 4, 2025
0e1cd73
🛠️ build(nixpacks.toml): use frozen-lockfile option in pnpm install t…
nyxb Feb 4, 2025
b439726
🛠️ build(nixpacks.toml): update build commands to use turbo and tsx f…
nyxb Feb 4, 2025
e3e39d4
🛠️ build(nixpacks.toml): add NIXPACKS_DOCKER_OPTS for debugging and v…
nyxb Feb 4, 2025
5aca293
🧹 chore(nixpacks.toml): remove unnecessary Chromium dependencies and …
nyxb Feb 4, 2025
36ba3b8
.
nyxb Feb 4, 2025
8ae6402
.
nyxb Feb 4, 2025
5b20279
🛠️ build(nixpacks.toml): switch from corepack to pnpm for package man…
nyxb Feb 4, 2025
3f6e587
🛠️ build(nixpacks.toml): switch to corepack for managing pnpm to ensu…
nyxb Feb 4, 2025
b05f7ce
✨ feat(nixpacks.toml): add NODE_OPTIONS to increase max-old-space-siz…
nyxb Feb 4, 2025
b267896
🎨 style: improve code consistency and readability across components
nyxb Feb 4, 2025
bea898c
🎨 style: unify import quotes to double quotes for consistency
nyxb Feb 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
25 changes: 25 additions & 0 deletions .github/DISCUSSION_TEMPLATE/blocks-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
title: "[blocks]: "
labels: ["Blocks Request"]
body:
- type: markdown
attributes:
value: |
### Thanks for taking the time to create a block request! Please search open/closed requests before submitting, as the block or a similar one may have already been requested.

- type: textarea
id: block-description
attributes:
label: Description
description: Tell us about your block request
placeholder: "A dashboard for an e-commerce website showing sales, orders, and customers..."
validations:
required: true

- type: input
id: block-example-url
attributes:
label: Example
description: Link to an example of the block
placeholder: ex. https://example.com
validations:
required: false
57 changes: 48 additions & 9 deletions .github/workflows/code-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ on:
branches: ["*"]

jobs:
lint:
biome:
runs-on: ubuntu-latest
name: pnpm lint
name: pnpm biome check
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -16,13 +16,13 @@ jobs:
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 18
node-version: 20

- uses: pnpm/action-setup@v4
name: Install pnpm
id: pnpm-install
with:
version: 9.4.0
version: 9.0.6
run_install: false

- name: Get pnpm store directory
Expand All @@ -39,13 +39,49 @@ jobs:
- name: Install dependencies
run: pnpm install

- run: pnpm lint
- run: pnpm biome check

format:
runs-on: ubuntu-latest
name: pnpm format:check
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20

- uses: pnpm/action-setup@v4
name: Install pnpm
id: pnpm-install
with:
version: 9.0.6
run_install: false

- name: Get pnpm store directory
id: pnpm-cache
run: |
echo "pnpm_cache_dir=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: pnpm install

- run: pnpm format:check

tsc:
runs-on: ubuntu-latest
name: pnpm typecheck
env:
NEXT_PUBLIC_APP_URL: http://localhost:3001
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -54,13 +90,13 @@ jobs:
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 18
node-version: 20

- uses: pnpm/action-setup@v4
name: Install pnpm
id: pnpm-install
with:
version: 9.4.0
version: 9.0.6
run_install: false

- name: Get pnpm store directory
Expand All @@ -77,4 +113,7 @@ jobs:
- name: Install dependencies
run: pnpm install

- name: Build packages
run: pnpm --filter=shadcn build

- run: pnpm typecheck
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
auto-install-peers=true
link-workspace-packages=true
85 changes: 37 additions & 48 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,54 +1,43 @@
{
// Biome as default formatter for different file types
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[javascriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[json]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[jsonc]": {
"editor.defaultFormatter": "biomejs.biome"
},

// Disable the default formatter, use eslint instead
"prettier.enable": false,
"editor.formatOnSave": false,
// Automatic formatting on save
"editor.formatOnSave": true,

// Auto fix
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.organizeImports": "never"
},
// Automatic fixes on save
"editor.codeActionsOnSave": {
"quickfix.biome": "explicit",
"source.organizeImports.biome": "explicit"
},

// Silent the stylistic rules in you IDE, but still auto fix them
"eslint.rules.customizations": [
{ "rule": "style/*", "severity": "warn" },
{ "rule": "format/*", "severity": "warn" },
{ "rule": "*-indent", "severity": "warn" },
{ "rule": "*-spacing", "severity": "warn" },
{ "rule": "*-spaces", "severity": "warn" },
{ "rule": "*-order", "severity": "warn" },
{ "rule": "*-dangle", "severity": "warn" },
{ "rule": "*-newline", "severity": "warn" },
{ "rule": "*quotes", "severity": "warn" },
{ "rule": "*semi", "severity": "warn" }
],
// Optional: Experimental feature for renaming
"biome.rename": true,

// Enable eslint for all supported languages
"eslint.validate": [
"javascript",
"javascriptreact",
"typescript",
"typescriptreact",
"vue",
"html",
"markdown",
"json",
"jsonc",
"yaml",
"toml",
"xml",
"gql",
"graphql",
"astro"
],
"search.useIgnoreFiles": true,
"cSpell.words": [
"customizer",
"dracula",
"occured",
"pullup",
"saas",
"shadcn"
]
"search.useIgnoreFiles": true,
"cSpell.words": [
"customizer",
"dracula",
"occured",
"pullup",
"saas",
"shadcn"
]
}
2 changes: 1 addition & 1 deletion apps/web/__registry__/README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
> Files inside this directory is autogenerated by `./scripts/build-registry.ts`. **Do not edit them manually.** - shadcn
> Files inside this directory is autogenerated by `./scripts/build-registry.ts`. **Do not edit them manually.** - nyxb
133 changes: 68 additions & 65 deletions apps/web/__registry__/default/block/_sink/page.tsx
Original file line number Diff line number Diff line change
@@ -1,78 +1,78 @@
import { AccordionDemo } from '~/registry/default/block/_sink/components/accordion-demo'
import { AlertDemo } from '~/registry/default/block/_sink/components/alert-demo'
import { AlertDialogDemo } from '~/registry/default/block/_sink/components/alert-dialog-demo'
import { AppSidebar } from '~/registry/default/block/_sink/components/app-sidebar'
import { AspectRatioDemo } from '~/registry/default/block/_sink/components/aspect-ratio-demo'
import { AvatarDemo } from '~/registry/default/block/_sink/components/avatar-demo'
import { BadgeDemo } from '~/registry/default/block/_sink/components/badge-demo'
import { BadgeDestructive } from '~/registry/default/block/_sink/components/badge-destructive'
import { BadgeOutline } from '~/registry/default/block/_sink/components/badge-outline'
import { BadgeSecondary } from '~/registry/default/block/_sink/components/badge-secondary'
import { BreadcrumbDemo } from '~/registry/default/block/_sink/components/breadcrumb-demo'
import { ButtonDemo } from '~/registry/default/block/_sink/components/button-demo'
import { ButtonDestructive } from '~/registry/default/block/_sink/components/button-destructive'
import { ButtonGhost } from '~/registry/default/block/_sink/components/button-ghost'
import { ButtonLink } from '~/registry/default/block/_sink/components/button-link'
import { ButtonLoading } from '~/registry/default/block/_sink/components/button-loading'
import { ButtonOutline } from '~/registry/default/block/_sink/components/button-outline'
import { ButtonSecondary } from '~/registry/default/block/_sink/components/button-secondary'
import { ButtonWithIcon } from '~/registry/default/block/_sink/components/button-with-icon'
import { CalendarDemo } from '~/registry/default/block/_sink/components/calendar-demo'
import { CardDemo } from '~/registry/default/block/_sink/components/card-demo'
import { CarouselDemo } from '~/registry/default/block/_sink/components/carousel-demo'
import { CheckboxDemo } from '~/registry/default/block/_sink/components/checkbox-demo'
import { CollapsibleDemo } from '~/registry/default/block/_sink/components/collapsible-demo'
import { ComboboxDemo } from '~/registry/default/block/_sink/components/combobox-demo'
import { CommandDemo } from '~/registry/default/block/_sink/components/command-demo'
import { ComponentWrapper } from '~/registry/default/block/_sink/components/component-wrapper'
import { ContextMenuDemo } from '~/registry/default/block/_sink/components/context-menu-demo'
import { DatePickerDemo } from '~/registry/default/block/_sink/components/date-picker-demo'
import { DialogDemo } from '~/registry/default/block/_sink/components/dialog-demo'
import { DrawerDemo } from '~/registry/default/block/_sink/components/drawer-demo'
import { DropdownMenuDemo } from '~/registry/default/block/_sink/components/dropdown-menu-demo'
import { HoverCardDemo } from '~/registry/default/block/_sink/components/hover-card-demo'
import { InputDemo } from '~/registry/default/block/_sink/components/input-demo'
import { InputOTPDemo } from '~/registry/default/block/_sink/components/input-otp-demo'
import { LabelDemo } from '~/registry/default/block/_sink/components/label-demo'
import { MenubarDemo } from '~/registry/default/block/_sink/components/menubar-demo'
import { NavigationMenuDemo } from '~/registry/default/block/_sink/components/navigation-menu-demo'
import { PaginationDemo } from '~/registry/default/block/_sink/components/pagination-demo'
import { PopoverDemo } from '~/registry/default/block/_sink/components/popover-demo'
import { ProgressDemo } from '~/registry/default/block/_sink/components/progress-demo'
import { RadioGroupDemo } from '~/registry/default/block/_sink/components/radio-group-demo'
import { ResizableHandleDemo } from '~/registry/default/block/_sink/components/resizable-handle'
import { ScrollAreaDemo } from '~/registry/default/block/_sink/components/scroll-area-demo'
import { SelectDemo } from '~/registry/default/block/_sink/components/select-demo'
import { SeparatorDemo } from '~/registry/default/block/_sink/components/separator-demo'
import { SheetDemo } from '~/registry/default/block/_sink/components/sheet-demo'
import { SkeletonDemo } from '~/registry/default/block/_sink/components/skeleton-demo'
import { SliderDemo } from '~/registry/default/block/_sink/components/slider-demo'
import { SonnerDemo } from '~/registry/default/block/_sink/components/sonner-demo'
import { SwitchDemo } from '~/registry/default/block/_sink/components/switch-demo'
import { TableDemo } from '~/registry/default/block/_sink/components/table-demo'
import { TabsDemo } from '~/registry/default/block/_sink/components/tabs-demo'
import { TextareaDemo } from '~/registry/default/block/_sink/components/textarea-demo'
import { ToastDemo } from '~/registry/default/block/_sink/components/toast-demo'
import { ToggleDemo } from '~/registry/default/block/_sink/components/toggle-demo'
import { ToggleDisabled } from '~/registry/default/block/_sink/components/toggle-disabled'
import { ToggleGroupDemo } from '~/registry/default/block/_sink/components/toggle-group-demo'
import { ToggleOutline } from '~/registry/default/block/_sink/components/toggle-outline'
import { ToggleWithText } from '~/registry/default/block/_sink/components/toggle-with-text'
import { TooltipDemo } from '~/registry/default/block/_sink/components/tooltip-demo'
import { AccordionDemo } from "~/registry/default/block/_sink/components/accordion-demo"
import { AlertDemo } from "~/registry/default/block/_sink/components/alert-demo"
import { AlertDialogDemo } from "~/registry/default/block/_sink/components/alert-dialog-demo"
import { AppSidebar } from "~/registry/default/block/_sink/components/app-sidebar"
import { AspectRatioDemo } from "~/registry/default/block/_sink/components/aspect-ratio-demo"
import { AvatarDemo } from "~/registry/default/block/_sink/components/avatar-demo"
import { BadgeDemo } from "~/registry/default/block/_sink/components/badge-demo"
import { BadgeDestructive } from "~/registry/default/block/_sink/components/badge-destructive"
import { BadgeOutline } from "~/registry/default/block/_sink/components/badge-outline"
import { BadgeSecondary } from "~/registry/default/block/_sink/components/badge-secondary"
import { BreadcrumbDemo } from "~/registry/default/block/_sink/components/breadcrumb-demo"
import { ButtonDemo } from "~/registry/default/block/_sink/components/button-demo"
import { ButtonDestructive } from "~/registry/default/block/_sink/components/button-destructive"
import { ButtonGhost } from "~/registry/default/block/_sink/components/button-ghost"
import { ButtonLink } from "~/registry/default/block/_sink/components/button-link"
import { ButtonLoading } from "~/registry/default/block/_sink/components/button-loading"
import { ButtonOutline } from "~/registry/default/block/_sink/components/button-outline"
import { ButtonSecondary } from "~/registry/default/block/_sink/components/button-secondary"
import { ButtonWithIcon } from "~/registry/default/block/_sink/components/button-with-icon"
import { CalendarDemo } from "~/registry/default/block/_sink/components/calendar-demo"
import { CardDemo } from "~/registry/default/block/_sink/components/card-demo"
import { CarouselDemo } from "~/registry/default/block/_sink/components/carousel-demo"
import { CheckboxDemo } from "~/registry/default/block/_sink/components/checkbox-demo"
import { CollapsibleDemo } from "~/registry/default/block/_sink/components/collapsible-demo"
import { ComboboxDemo } from "~/registry/default/block/_sink/components/combobox-demo"
import { CommandDemo } from "~/registry/default/block/_sink/components/command-demo"
import { ComponentWrapper } from "~/registry/default/block/_sink/components/component-wrapper"
import { ContextMenuDemo } from "~/registry/default/block/_sink/components/context-menu-demo"
import { DatePickerDemo } from "~/registry/default/block/_sink/components/date-picker-demo"
import { DialogDemo } from "~/registry/default/block/_sink/components/dialog-demo"
import { DrawerDemo } from "~/registry/default/block/_sink/components/drawer-demo"
import { DropdownMenuDemo } from "~/registry/default/block/_sink/components/dropdown-menu-demo"
import { HoverCardDemo } from "~/registry/default/block/_sink/components/hover-card-demo"
import { InputDemo } from "~/registry/default/block/_sink/components/input-demo"
import { InputOTPDemo } from "~/registry/default/block/_sink/components/input-otp-demo"
import { LabelDemo } from "~/registry/default/block/_sink/components/label-demo"
import { MenubarDemo } from "~/registry/default/block/_sink/components/menubar-demo"
import { NavigationMenuDemo } from "~/registry/default/block/_sink/components/navigation-menu-demo"
import { PaginationDemo } from "~/registry/default/block/_sink/components/pagination-demo"
import { PopoverDemo } from "~/registry/default/block/_sink/components/popover-demo"
import { ProgressDemo } from "~/registry/default/block/_sink/components/progress-demo"
import { RadioGroupDemo } from "~/registry/default/block/_sink/components/radio-group-demo"
import { ResizableHandleDemo } from "~/registry/default/block/_sink/components/resizable-handle"
import { ScrollAreaDemo } from "~/registry/default/block/_sink/components/scroll-area-demo"
import { SelectDemo } from "~/registry/default/block/_sink/components/select-demo"
import { SeparatorDemo } from "~/registry/default/block/_sink/components/separator-demo"
import { SheetDemo } from "~/registry/default/block/_sink/components/sheet-demo"
import { SkeletonDemo } from "~/registry/default/block/_sink/components/skeleton-demo"
import { SliderDemo } from "~/registry/default/block/_sink/components/slider-demo"
import { SonnerDemo } from "~/registry/default/block/_sink/components/sonner-demo"
import { SwitchDemo } from "~/registry/default/block/_sink/components/switch-demo"
import { TableDemo } from "~/registry/default/block/_sink/components/table-demo"
import { TabsDemo } from "~/registry/default/block/_sink/components/tabs-demo"
import { TextareaDemo } from "~/registry/default/block/_sink/components/textarea-demo"
import { ToastDemo } from "~/registry/default/block/_sink/components/toast-demo"
import { ToggleDemo } from "~/registry/default/block/_sink/components/toggle-demo"
import { ToggleDisabled } from "~/registry/default/block/_sink/components/toggle-disabled"
import { ToggleGroupDemo } from "~/registry/default/block/_sink/components/toggle-group-demo"
import { ToggleOutline } from "~/registry/default/block/_sink/components/toggle-outline"
import { ToggleWithText } from "~/registry/default/block/_sink/components/toggle-with-text"
import { TooltipDemo } from "~/registry/default/block/_sink/components/tooltip-demo"
import {
Breadcrumb,
BreadcrumbItem,
BreadcrumbLink,
BreadcrumbList,
BreadcrumbPage,
BreadcrumbSeparator,
} from '~/registry/default/ui/breadcrumb'
import { Separator } from '~/registry/default/ui/separator'
} from "~/registry/default/ui/breadcrumb"
import { Separator } from "~/registry/default/ui/separator"
import {
SidebarInset,
SidebarProvider,
SidebarTrigger,
} from '~/registry/default/ui/sidebar'
} from "~/registry/default/ui/sidebar"

export default function SinkPage() {
return (
Expand Down Expand Up @@ -197,7 +197,10 @@ export default function SinkPage() {
<ComponentWrapper name="Menubar">
<MenubarDemo />
</ComponentWrapper>
<ComponentWrapper name="NavigationMenu" className="col-span-2">
<ComponentWrapper
name="NavigationMenu"
className="col-span-2"
>
<NavigationMenuDemo />
</ComponentWrapper>
<ComponentWrapper name="Pagination">
Expand Down
Loading
Loading