<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Fredy Andrei</title>
    <description>The latest articles on Forem by Fredy Andrei (@fredy).</description>
    <link>https://forem.com/fredy</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F609838%2Fbc3ac0a6-8c2e-4c51-8fdd-83bd3d6ec159.jpeg</url>
      <title>Forem: Fredy Andrei</title>
      <link>https://forem.com/fredy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/fredy"/>
    <language>en</language>
    <item>
      <title>Top 5 Free AI Website Builders to Try in 2025 🚀</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Thu, 27 Mar 2025 14:13:40 +0000</pubDate>
      <link>https://forem.com/fredy/top-5-free-ai-website-builders-to-try-in-2025-jhk</link>
      <guid>https://forem.com/fredy/top-5-free-ai-website-builders-to-try-in-2025-jhk</guid>
      <description>&lt;p&gt;If you're looking to build a website in minutes, AI website builders have made it easier than ever. Whether you're a startup founder, freelancer, or small business owner, these tools can save you time and effort while still delivering a professional look.&lt;/p&gt;

&lt;p&gt;While AI isn’t quite at the level of replacing human designers yet, it does an amazing job at handling the grunt work—helping you create a great starting point that you can tweak to your liking.&lt;/p&gt;

&lt;p&gt;Here are the top 5 free AI website builders to check out in 2025:&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://www.loopple.com/ai-website-builder/" rel="noopener noreferrer"&gt;1. Loopple AI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.loopple.com/ai-website-builder/" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1m2d8yij71649noebvnj.png" alt="Loopple AI" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Loopple AI is a fantastic tool for those who want a structured, editable website layout in record time. Unlike rigid templates, it gives you flexible components that can be customized to fit your needs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Makes It Stand Out?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;✅ Generates a full website layout in under 30 seconds.&lt;br&gt;
✅ Free plan available, with premium options for advanced features.&lt;br&gt;
✅ Free AI Assistant for customization.&lt;br&gt;
✅ Free .loopple.com. domain.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💡 Best For:&lt;/strong&gt; Anyone who needs an AI builder that includes functionality from the start.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try Loopple AI for Free 👉&lt;/strong&gt; &lt;strong&gt;&lt;a href="https://www.loopple.com/ai-website-builder/" rel="noopener noreferrer"&gt;loopple.com/ai&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://www.wix.com/ai-website-builder/" rel="noopener noreferrer"&gt;2. Wix AI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.wix.com/ai-website-builder/" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fih4y32k27hlypxn5rvh1.png" alt="Wix AI" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wix has been a go-to for website building, and its AI-powered site generator takes things to the next level. It asks you questions about your needs and tailors a website accordingly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Makes It Stand Out?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;✅ Creates a personalized website based on your answers.&lt;br&gt;
✅ Offers a wide range of design styles and branding options.&lt;br&gt;
✅ Built-in eCommerce and booking features for businesses.&lt;br&gt;
✅ Free plan available, with paid plans unlocking more customization.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💡 Best For:&lt;/strong&gt; Beginners who want an AI-assisted design process that’s easy to tweak.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try Wix AI for Free 👉&lt;/strong&gt; &lt;strong&gt;&lt;a href="https://www.wix.com/ai-website-builder" rel="noopener noreferrer"&gt;wix.com/ai-website-builder&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://www.hostinger.com/ai-website-builder/" rel="noopener noreferrer"&gt;3. Hostinger AI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.hostinger.com/ai-website-builder/" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk8brgh6au0ih4wj44a87.png" alt="Hostinger AI" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hostinger AI is a fast, no-fuss solution for people who need a simple business website without overcomplicating things. If you just need a clean, professional-looking site, this tool has you covered.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Makes It Stand Out?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;✅ AI-generated websites that are ready to launch quickly.&lt;br&gt;
✅ Optimized layouts for small business needs.&lt;br&gt;
✅ Seamless integration with Hostinger’s hosting services.&lt;br&gt;
✅ Free to generate a site, but editing requires a paid plan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💡 Best For:&lt;/strong&gt; Small business owners who need a fast, hassle-free website.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try Hostinger AI for Free 👉&lt;/strong&gt; &lt;strong&gt;&lt;a href="https://www.hostinger.com/ai-website-builder" rel="noopener noreferrer"&gt;hostinger.com/ai-website-builder&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://10web.io" rel="noopener noreferrer"&gt;4. 10Web AI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.10web.io" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9x50xdaqqh5t9f7xwyn3.png" alt="10Web AI" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;10Web AI stands out by not only designing a site but also adding functional elements like forms, galleries, and booking sections—without you lifting a finger.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Makes It Stand Out?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;✅ Adds interactive elements automatically (like forms, galleries, etc.).&lt;br&gt;
✅ Optimized for speed and SEO, making it great for ranking online.&lt;br&gt;
✅ Great for portfolios, events, and service-based websites.&lt;br&gt;
✅ Free to generate a site, but editing requires a premium plan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💡 Best For:&lt;/strong&gt; Developers and designers who want AI assistance but still need control over customization.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try 10Web AI for Free 👉&lt;/strong&gt; &lt;strong&gt;&lt;a href="https://10web.io/" rel="noopener noreferrer"&gt;10web.io&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://www.durable.co" rel="noopener noreferrer"&gt;5. Durable AI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.durable.co" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiz42v9abqzvfha95os6d.png" alt="Durable AI" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Durable AI is built for pure speed, letting you generate a full website in just 30 seconds. If you need a quick, no-frills website, this is a great option.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Makes It Stand Out?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;✅ Instantly generates a professional-looking website.&lt;br&gt;
✅ Provides basic customization options without overwhelming you.&lt;br&gt;
✅ Best for landing pages and small business sites.&lt;br&gt;
✅ Free version available, with more features in paid plans.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💡 Best For:&lt;/strong&gt; Entrepreneurs and business owners who need a fast, AI-generated website without extra hassle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try Durable AI for Free 👉&lt;/strong&gt; &lt;strong&gt;&lt;a href="https://durable.co/" rel="noopener noreferrer"&gt;durable.co&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;🎯 Final Thoughts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI website builders are making it easier than ever to get a site online without coding or design skills. While they don’t eliminate the need for customization, they take care of the hard work, so you can focus on branding, content, and fine-tuning.&lt;/p&gt;

