@fluencypassdevs/cycle 0.7.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -5,7 +5,22 @@ Design System da [Fluencypass](https://fluencypass.com), construido sobre shadcn
5
5
  ## Instalacao
6
6
 
7
7
  ```bash
8
- npm install @fluencypassdevs/cycle
8
+ npm install @fluencypassdevs/cycle geist
9
+ ```
10
+
11
+ No `src/app/layout.tsx`, configurar a fonte Geist:
12
+
13
+ ```tsx
14
+ import { GeistSans } from "geist/font/sans"
15
+ import { GeistMono } from "geist/font/mono"
16
+
17
+ export default function RootLayout({ children }: { children: React.ReactNode }) {
18
+ return (
19
+ <html lang="pt-BR" className={`${GeistSans.variable} ${GeistMono.variable}`}>
20
+ <body>{children}</body>
21
+ </html>
22
+ )
23
+ }
9
24
  ```
10
25
 
11
26
  No `globals.css`:
package/bin/mcp.mjs CHANGED
@@ -742,10 +742,29 @@ import { Home } from "lucide-react" // PROIBIDO
742
742
 
743
743
  ## 1. Instalar o pacote:
744
744
  \`\`\`bash
745
- npm install @fluencypassdevs/cycle
745
+ npm install @fluencypassdevs/cycle geist
746
746
  \`\`\`
747
747
 
748
- ## 2. Configurar CSS (globals.css):
748
+ ## 2. Configurar a fonte Geist (OBRIGATORIO):
749
+
750
+ No \`src/app/layout.tsx\`:
751
+
752
+ \`\`\`tsx
753
+ import { GeistSans } from "geist/font/sans"
754
+ import { GeistMono } from "geist/font/mono"
755
+
756
+ export default function RootLayout({ children }: { children: React.ReactNode }) {
757
+ return (
758
+ <html lang="pt-BR" className={\`\${GeistSans.variable} \${GeistMono.variable}\`}>
759
+ <body>{children}</body>
760
+ </html>
761
+ )
762
+ }
763
+ \`\`\`
764
+
765
+ > Sem isso, todos os textos usam a fonte do sistema em vez da Geist.
766
+
767
+ ## 3. Configurar CSS (globals.css):
749
768
 
750
769
  \`\`\`css
751
770
  @import "tailwindcss";
@@ -754,26 +773,24 @@ npm install @fluencypassdevs/cycle
754
773
 
755
774
  So isso! O \`@source\` do Tailwind v4 ja esta embutido dentro do CSS do pacote — nao precisa adicionar manualmente.
756
775
 
757
- > Se o projeto tinha \`@source "../../node_modules/@fluencypassdevs/cycle/dist"\` no globals.css, pode remover (a partir da v0.7.0 e automatico).
758
-
759
- ## 3. Importar componentes:
776
+ ## 4. Importar componentes:
760
777
  \`\`\`tsx
761
778
  import { Button, Input, Badge } from "@fluencypassdevs/cycle"
762
779
  \`\`\`
763
780
 
764
- ## 4. Importar icones (OBRIGATORIO via Cycle):
781
+ ## 5. Importar icones (OBRIGATORIO via Cycle):
765
782
  \`\`\`tsx
766
783
  import { CycleIcon } from "@fluencypassdevs/cycle"
767
784
  import { Home } from "@fluencypassdevs/cycle/icons/lucide"
768
785
  // NUNCA: import { Home } from "lucide-react" ❌
769
786
  \`\`\`
770
787
 
771
- ## 5. Utilidades:
788
+ ## 6. Utilidades:
772
789
  \`\`\`tsx
773
790
  import { cn } from "@fluencypassdevs/cycle/lib/utils"
774
791
  \`\`\`
775
792
 
776
- ## 6. Configurar regras para IA (opcional):
793
+ ## 7. Configurar regras para IA (opcional):
777
794
  \`\`\`bash
778
795
  npx cycle init
779
796
  \`\`\`
@@ -17,6 +17,31 @@ import { CycleIcon } from "@fluencypassdevs/cycle/icons"
17
17
  import { cn } from "@fluencypassdevs/cycle/lib/utils"
18
18
  ```
19
19
 
20
+ ## Fonte Geist (OBRIGATORIO)
21
+
22
+ O Cycle usa a fonte **Geist**. Instalar junto com o pacote:
23
+
24
+ ```bash
25
+ npm install @fluencypassdevs/cycle geist
26
+ ```
27
+
28
+ No `src/app/layout.tsx`:
29
+
30
+ ```tsx
31
+ import { GeistSans } from "geist/font/sans"
32
+ import { GeistMono } from "geist/font/mono"
33
+
34
+ export default function RootLayout({ children }: { children: React.ReactNode }) {
35
+ return (
36
+ <html lang="pt-BR" className={`${GeistSans.variable} ${GeistMono.variable}`}>
37
+ <body>{children}</body>
38
+ </html>
39
+ )
40
+ }
41
+ ```
42
+
43
+ > Sem isso, todos os textos usam a fonte do sistema em vez da Geist.
44
+
20
45
  ## CSS (globals.css)
21
46
 
22
47
  O `globals.css` DEVE conter:
@@ -31,9 +56,10 @@ O `globals.css` DEVE conter:
31
56
  ### Troubleshooting: Componentes sem estilo
32
57
 
33
58
  Se componentes Cycle aparecem sem estilo, verifique:
34
- 1. O `@import "@fluencypassdevs/cycle/styles.css";` esta presente no globals.css?
35
- 2. O pacote esta instalado? `npm list @fluencypassdevs/cycle`
36
- 3. Versao >= 0.7.0? O @source automatico so existe a partir desta versao.
59
+ 1. A fonte Geist esta configurada no layout.tsx?
60
+ 2. O `@import "@fluencypassdevs/cycle/styles.css";` esta presente no globals.css?
61
+ 3. O pacote esta instalado? `npm list @fluencypassdevs/cycle`
62
+ 4. Versao >= 0.7.2? Fixes criticos de CSS nesta versao.
37
63
 
38
64
  ## Regras para IA (IMPORTANTE)
39
65
 
@@ -544,13 +544,15 @@
544
544
  }
