Repository navigation
Shadcn UI - like UI #35
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
Changes from 9 commits
37df0c9
ea43237
47f2bdb
3a98aee
ef5cbb1
2b0c3f6
d73e9c7
9508906
45e1af8
46dc83a
c0cd77f
1eac456
2f13ab9
5e0a945
730eee3
4ac0936
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| <component name="ProjectRunConfigurationManager"> | ||
| <configuration default="false" name="Contacts (Full)" type="CompoundRunConfigurationType"> | ||
| <toRun name="Contacts" type="SpringBootApplicationConfigurationType" /> | ||
| <toRun name="Watch CSS" type="js.build_tools.npm" /> | ||
| <method v="2" /> | ||
| </configuration> | ||
| </component> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| <component name="ProjectRunConfigurationManager"> | ||
| <configuration default="false" name="Watch CSS" type="js.build_tools.npm" factoryName="npm"> | ||
| <package-json value="$PROJECT_DIR$/package.json" /> | ||
| <command value="run" /> | ||
| <scripts> | ||
| <script value="watch:css" /> | ||
| </scripts> | ||
| <node-interpreter value="project" /> | ||
| <envs /> | ||
| <method v="2" /> | ||
| </configuration> | ||
| </component> |
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| { | ||
| "name": "contacts", | ||
| "version": "1.0.0", | ||
| "private": true, | ||
| "scripts": { | ||
| "build:css": "tailwindcss -i src/main/resources/static/css/input.css -o src/main/resources/static/css/output.css --minify", | ||
| "watch:css": "tailwindcss -i src/main/resources/static/css/input.css -o src/main/resources/static/css/output.css --watch" | ||
| }, | ||
| "devDependencies": { | ||
| "@tailwindcss/cli": "^4.0.0", | ||
| "daisyui": "^5.0.0" | ||
| } | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,9 +3,22 @@ spring: | |
| name: Contacts | ||
| thymeleaf: | ||
| cache: false | ||
| prefix: file:src/main/resources/templates/ | ||
| devtools: | ||
| livereload: | ||
| enabled: true | ||
| restart: | ||
| additional-paths: src/main/resources/templates/ | ||
| exclude: "**/*.html" | ||
| web: | ||
| resources: | ||
| static-locations: | ||
| - file:src/main/resources/static/ | ||
| - classpath:/static/ | ||
| cache: | ||
| period: 0 | ||
| chain: | ||
| cache: false | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: cat -n src/main/resources/application.yamlRepository: yamcodes/contacts Length of output: 849 🏁 Script executed: find src/main/resources -name "application*.yaml" -o -name "application*.yml"Repository: yamcodes/contacts Length of output: 96 🏁 Script executed: find src -name "application*" -type f | head -20Repository: yamcodes/contacts Length of output: 96 🏁 Script executed: head -30 README.md 2>/dev/null || echo "No README found"Repository: yamcodes/contacts Length of output: 2370 🏁 Script executed: head -50 pom.xmlRepository: yamcodes/contacts Length of output: 1836 Profile-based configuration would be a best practice if deploying to production, but isn't necessary for this educational project. This is a learning application ( 🤖 Prompt for AI Agents |
||
| h2: | ||
| console: | ||
| enabled: true | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,65 @@ | ||
| @import "tailwindcss"; | ||
| @source "../../templates"; | ||
|
|
||
| @plugin "daisyui"; | ||
|
|
||
| /* noinspection CssUnknownProperty */ | ||
| @plugin "daisyui/theme" { | ||
|
Comment on lines
2
to
+7
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Verify stylelint config and at-rule handling for Tailwind directives.
set -euo pipefail
echo "== Locate stylelint config files =="
fd -HI 'stylelint|\.stylelintrc'
echo
echo "== Show at-rule related stylelint settings =="
rg -n -C3 'at-rule-no-unknown|scss/at-rule-no-unknown|ignoreAtRules|tailwind|daisyui'
echo
echo "== Confirm Tailwind directives present in CSS =="
rg -n '^\s*@source|^\s*@plugin' src/main/resources/static/css/input.cssRepository: yamcodes/contacts Length of output: 9695 🏁 Script executed: cat .stylelintrc.jsonRepository: yamcodes/contacts Length of output: 1067 Configure stylelint to recognize Tailwind v4 at-rules. The Example fix{
"extends": ["stylelint-config-standard-scss"],
"rules": {
"at-rule-no-unknown": [true, { "ignoreAtRules": ["tailwind", "layer", "source", "plugin", "import"] }],
...
}
}🧰 Tools🪛 Stylelint (17.4.0)[error] 2-2: Unexpected unknown at-rule "@source" (scss/at-rule-no-unknown) (scss/at-rule-no-unknown) [error] 4-4: Unexpected unknown at-rule "@plugin" (scss/at-rule-no-unknown) (scss/at-rule-no-unknown) [error] 7-7: Unexpected unknown at-rule "@plugin" (scss/at-rule-no-unknown) (scss/at-rule-no-unknown) 🤖 Prompt for AI Agents |
||
| name: "shadcn"; | ||
| default: true; | ||
| color-scheme: light; | ||
|
|
||
| /* Surfaces */ | ||
| --color-base-100: oklch(100% 0 0); | ||
| --color-base-200: oklch(97.8% 0 0); | ||
| --color-base-300: oklch(94.5% 0 0); | ||
| --color-base-content: oklch(14.1% 0 0); | ||
|
|
||
| /* Primary — zinc-900 */ | ||
| --color-primary: oklch(14.1% 0 0); | ||
| --color-primary-content: oklch(100% 0 0); | ||
|
|
||
| /* Secondary — zinc-100 */ | ||
| --color-secondary: oklch(94.5% 0 0); | ||
| --color-secondary-content: oklch(20.5% 0 0); | ||
|
|
||
| /* Accent — same as primary */ | ||
| --color-accent: oklch(14.1% 0 0); | ||
| --color-accent-content: oklch(100% 0 0); | ||
|
|
||
| /* Neutral */ | ||
| --color-neutral: oklch(27.4% 0 0); | ||
| --color-neutral-content: oklch(100% 0 0); | ||
|
|
||
| /* States */ | ||
| --color-error: oklch(57.7% 0.245 27.3); | ||
| --color-error-content: oklch(100% 0 0); | ||
| --color-warning: oklch(76.9% 0.188 70.1); | ||
| --color-warning-content: oklch(14.1% 0 0); | ||
| --color-success: oklch(64.8% 0.15 160); | ||
| --color-success-content: oklch(100% 0 0); | ||
| --color-info: oklch(60% 0.12 230); | ||
| --color-info-content: oklch(100% 0 0); | ||
|
|
||
| /* Shape — matches shadcn's rounded-md */ | ||
| --radius-selector: 0.375rem; | ||
| --radius-field: 0.375rem; | ||
| --radius-box: 0.5rem; | ||
|
|
||
| /* Flat — no depth/emboss effects */ | ||
| --depth: 0; | ||
| --noise: 0; | ||
|
|
||
| --border: 1px; | ||
|
|
||
| /* Button — match shadcn sizing and weight */ | ||
| --size-field: 0.225rem; /* × 10 = 2.25rem = h-9, shadcn default */ | ||
| --fontsize: 0.875rem; | ||
| } | ||
|
|
||
| @layer components { | ||
| .btn { | ||
| font-weight: 500; | ||
| letter-spacing: 0; | ||
| } | ||
| } | ||
Uh oh!
There was an error while loading. Please reload this page.