&lt;p&gt;💡 If you want flexibility, &lt;strong&gt;Loopple AI&lt;/strong&gt; is a solid choice.&lt;br&gt;
🎨 If you value ease of use, &lt;strong&gt;Wix AI&lt;/strong&gt; is the way to go.&lt;br&gt;
⚡ If speed is your priority, &lt;strong&gt;Durable AI&lt;/strong&gt; is unbeatable.&lt;/p&gt;

&lt;p&gt;No matter what you need, one of these 5 AI website builders can help you get online quickly and effortlessly in 2025.&lt;/p&gt;

&lt;p&gt;👉 Have you tried any of these AI website builders? Drop your thoughts in the comments!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>productivity</category>
      <category>design</category>
    </item>
    <item>
      <title>I tested the most popular AI website builders—here’s what I found ✨</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Tue, 25 Mar 2025 14:14:01 +0000</pubDate>
      <link>https://forem.com/fredy/i-tested-the-most-popular-ai-website-builders-heres-what-i-found-4on8</link>
      <guid>https://forem.com/fredy/i-tested-the-most-popular-ai-website-builders-heres-what-i-found-4on8</guid>
      <description>&lt;p&gt;I wanted to see how far AI website builders have come, so I tested some of the most well-known free options. Most let you generate a site without paying, but some, like Hostinger and 10Web, lock editing behind a paywall, which is frustrating if you're just exploring.&lt;/p&gt;

&lt;p&gt;For my test, I used this prompt:&lt;br&gt;&lt;br&gt;
&lt;em&gt;“Generate a presentation website for my pastry business called Dolce Pastry, also, I want it to have a colorful theme.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Overall, AI tools are great for quickly generating a starting point, they work best as a time-saver for getting an initial structure in place, but you’ll likely want to refine the design and content to better fit your needs.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;Loopple AI&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;💰 Pricing: Mostly Free, paid plans for advanced features like custom domain or AI Credits.&lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Pros:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fastest tool I tested—site was generated in under 30 seconds.&lt;/li&gt;
&lt;li&gt;Gives you a structured, editable layout without forcing a rigid template.&lt;/li&gt;
&lt;li&gt;Fast editing process with the AI Assistant.&lt;/li&gt;
&lt;li&gt;Free subdomain available.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;❌ &lt;strong&gt;Cons:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;More focused on functionality than pure aesthetics—you may need to tweak the visuals.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔎 &lt;strong&gt;Verdict:&lt;/strong&gt; Best for builders who want an AI-generated structure but still need flexibility to customize.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.wix.com/ai-website-builder" rel="noopener noreferrer"&gt;Wix AI&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;💰 Pricing: Free to generate, paid plans start at $6/month.&lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Pros:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Asks smart follow-up questions to refine the design.&lt;/li&gt;
&lt;li&gt;Strong integration with other Wix tools (e.g., booking, etc).&lt;/li&gt;
&lt;li&gt;Generally polished and easy to use.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;❌ &lt;strong&gt;Cons:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designs can feel a bit generic/safe—lacking personality.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔎 &lt;strong&gt;Verdict:&lt;/strong&gt; Good for beginners who want a no-fuss solution with minimal effort.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://www.hostinger.com/ai-website-builder" rel="noopener noreferrer"&gt;Hostinger AI&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;💰 Pricing: Free to generate, editing requires a paid plan.&lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Pros:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gets the basics right—no major issues with structure or layout.&lt;/li&gt;
&lt;li&gt;Simple and efficient for small business sites.&lt;/li&gt;
&lt;li&gt;Reliable customer support if you run into issues.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;❌ &lt;strong&gt;Cons:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Feels like a repackaged template rather than truly AI-generated.&lt;/li&gt;
&lt;li&gt;Editing experience is limited unless you pay.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔎 &lt;strong&gt;Verdict:&lt;/strong&gt; Decent if you need a basic site, but not worth it for customization.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://10web.io/" rel="noopener noreferrer"&gt;10Web&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;💰 Pricing: Free to generate, $15/month for full editing access.&lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Pros:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Handles functionality well—correctly adds forms and sections based on the prompt.&lt;/li&gt;
&lt;li&gt;Onboarding is smooth.&lt;/li&gt;
&lt;li&gt;Great for those who want a simple website with minimal customization hassle.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;❌ &lt;strong&gt;Cons:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designs feel very “cookie-cutter,” lacking uniqueness.&lt;/li&gt;
&lt;li&gt;The paywall for editing makes it hard to justify over other options.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔎 &lt;strong&gt;Verdict:&lt;/strong&gt; Does the job, but the cost isn’t worth it unless you're locked into their ecosystem.  &lt;/p&gt;