545
545
 
546
546
  /* === Base layer === */
547
- *, *::before, *::after {
548
- border-color: var(--border);
549
- }
547
+ @layer base {
548
+ *, *::before, *::after {
549
+ border-color: var(--border);
550
+ }
550
551
 
551
- body {
552
- background-color: var(--background);
553
- color: var(--foreground);
552
+ body {
553
+ background-color: var(--background);
554
+ color: var(--foreground);
555
+ }
554
556
  }
555
557
 
556
558
  /* === Animations === */
@@ -683,3 +685,96 @@ body {
683
685
  line-height: 3.75rem; /* 60px */
684
686
  letter-spacing: -0.05em;
685
687
  }
688
+
689
+ /* --- Display --- */
690
+ @utility display-md {
691
+ font-family: var(--font-sans);
692
+ font-size: 4rem; /* 64px */
693
+ font-weight: 700;
694
+ line-height: 5.125rem; /* 82px */
695
+ letter-spacing: -0.05em;
696
+ }
697
+
698
+ @utility display-md-light {
699
+ font-family: var(--font-sans);
700
+ font-size: 4rem; /* 64px */
701
+ font-weight: 300;
702
+ line-height: 5.125rem; /* 82px */
703
+ letter-spacing: -0.05em;
704
+ }
705
+
706
+ @utility display-lg {
707
+ font-family: var(--font-sans);
708
+ font-size: 4.5rem; /* 72px */
709
+ font-weight: 700;
710
+ line-height: 5.625rem; /* 90px */
711
+ letter-spacing: -0.05em;
712
+ }
713
+
714
+ @utility display-lg-light {
715
+ font-family: var(--font-sans);
716
+ font-size: 4.5rem; /* 72px */
717
+ font-weight: 300;
718
+ line-height: 5.625rem; /* 90px */
719
+ letter-spacing: -0.05em;
720
+ }
721
+
722
+ /* --- Button --- */
723
+ @utility button-sm {
724
+ font-family: var(--font-sans);
725
+ font-size: 0.75rem; /* 12px */
726
+ font-weight: 500;
727
+ line-height: 0.75rem; /* 12px — 1:1 ratio */
728
+ letter-spacing: 0em;
729
+ }
730
+
731
+ @utility button-md {
732
+ font-family: var(--font-sans);
733
+ font-size: 0.875rem; /* 14px */
734
+ font-weight: 500;
735
+ line-height: 0.875rem; /* 14px — 1:1 ratio */
736
+ letter-spacing: 0em;
737
+ }
738
+
739
+ @utility button-lg {
740
+ font-family: var(--font-sans);
741
+ font-size: 1rem; /* 16px */
742
+ font-weight: 500;
743
+ line-height: 1rem; /* 16px — 1:1 ratio */
744
+ letter-spacing: 0em;
745
+ }
746
+
747
+ /* --- UI --- */
748
+ @utility ui-label {
749
+ font-family: var(--font-sans);
750
+ font-size: 0.875rem; /* 14px */
751
+ font-weight: 500;
752
+ line-height: 0.875rem; /* 14px */
753
+ letter-spacing: 0em;
754
+ }
755
+
756
+ @utility ui-caption {
757
+ font-family: var(--font-sans);
758
+ font-size: 0.75rem; /* 12px */
759
+ font-weight: 400;
760
+ line-height: 1rem; /* 16px */
761
+ letter-spacing: 0em;
762
+ }
763
+
764
+ @utility ui-overline {
765
+ font-family: var(--font-sans);
766
+ font-size: 0.75rem; /* 12px */
767
+ font-weight: 500;
768
+ line-height: 1rem; /* 16px */
769
+ letter-spacing: 0.025em;
770
+ text-transform: uppercase;
771
+ }
772
+
773
+ /* --- Animations --- */
774
+ @utility animate-like-pop {
775
+ animation: like-pop 350ms cubic-bezier(0.22, 1, 0.36, 1);
776
+ }
777
+
778
+ @utility animate-like-burst {
779
+ animation: like-burst 500ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
780
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluencypassdevs/cycle",
3
- "version": "0.7.0",
3
+ "version": "0.7.2",
4
4
  "description": "Cycle Design System — UI component library by Fluencypass",
5
5
  "license": "MIT",
6
6
  "repository": {