&lt;p&gt;If you’ve tried any of these (or other AI site builders), what was your experience like?&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>productivity</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Shadcn UI Admin Dashboard Template (MIT License)</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Thu, 20 Feb 2025 14:21:38 +0000</pubDate>
      <link>https://forem.com/fredy/shadcn-ui-admin-dashboard-template-mit-license-3ec</link>
      <guid>https://forem.com/fredy/shadcn-ui-admin-dashboard-template-mit-license-3ec</guid>
      <description>&lt;p&gt;Presentation: &lt;a href="https://horizon-ui.com/shadcn-ui" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-ui&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Live demo: &lt;a href="https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Download on Github: &lt;a href="https://github.com/horizon-ui/shadcn-nextjs-boilerplate" rel="noopener noreferrer"&gt;https://github.com/horizon-ui/shadcn-nextjs-boilerplate&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>react</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>Free Admin Dashboard built with Shadcn UI and Tailwind CSS</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Tue, 11 Feb 2025 14:00:48 +0000</pubDate>
      <link>https://forem.com/fredy/free-admin-dashboard-built-with-shadcn-ui-and-tailwind-css-2akj</link>
      <guid>https://forem.com/fredy/free-admin-dashboard-built-with-shadcn-ui-and-tailwind-css-2akj</guid>
      <description>&lt;p&gt;Presentation: &lt;a href="https://horizon-ui.com/shadcn-ui" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-ui&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Live demo: &lt;a href="https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Download on Github: &lt;a href="https://github.com/horizon-ui/shadcn-nextjs-boilerplate" rel="noopener noreferrer"&gt;https://github.com/horizon-ui/shadcn-nextjs-boilerplate&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>showdev</category>
      <category>react</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>Free ChatGPT AI Admin Dashboard Template (Shadcn UI + Tailwind CSS)</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Thu, 06 Feb 2025 13:43:06 +0000</pubDate>
      <link>https://forem.com/fredy/free-chatgpt-ai-admin-dashboard-template-shadcn-ui-tailwind-css-303f</link>
      <guid>https://forem.com/fredy/free-chatgpt-ai-admin-dashboard-template-shadcn-ui-tailwind-css-303f</guid>
      <description>&lt;p&gt;Hey guys,&lt;/p&gt;

&lt;p&gt;I made a Free ChatGPT AI Admin Dashboard Template for NextJS using Shadcn UI! Use it for free!&lt;/p&gt;

&lt;p&gt;Presentation: &lt;a href="https://horizon-ui.com/shadcn-ui" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-ui&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Live demo: &lt;a href="https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Download on Github: &lt;a href="https://github.com/horizon-ui/shadcn-nextjs-boilerplate" rel="noopener noreferrer"&gt;https://github.com/horizon-ui/shadcn-nextjs-boilerplate&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>showdev</category>
      <category>react</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>I made an admin dashboard for NextJS using Shadcn UI! Use it for free! ⚡️</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Tue, 04 Feb 2025 15:44:40 +0000</pubDate>
      <link>https://forem.com/fredy/i-made-an-admin-dashboard-for-nextjs-using-shadcn-ui-use-it-for-free-1f5</link>
      <guid>https://forem.com/fredy/i-made-an-admin-dashboard-for-nextjs-using-shadcn-ui-use-it-for-free-1f5</guid>
      <description>&lt;p&gt;Hey guys,&lt;/p&gt;

&lt;p&gt;I made an admin dashboard for NextJS using Shadcn UI! Use it for free!&lt;/p&gt;

&lt;p&gt;Presentation: &lt;a href="https://horizon-ui.com/shadcn-ui" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-ui&lt;/a&gt;&lt;br&gt;
Live demo: &lt;a href="https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main" rel="noopener noreferrer"&gt;https://horizon-ui.com/shadcn-nextjs-boilerplate/dashboard/main&lt;/a&gt;&lt;br&gt;
Download on Github: &lt;a href="https://github.com/horizon-ui/shadcn-nextjs-boilerplate" rel="noopener noreferrer"&gt;https://github.com/horizon-ui/shadcn-nextjs-boilerplate&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>showdev</category>
      <category>nextjs</category>
      <category>shadcn</category>
    </item>
    <item>
      <title>Top 5+ Free AI Website Builders for 2025 ⚡️</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Mon, 06 Jan 2025 14:39:09 +0000</pubDate>
      <link>https://forem.com/fredy/top-5-free-ai-website-builders-for-2025-31cc</link>
      <guid>https://forem.com/fredy/top-5-free-ai-website-builders-for-2025-31cc</guid>
      <description>&lt;p&gt;Building a website is easier than ever with AI-powered website builders. These tools use artificial intelligence to help you create professional sites without coding or design skills. Whether it's a blog, portfolio, or business site, you can choose from free templates and features to get started quickly.&lt;/p&gt;

&lt;p&gt;Here are the top free AI website builders for 2025 to create a site in minutes:&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;strong&gt;1. Loopple AI Website Builder&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpx8mt5ysj0088tjchad5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpx8mt5ysj0088tjchad5.png" alt="Loopple AI Website Builder" width="800" height="445"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;strong&gt;Loopple AI Website Builder&lt;/strong&gt;&lt;/a&gt; is a free AI tool that lets you create a website in under 30 seconds with a simple prompt. Perfect for anyone looking to set up a site quickly without coding or design skills.&lt;/p&gt;

&lt;p&gt;Just enter your prompt, adjust your preferences, and let the AI do the work. Customize and launch your site effortlessly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;strong&gt;loopple.com/ai-website-builder&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;2. Dorik AI&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo5k7i7evevjlvzvdcdf9.png" alt="Dorik AI" width="800" height="459"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;Dorik AI&lt;/strong&gt;&lt;/a&gt; Dorik AI is an all-in-one platform that helps you create stunning, professional websites in minutes without any design or coding skills. Simply provide a prompt, and Dorik AI will generate a fully designed and structured website for you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;dorik.com&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;3. Durable AI&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5sjh040n0495k9qyeypz.png" alt="Durable AI" width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;Durable AI&lt;/strong&gt;&lt;/a&gt; is a new AI website builder designed for small businesses and freelancers. It creates complete websites in seconds, prioritizing speed and simplicity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;durable.co&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;4. Gamma App&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpaz4x8saby0dc7uzma1i.png" alt="Gamma App" width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;Gamma App&lt;/strong&gt;&lt;/a&gt; is a simple website builder that customizes your site based on your needs. It asks a few questions and then creates a site tailored to your preferences.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;gamma.app&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;5. 10web.io&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp58w9bucylkv2d328wad.png" alt="10web.io" width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;10web.io&lt;/strong&gt;&lt;/a&gt; provides an AI-powered platform for creating WordPress sites quickly. It features automated installation and an AI assistant for content generation and editing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;10web.io&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Each free AI website builder has unique features to suit different needs. Whether you want a quick portfolio, a full WordPress experience, or an AI design assistant, there’s a tool for every goal and budget.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>resources</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Best 5+ Free AI Website Builders for 2024 ⚡️</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Fri, 08 Nov 2024 13:25:44 +0000</pubDate>
      <link>https://forem.com/fredy/best-5-free-ai-website-builders-for-2024-52ga</link>
      <guid>https://forem.com/fredy/best-5-free-ai-website-builders-for-2024-52ga</guid>
      <description>&lt;p&gt;Creating a website has never been easier, thanks to the rise of AI-powered website builders. These tools use artificial intelligence to simplify the design process, making it possible for anyone to create a professional-looking site without any coding or design experience. Whether you're starting a blog, launching a portfolio, or building a business site, these AI-powered website builders offer a range of templates and features that can meet your needs for free.&lt;/p&gt;

&lt;p&gt;Here’s a look at some of the best free AI website builders for 2024, perfect for anyone looking to build a website in minutes:&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;strong&gt;1. Loopple AI Website Builder&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3hfl5ouq62l00e9xaucc.png" alt="Loopple AI Website Builder" width="800" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;strong&gt;Loopple AI Website Builder&lt;/strong&gt;&lt;/a&gt; is a free AI tool to create websites in under 30 seconds by inputting a simple prompt. This tool is designed for those seeking a quick and efficient way to establish an online presence without coding or design skills.&lt;/p&gt;

&lt;p&gt;Input your prompt, set preferences, and let our AI handle the rest. No coding or design needed—customize and launch your site fast.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://loopple.com/ai-website-builder/?ref=dev-to" rel="noopener noreferrer"&gt;&lt;strong&gt;loopple.com/ai-website-builder&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;2. Dorik AI&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo5k7i7evevjlvzvdcdf9.png" alt="Dorik AI" width="800" height="459"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;Dorik AI&lt;/strong&gt;&lt;/a&gt; is an all-in-one website building platform that empowers users to create beautiful, professional websites in minutes without the need for design or coding experience.&lt;/p&gt;

&lt;p&gt;By providing a simple prompt, Dorik AI generates a complete website, handling the design and structure for you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://dorik.com/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;dorik.com&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;3. Durable AI&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5sjh040n0495k9qyeypz.png" alt="Durable AI" width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;Durable AI&lt;/strong&gt;&lt;/a&gt; is a recent addition to the AI website builder landscape, specifically aimed at creating websites for small businesses and freelancers. Durable's AI generates websites with a focus on speed, creating an entire site within seconds.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://durable.co/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;durable.co&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;4. Gamma App&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpaz4x8saby0dc7uzma1i.png" alt="Gamma App" width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;Gamma App&lt;/strong&gt;&lt;/a&gt; is a straightforward website builder that tailors your site to your specific needs. Gamma App guides you through a few questions, then creates a custom site based on your preferences and requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://gamma.app/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;gamma.app&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;5. 10web.io&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp58w9bucylkv2d328wad.png" alt="10web.io" width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;10web.io&lt;/strong&gt;&lt;/a&gt; offers an AI-powered WordPress platform that allows users to create WordPress sites quickly and easily. It provides automated WordPress installation and an AI assistant that helps generate and edit site content.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try if for Free&lt;/strong&gt; 👉 &lt;a href="https://10web.io/ai-website-builder/?ref=loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;&lt;strong&gt;10web.io&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Each of these free AI website builders offers unique features catering to different user needs. Whether you're looking for a quick solution for a portfolio, a comprehensive WordPress experience, or an AI-powered design assistant, there’s a tool here for every requirement and budget.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>website</category>
      <category>ai</category>
      <category>showdev</category>
    </item>
    <item>
      <title>I made an AI Website Builder that generates websites from a single prompt ⚡️</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Sat, 02 Nov 2024 10:53:36 +0000</pubDate>
      <link>https://forem.com/fredy/i-made-an-ai-website-builder-that-generates-websites-from-a-single-prompt-411p</link>
      <guid>https://forem.com/fredy/i-made-an-ai-website-builder-that-generates-websites-from-a-single-prompt-411p</guid>
      <description>&lt;p&gt;Hi everyone,&lt;/p&gt;

&lt;p&gt;Today I just launched Loopple AI Website Builder which helps you create websites from a single prompt (soon you will be able to create your website also from documents). I am keen to find out what you guys think and how can I improve it.&lt;/p&gt;

&lt;p&gt;Link: &lt;a href="https://www.loopple.com/ai-website-builder" rel="noopener noreferrer"&gt;loopple.com/ai-website-builder&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thank you!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>buildinpublic</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Top 5+ Free Tailwind CSS Component Libraries for 2024</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Fri, 27 Sep 2024 12:36:33 +0000</pubDate>
      <link>https://forem.com/fredy/top-5-free-tailwind-css-component-libraries-for-2024-117b</link>
      <guid>https://forem.com/fredy/top-5-free-tailwind-css-component-libraries-for-2024-117b</guid>
      <description>&lt;p&gt;Tailwind CSS is one of the biggest CSS frameworks, and since Tailwind + React is a fan-favorite stack, we decided to highlight 5 of the best component libraries, based on Tailwind. Here are 5 libraries, each one with their unique values and features:&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://horizon-ui.com?ref=devto-article" rel="noopener noreferrer"&gt;1. Horizon UI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://horizon-ui.com?ref=devto-article" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmdbijwk9at1g6igi3r6v.png" alt="horizon ui"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Horizon UI&lt;/strong&gt; is an all-inclusive component library designed to significantly reduce the time and effort required for web development projects. By using Horizon UI, instead of starting from scratch, developers can skip from up to 80 hours when it comes to the design of the app and 240 hours of coding all pages using NextJS. The library also simplifies complex tasks, providing UI components and snippets for Stripe, database manipulation, and authentication. &lt;/p&gt;

&lt;p&gt;Learn more on &lt;a href="https://horizon-ui.com?ref=devto-article" rel="noopener noreferrer"&gt;horizon-ui.com&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://ui.shadcn.com/" rel="noopener noreferrer"&gt;2. Shadcn UI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://ui.shadcn.com/" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6v92hoo44nl6y0njj9g5.png" alt="shadcn ui"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Shadcn UI&lt;/strong&gt; is another unstyled component library designed for React that focuses on flexibility and customization. Built on top of Tailwind CSS, Shadcn UI provides a range of accessible, headless components that are fit to build modern UIs. What Shadcn UI does best is let users create their own themes and very easily customize the themes that it offers.&lt;/p&gt;

&lt;p&gt;Choose your components here: &lt;a href="https://ui.shadcn.com/" rel="noopener noreferrer"&gt;https://ui.shadcn.com/&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://flowbite.com" rel="noopener noreferrer"&gt;3. Flowbite&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffw5xjonoa1dghp74dqwr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffw5xjonoa1dghp74dqwr.png" alt="flowbite"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Flowbite&lt;/strong&gt; is a versatile, open-source component library for Tailwind CSS, providing developers with over 600+ ready-to-use, fully responsive components like buttons, modals, and navigation bars. Flowbite is designed to enhance the utility-first approach of Tailwind CSS while offering the convenience of pre-built components, making it an excellent choice for developers seeking simplicity and speed in their web development process.&lt;/p&gt;

&lt;p&gt;Check out more Flowbite components here: &lt;a href="https://flowbite.com" rel="noopener noreferrer"&gt;https://flowbite.com/&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://www.radix-ui.com/" rel="noopener noreferrer"&gt;4. Radix UI&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flbm55e7ku4domvjxr9mz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flbm55e7ku4domvjxr9mz.png" alt="radix ui"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Radix UI&lt;/strong&gt; takes a different approach - it offers a collection of low-level, unstyled components specifically built for React applications. These headless components, called primitives, are designed with accessibility best practices in mind, allowing developers maximum flexibility to create custom-styled components for their needs. Radix was made for developers looking to build their own design systems, providing the tools needed to build high-quality, accessible web applications.&lt;/p&gt;

&lt;p&gt;You can try out the Radix UI here: &lt;strong&gt;&lt;a href="https://www.radix-ui.com/" rel="noopener noreferrer"&gt;https://www.radix-ui.com/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://www.material-tailwind.com/" rel="noopener noreferrer"&gt;5. Material Tailwind&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.material-tailwind.com/" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv6jsyfossq6m5tsz74v4.png" alt="material tailwind"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Material Tailwind&lt;/strong&gt; combines the sleek, modern aesthetic of Material Design with the utility-first approach of Tailwind CSS, offering over 460+ ready-to-use components like buttons, inputs, cards, and tables. This library enables developers to code up to 10x faster, leveraging the efficiency of Tailwind CSS while maintaining the design principles of Material Design. Material Tailwind is ideal for those seeking a balance between structured design and flexibility, providing a robust solution for building visually appealing, responsive web applications.&lt;/p&gt;

&lt;p&gt;Here is the link for Material Tailwind: &lt;a href="https://www.material-tailwind.com/" rel="noopener noreferrer"&gt;https://www.material-tailwind.com/&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;A component library can help a team develop their app much quicker, and also keep the code cleaner. These 5 libraries are meant to be a tool to guide the direction of an app's design and to maintain uniformity.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>showdev</category>
      <category>react</category>
      <category>tailwindcss</category>
    </item>
    <item>
      <title>Tutorial: How to create a ReactJS / NextJS Chart component using Shadcn UI</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Thu, 05 Sep 2024 12:52:39 +0000</pubDate>
      <link>https://forem.com/fredy/tutorial-how-to-create-a-reactjs-nextjs-chart-component-using-shadcn-ui-3o4b</link>
      <guid>https://forem.com/fredy/tutorial-how-to-create-a-reactjs-nextjs-chart-component-using-shadcn-ui-3o4b</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;a href="https://ui.shadcn.com?ref=horizon-ui.com" rel="noopener noreferrer"&gt;Shadcn UI&lt;/a&gt;&lt;/strong&gt; is a utility-first CSS library, made especially for React with the purpose of helping developers quickly create beautiful and easy-to-use UIs. It offers a large selection of components that simplify the process of building the front end of any app, website, or dashboard. Additionally, it is one of the fastest-growing libraries and it is based on the trending &lt;strong&gt;&lt;a href="https://radix-ui.com?ref=horizon-ui.com" rel="noopener noreferrer"&gt;Radix UI&lt;/a&gt;&lt;/strong&gt;! &lt;/p&gt;

&lt;p&gt;The following are a few advantages of using Shadcn UI:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Efficiency:&lt;/strong&gt; The Shadcn library gives you the option to pick and choose the elements you are going to use in your app, having a CLI through which you can download only the components you need, therefore having a lighter and more organized app.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Speed:&lt;/strong&gt; The components not only follow the pre-defined class system of Tailwind CSS that most developers are accustomed to but are also structured so that users can easily combine and modify them to fit their needs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Consistency:&lt;/strong&gt; Developers can make sure that the design is the same across all pages and components by using the theme styling offered by the library.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Customizability:&lt;/strong&gt; Since the Shadcn UI components are unstyled and follow a simple theme, you can easily add your style or adapt the components to your existing app's theme. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most apps now have data displayed by charts, even if we speak of an admin dashboard or a stock exchange main page. This being said, here is how to make a chart card using Shadcn UI. 👇🏽&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Step 1: Setting up the Tailwind CSS config file&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Let’s set up our project by creating the Tailwind CSS config file and adding base CSS. Here we will use some colors, shadows, and more from the &lt;strong&gt;&lt;a href="https://horizon-ui.com/shadcn-ui?ref=dev.to"&gt;Horizon UI&lt;/a&gt;&lt;/strong&gt; template for Shadcn UI.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;tailwind.config.ts&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;config&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;darkMode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;class&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
  &lt;span class="na"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./app/**/*.{js,ts,jsx,tsx,mdx}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./components/**/*.{js,ts,jsx,tsx,mdx}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="c1"&gt;// Or if using `src` directory:&lt;/span&gt;
    &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./src/**/*.{js,ts,jsx,tsx,mdx}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
  &lt;span class="p"&gt;],&lt;/span&gt;
  &lt;span class="na"&gt;prefix&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;''&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;theme&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;extend&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;fontFamily&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="na"&gt;jakarta&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Inter&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;sans-serif&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="na"&gt;poppins&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Poppins&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;sans-serif&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
      &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;300px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;300px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;500px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;500px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;sidebar&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;calc(100vh - 32px)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
      &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="na"&gt;colors&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="na"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--border))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--input))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;ring&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--ring))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;background&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--background))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;primary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--primary))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--primary-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;secondary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--secondary))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--secondary-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;destructive&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--destructive))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--destructive-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;muted&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--muted))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--muted-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;accent&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--accent))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--accent-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;popover&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--popover))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--popover-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;DEFAULT&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--card))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--card-foreground))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
          &lt;span class="na"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hsl(var(--border))&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
      &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="na"&gt;borderRadius&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="na"&gt;lg&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;var(--radius)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;md&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;calc(var(--radius) - 2px)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;sm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;calc(var(--radius) - 4px)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
      &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="na"&gt;keyframes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;accordion-down&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;0&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
          &lt;span class="na"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;var(--radix-accordion-content-height)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;accordion-up&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="na"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;var(--radix-accordion-content-height)&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
          &lt;span class="na"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;0&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
      &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="na"&gt;animation&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;accordion-down&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;accordion-down 0.2s ease-out&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;accordion-up&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;accordion-up 0.2s ease-out&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="nx"&gt;config&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;




&lt;p&gt;&lt;code&gt;styles/global.css&lt;/code&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;


&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="nd"&gt;import&lt;/span&gt; &lt;span class="nf"&gt;url&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;https://fonts.googleapis.com/css2?family=Inter:wght@100..900&amp;amp;display=swap&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="nd"&gt;tailwind&lt;/span&gt; &lt;span class="nx"&gt;base&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="nd"&gt;tailwind&lt;/span&gt; &lt;span class="nx"&gt;components&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="nd"&gt;tailwind&lt;/span&gt; &lt;span class="nx"&gt;utilities&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nx"&gt;root&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="nx"&gt;px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="nx"&gt;F172A&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
    &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;background&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;muted&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;96.1&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;muted&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;215.4&lt;/span&gt; &lt;span class="mf"&gt;16.3&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;46.9&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;card&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;popover&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;popover&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;214.3&lt;/span&gt; &lt;span class="mf"&gt;31.8&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;91.4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;214.3&lt;/span&gt; &lt;span class="mf"&gt;31.8&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;91.4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;98&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;secondary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;96.1&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;secondary&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;accent&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;96.1&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;accent&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;destructive&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;destructive&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;98&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;ring&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;52525&lt;/span&gt;&lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="nx"&gt;D4D4D8&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;030712&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;71717&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="nx"&gt;a1a1aa&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;dark&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;background&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;muted&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;96.1&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;muted&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;215.4&lt;/span&gt; &lt;span class="mf"&gt;16.3&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;46.9&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;card&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;popover&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;popover&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;  &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;  &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;secondary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;96.1&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;secondary&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;222.2&lt;/span&gt; &lt;span class="mf"&gt;47.4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;11.2&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;accent&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;240&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;accent&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;222.2&lt;/span&gt; &lt;span class="mf"&gt;47.4&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mf"&gt;11.2&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;destructive&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;destructive&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;foreground&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;210&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;98&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;ring&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;71717&lt;/span&gt;&lt;span class="nx"&gt;A&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;030712&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;71717&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="nx"&gt;chart&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="nx"&gt;a1a1aa&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;body&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;font&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;family&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Inter&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sans&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;serif&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;html&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;scroll&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;behavior&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;smooth&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nx"&gt;font&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;family&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Inter&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sans&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;serif&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;scheme&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;unset&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nx"&gt;important&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Step 2: Import Shadcn chart components via CLI&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Simply use the following command in your terminal to add the Shadcn Chart component :&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

npx shadcn@latest add chart


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Step 3: Import the components provided by Shadcn and add them to your component&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;In this example, we are going to create a bar chart, which has a custom tooltip when the user hovers the cart, as well as a cartesian grid background. Below the chart, we will later add an axis to better display the timespan of the data.&lt;/p&gt;

&lt;p&gt;To adapt the chart to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First, import the following components:&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;

&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;ChartConfig&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// this is the type for typescript users!&lt;/span&gt;
  &lt;span class="nx"&gt;ChartContainer&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;ChartTooltip&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;ChartTooltipContent&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@/components/ui/chart&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;


&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;Bar&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;BarChart&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;CartesianGrid&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;XAxis&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;recharts&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;For the chart to be adapted to the theme, we have to write some simple, but effective config:&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

const chartConfig = {
  desktop: {
    label: 'Desktop',
    color: 'var(--chart-1)'
  },
  mobile: {
    label: 'Mobile',
    color: 'var(--chart-2)'
  }
} satisfies ChartConfig; // this is the type for typescript users!


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;This is the structure of the default chart, without any addons. It follows the data in the example:&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;chartData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;January&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;186&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;80&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;February&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;305&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;March&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;237&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;120&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;April&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;73&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;190&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;May&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;209&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;130&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;June&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;214&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;140&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;];&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;BarChartComponent&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;ChartContainer&lt;/span&gt;
      &lt;span class="nx"&gt;className&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;aspect-auto h-[300px] xl:h-[200px] 2xl:h-[250px] w-full&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;config&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;chartConfig&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;BarChart&lt;/span&gt; &lt;span class="nx"&gt;accessibilityLayer&lt;/span&gt; &lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;chartData&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;Bar&lt;/span&gt; &lt;span class="nx"&gt;dataKey&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;desktop&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;fill&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;var(--color-desktop)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;Bar&lt;/span&gt; &lt;span class="nx"&gt;dataKey&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;mobile&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;fill&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;var(--color-mobile)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/BarChart&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/ChartContainer&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Up until now, it should look something like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7to24nqamqrx6iw5hezg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7to24nqamqrx6iw5hezg.png" alt="shadcn ui chart component - horizon ui"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To add the addons, just add the following components (XAxis, CartesianGrid, and ChartTooltip):&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;chartData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;January&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;186&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;80&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;February&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;305&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;March&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;237&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;120&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;April&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;73&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;190&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;May&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;209&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;130&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;month&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;June&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;desktop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;214&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;140&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;];&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;BarChartComponent&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;ChartContainer&lt;/span&gt;
      &lt;span class="nx"&gt;className&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;aspect-auto h-[300px] xl:h-[200px] 2xl:h-[250px] w-full&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;config&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;chartConfig&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;BarChart&lt;/span&gt; &lt;span class="nx"&gt;accessibilityLayer&lt;/span&gt; &lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;chartData&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
          &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;CartesianGrid&lt;/span&gt; &lt;span class="nx"&gt;vertical&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;          &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;XAxis&lt;/span&gt;
            &lt;span class="nx"&gt;dataKey&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;month&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
            &lt;span class="nx"&gt;tickLine&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;tickMargin&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;axisLine&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;tickFormatter&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{(&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;slice&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)}&lt;/span&gt;
          &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;          &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;ChartTooltip&lt;/span&gt;
            &lt;span class="nx"&gt;cursor&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;content&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;ChartTooltipContent&lt;/span&gt; &lt;span class="nx"&gt;indicator&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;dashed&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
          &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;Bar&lt;/span&gt; &lt;span class="nx"&gt;dataKey&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;desktop&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;fill&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;var(--color-desktop)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;Bar&lt;/span&gt; &lt;span class="nx"&gt;dataKey&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;mobile&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;fill&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;var(--color-mobile)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/BarChart&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/ChartContainer&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Step 4: You’re done! 🎉&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Now the component is ready to use in your project. You can add the custom data, or change the styles in the &lt;code&gt;global.css&lt;/code&gt; file to your liking. This is the final result :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4yxy2ympr8arz9dxhts0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4yxy2ympr8arz9dxhts0.png" alt="shadcn ui chart component - horizon ui"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;In conclusion,&lt;/strong&gt; Shadcn UI can be used for a variety of tasks when it comes to UI, including ones like charts, cards, and more, which can be uniformly modified by changing the main theme.&lt;/p&gt;

&lt;p&gt;More cards like the one we made, components like navbars, dropdowns, and so on, are available in &lt;strong&gt;&lt;a href="https://horizon-ui.com/boilerplate-shadcn" rel="noopener noreferrer"&gt;Horizon AI Boilerplate!&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>webdev</category>
      <category>react</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>Free ChatGPT AI Message Component (Shadcn UI + Tailwind CSS)</title>
      <dc:creator>Fredy Andrei</dc:creator>
      <pubDate>Tue, 03 Sep 2024 14:36:45 +0000</pubDate>
      <link>https://forem.com/fredy/free-chatgpt-ai-message-component-shadcn-ui-tailwind-css-4bek</link>
      <guid>https://forem.com/fredy/free-chatgpt-ai-message-component-shadcn-ui-tailwind-css-4bek</guid>
      <description>&lt;p&gt;Hello, devs!&lt;/p&gt;

&lt;p&gt;Since AI is on the rise, my friend and I decided to make some Tailwind components for people making AI-related projects or working for AI companies. I used the Shadcn UI Tailwind + Horizon UI theme, and the component project is open-source:&lt;/p&gt;

&lt;p&gt;Live demo: &lt;a href="https://horizon-ui.com/shadcn-nextjs-boilerplate/" rel="noopener noreferrer"&gt;horizon-ui.com/shadcn-nextjs-boilerplate/&lt;/a&gt;&lt;br&gt;
Download for Free from Github: &lt;a href="https://github.com/horizon-ui/shadcn-nextjs-boilerplate/blob/main/components/MessageBoxChat.tsx" rel="noopener noreferrer"&gt;github.com/horizon-ui/shadcn-nextjs-boilerplate/blob/main/components/MessageBoxChat.tsx&lt;/a&gt;&lt;br&gt;
Presentation: &lt;a href="https://horizon-ui.com/shadcn-ui" rel="noopener noreferrer"&gt;horizon-ui.com/shadcn-ui&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is an example of a ChatGPT message card box component:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fotcz537sd1b6b9v9src0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fotcz537sd1b6b9v9src0.png" alt="Free ChatGPT AI Message box Component from Horizon AI Boilerplate"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>tailwindcss</category>
      <category>react</category>
    </item>
  </channel>
</rss>
