<?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>DEV Community: Anik Routh</title>
    <description>The latest articles on DEV Community by Anik Routh (@anikrouth).</description>
    <link>https://dev.to/anikrouth</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%2F1077114%2F4f20295e-8cf1-457b-8177-f326e9d015b9.jpg</url>
      <title>DEV Community: Anik Routh</title>
      <link>https://dev.to/anikrouth</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anikrouth"/>
    <language>en</language>
    <item>
      <title>Fixing CVE-2025-66478 in Next.js: Universal Guide</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Wed, 10 Dec 2025 11:31:44 +0000</pubDate>
      <link>https://dev.to/anikrouth/fixing-cve-2025-66478-in-nextjs-universal-guide-27c3</link>
      <guid>https://dev.to/anikrouth/fixing-cve-2025-66478-in-nextjs-universal-guide-27c3</guid>
      <description>&lt;h1&gt;
  
  
  Fixing CVE-2025-66478 in Next.js: Universal Guide
&lt;/h1&gt;

&lt;p&gt;A universal fix for CVE-2025-66478 involves upgrading to patched Next.js versions or downgrading from affected canaries, followed by secret rotation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Vulnerability Overview
&lt;/h2&gt;

&lt;p&gt;CVE-2025-66478 is a critical RCE flaw in React Server Components (RSC) protocol used by Next.js App Router, stemming from upstream React CVE-2025-55182. Attackers could exploit untrusted inputs to trigger arbitrary server code execution in vulnerable setups.&lt;/p&gt;

&lt;h2&gt;
  
  
  Affected Versions
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Next.js 15.x (all)&lt;/li&gt;
&lt;li&gt;Next.js 16.x (all)&lt;/li&gt;
&lt;li&gt;Next.js 14.3.0-canary.77 and later canaries[attached_file:1]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Unaffected: Next.js 13.x, stable 14.x, Pages Router apps, Edge Runtime.[attached_file:1]&lt;/p&gt;

&lt;h2&gt;
  
  
  Patched &amp;amp; Safe Versions
&lt;/h2&gt;

&lt;p&gt;Upgrade to these patches:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;next@15.0.5&lt;/code&gt; (15.0.x)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;next@15.1.9&lt;/code&gt; (15.1.x)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;next@15.2.6&lt;/code&gt; (15.2.x)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;next@15.3.6&lt;/code&gt; (15.3.x)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;next@15.4.8&lt;/code&gt; (15.4.x)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;next@15.5.7&lt;/code&gt; (15.5.x)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;next@16.0.7&lt;/code&gt; (16.0.x)[attached_file:1]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For affected 14.x canaries: &lt;code&gt;npm install next@14&lt;/code&gt; (latest stable).[attached_file:1]&lt;/p&gt;

&lt;h2&gt;
  
  
  Step-by-Step Fix for Any Version
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Check version&lt;/strong&gt;: Run &lt;code&gt;npx next --version&lt;/code&gt; or inspect &lt;code&gt;package.json&lt;/code&gt;. Confirm App Router + RSC usage.[attached_file:1]&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Select target&lt;/strong&gt;:&lt;br&gt;
| Current Line | Target Command |&lt;br&gt;
|--------------|----------------|&lt;br&gt;
| 15.0.x      | &lt;code&gt;npm install next@15.0.5&lt;/code&gt; |&lt;br&gt;
| 15.1.x      | &lt;code&gt;npm install next@15.1.9&lt;/code&gt; |&lt;br&gt;
| ... (etc.)  | See above list[attached_file:1] |&lt;br&gt;
| 14.x canary | &lt;code&gt;npm install next@14&lt;/code&gt; |&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Install &amp;amp; rebuild&lt;/strong&gt;: Execute command, then &lt;code&gt;npm run build&lt;/code&gt; and redeploy.[attached_file:1]&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Rotate secrets&lt;/strong&gt;: Change all env vars, API keys, DB passwords post-upgrade.[attached_file:1]&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;No config workaround exists—upgrade mandatory.[attached_file:1]&lt;/p&gt;

</description>
      <category>nextjs</category>
      <category>react</category>
      <category>security</category>
    </item>
    <item>
      <title>Get Your Free Next.js SaaS Landing Page Template!</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Fri, 30 Aug 2024 11:28:11 +0000</pubDate>
      <link>https://dev.to/anikrouth/get-your-free-nextjs-saas-landing-page-template-13b8</link>
      <guid>https://dev.to/anikrouth/get-your-free-nextjs-saas-landing-page-template-13b8</guid>
      <description>&lt;p&gt;Are you launching a new SaaS product or need a fresh look for your landing page? I’ve got something for you—a free Next.js SaaS landing page template ready to go!&lt;/p&gt;

&lt;h2&gt;
  
  
  Clean design
&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%2F9m14s9aypljhmawuame4.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%2F9m14s9aypljhmawuame4.png" alt="Get Your Free Next.js SaaS Landing Page Template!"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Who Can Use It?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Startups: Launch your product with a professional landing page.&lt;/li&gt;
&lt;li&gt;Developers: Save time with a ready-made, clean-coded template.&lt;/li&gt;
&lt;li&gt;Marketers: Drive conversions with a well-designed landing page.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  How to Get It
&lt;/h2&gt;

&lt;p&gt;It’s simple! Download the template for free from GitHub and follow the included documentation to set it up in minutes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/anikrauth/saas-landing-page" rel="noopener noreferrer"&gt;Download the Free Next.js SaaS Landing Page Template&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Grab your free template today and get started! If you need help, let me know.&lt;/strong&gt;&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%2Fey9bn02buj8z34wkwu3h.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%2Fey9bn02buj8z34wkwu3h.png" alt="Contact with us"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.devbucket.co" rel="noopener noreferrer"&gt;https://www.devbucket.co&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nextjs</category>
      <category>javascript</category>
      <category>tailwindcss</category>
      <category>saas</category>
    </item>
    <item>
      <title>Headless WordPress vs. Traditional: Which Website is Right for You? A Showdown</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Thu, 21 Mar 2024 13:23:00 +0000</pubDate>
      <link>https://dev.to/anikrouth/headless-wordpress-vs-traditional-which-website-is-right-for-you-a-showdown-26eh</link>
      <guid>https://dev.to/anikrouth/headless-wordpress-vs-traditional-which-website-is-right-for-you-a-showdown-26eh</guid>
      <description>&lt;p&gt;While both Traditional WordPress and &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt; have their place, the landscape of web development is undeniably tilting towards headless architectures. Here’s why &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt; might be the champion you didn’t consider:&lt;/p&gt;

&lt;h2&gt;
  
  
  Headless WordPress: The Adaptable Powerhouse
&lt;/h2&gt;

&lt;p&gt;Imagine Traditional WordPress as a cozy bungalow. It’s familiar and comfortable, but if you ever need more space, it can be difficult and expensive to expand. &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt;, on the other hand, is like a modern, modular mansion. You can easily add new wings or features without having to tear down the whole structure. This makes it a much more adaptable option for the ever-changing world of web development.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Future-Proof Flexibility:&lt;/strong&gt; Think of cutting-edge features and fancy animations you see on modern websites. &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt; lets you use the latest tools like React, Next.js, or Vue.js to bring those features to life on your website. Traditional WordPress themes can be customized, but they can start to look a bit outdated after a while. Headless gives you the freedom to keep your website feeling fresh and modern.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lightning Speed:&lt;/strong&gt; Headless websites load super fast, especially on phones. No more waiting for pages to crawl — visitors see your content instantly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scale Like a Superhero:&lt;/strong&gt; Regular WordPress sites slow down with tons of content. Headless lets you easily handle massive growth without breaking a sweat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Omnichannel Domination:&lt;/strong&gt; Headless lets your content shine across platforms. The same content can be displayed on your website, mobile app, smartwatch app, or even a digital billboard — all managed from a central location. Traditional WordPress struggles with such adaptability.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SEO-friendly:&lt;/strong&gt; Out-of-the-box SEO features and a plethora of SEO-optimized plugins make it easy to improve your website’s search ranking.
Don’t be discouraged if &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt; sounds a bit technical. There are a couple of ways to make it easier to use, even if you’re not a coding whiz.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Web design agency:&lt;/strong&gt; Some Web design companies offer special packages for &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt; that are designed to be user-friendly. Devbucket is a web design company that provides the best &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt; solution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hire a Headless Hero:&lt;/strong&gt; If you have the budget, hiring a web developer to create a custom headless setup for your website can be a great option. A developer can tailor the headless system to your specific needs and ensure that everything is running smoothly. This way, you can focus on creating amazing content while they handle the technical side of things.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Final Blow: Keeping Up With the Times&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The web development world is like a fast-moving train. Traditional WordPress might leave you stuck at the station, watching as new technologies and features zoom by. &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt;, on the other hand, gives you a ticket to ride. It’s built to adapt and evolve, so you can be sure your website will always stay up-to-date and exciting.&lt;/p&gt;

&lt;p&gt;It’s like choosing a car. Sure, a traditional WordPress site is a reliable clunker that might get you where you need to go. But with &lt;a href="https://www.devbucket.co/headless-wordpress"&gt;Headless WordPress&lt;/a&gt;, you’re behind the wheel of a sleek, powerful machine that can handle anything the road throws at you. Plus, it looks cool.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>nextjs</category>
      <category>react</category>
      <category>wordpress</category>
    </item>
    <item>
      <title>How to Grow Your Sales by 20% in 6 Months: Proven Strategies for Success</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Mon, 16 Oct 2023 20:54:00 +0000</pubDate>
      <link>https://dev.to/anikrouth/how-to-grow-your-sales-by-20-in-6-months-proven-strategies-for-success-362k</link>
      <guid>https://dev.to/anikrouth/how-to-grow-your-sales-by-20-in-6-months-proven-strategies-for-success-362k</guid>
      <description>&lt;h2&gt;
  
  
  Imagine your sales growing by 20% in 6 months. What would that mean for your business?
&lt;/h2&gt;

&lt;p&gt;Growing your sales in the ever-changing world of business demands both effort and strategic ability. Whether you’re an established company looking for a boost or a startup aiming for speedy expansion, increasing your sales by 20% in 6 months is both doable and satisfying. To assist you on your journey, we’ve put together a unique and trustworthy handbook filled with concrete advice and techniques to put you on the right track.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Set clear and measurable goals:&lt;/strong&gt;&lt;br&gt;
What does it mean for your company to increase sales by 20% in 6 months? Is it necessary to increase your customer base, average order value, or both? When you know what you want, you can start making plans to get there.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Understand Your Target Audience :&lt;/strong&gt;&lt;br&gt;
A thorough understanding of who your audience is is the foundation of any effective sales approach. Who are your clients? What are their problems, desires, and preferences? Personalize&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Content Marketing That Works :&lt;br&gt;
In the digital age, content reigns supreme. Creating high-quality, valuable content can attract and engage new customers. To demonstrate your expertise and create trust with your audience, consider launching a blog, creating instructional videos, or conducting webinars.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Utilize Social Media :&lt;br&gt;
Social media platforms have become vital for reaching a large audience in today’s connected world. Create a social media plan focusing on your business’s relevant channels. To increase brand exposure and revenues, share compelling content, interact with your fans, and run targeted ad campaigns.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Email Marketing :&lt;br&gt;
Email marketing is still one of the most successful ways to nurture leads and convert them into customers. Create targeted and appealing email campaigns that add value to your subscribers while also guiding them through the sales funnel. There are many tools for email marketing, You can use &lt;a href="https://mailchimp.com/"&gt;Mailchimp&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Improve Your Website :&lt;br&gt;
If you already have a website, ensure sure it is properly designed and developed. Because your website is frequently the first point of contact for potential clients, it should be visually appealing, user-friendly, and mobile-responsive. To boost your exposure in search engine results, provide a seamless buying experience, and optimize for &lt;a href="https://www.devbucket.co/services/seo"&gt;SEO&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Here are some additional tips that can help you grow your sales by 20% in 6 months:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;**Collaborate with Influencers :&lt;br&gt;
Collaboration with industry influencers can help you tap into their existing audience and earn credibility. Find influencers whose beliefs are compatible with yours and collaborate on projects that will expose your products or services to a larger audience.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Run Promotions and Discounts :&lt;br&gt;
Customers might be highly motivated by limited-time promotions, discounts, and loyalty programs. Make smart use of them to increase sales and generate a sense of urgency.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Analyze performance :&lt;br&gt;
Monitor your sales and marketing efforts on a regular basis. Use analytics tools to learn what’s working and what isn’t. Prepare to modify your strategies as you get insight from your data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Provide Exceptional Customer Service :&lt;br&gt;
A one-time buyer can be converted into a loyal, repeat customer with excellent customer care. Go above and above to handle client problems, answer inquiries, and deliver a pleasant experience.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;**Expand into new markets :&lt;br&gt;
Consider expanding into other markets if you are only selling your products or services in one. This could include selling online, expanding into new overseas markets, or focusing on new client niches.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Growing your sales by 20% in 6 months is not easy, but it’s definitely possible with the right strategy. By following the tips above, you can set your business up for success.&lt;/p&gt;

&lt;p&gt;To get more articles Like this, &lt;a href="https://www.facebook.com/groups/666734292227524/?mibextid=oMANbw"&gt;join our community&lt;/a&gt;&lt;/p&gt;

</description>
      <category>sales</category>
      <category>businessgrowth</category>
    </item>
    <item>
      <title>The Power of Server-Side Rendering in Next.js: Faster Loading, Better Performance by Anik routh</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Fri, 13 Oct 2023 19:19:06 +0000</pubDate>
      <link>https://dev.to/anikrouth/the-power-of-server-side-rendering-in-nextjs-faster-loading-better-performance-by-anik-routh-1n8i</link>
      <guid>https://dev.to/anikrouth/the-power-of-server-side-rendering-in-nextjs-faster-loading-better-performance-by-anik-routh-1n8i</guid>
      <description>&lt;p&gt;Server-side rendering (SSR) is an effective approach for improving web application performance and loading speed. SSR allows you to render your React components on the server side before sending the HTML to the client in the context of Next.js, a popular React framework. This can result in faster initial page loads and improved SEO.&lt;/p&gt;

&lt;p&gt;Here’s an example of how you can use server-side rendering in Next.js to achieve faster loading and better performance:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Setup:&lt;/strong&gt;&lt;br&gt;
Make sure you have Node.js and npm installed on your machine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Create a New Next.js Project:&lt;/strong&gt;&lt;br&gt;
Open your terminal and run the following commands to create a new Next.js project:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx create-next-app my-ssr-app&lt;br&gt;
cd my-ssr-app&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Create a Server-Side Rendered Page:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In your project’s pages directory, create a new file called ssr-page.js (or any other name you prefer).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// pages/ssr-page.js
import React from 'react';

const SsrPage = ({ serverTime }) =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;h1&amp;gt;Server-Side Rendered Page&amp;lt;/h1&amp;gt;
      &amp;lt;p&amp;gt;Server time: {serverTime}&amp;lt;/p&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export async function getServerSideProps() {
  // This function runs on the server side and fetches data before rendering the page.
  const serverTime = new Date().toString();
  return {
    props: {
      serverTime,
    },
  };
}

export default SsrPage;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this example, the getServerSideProps the function is responsible for fetching data on the server side before rendering the page. We're simply getting the current server time here.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Start the Development Server:&lt;/strong&gt;&lt;br&gt;
Run the following command to start the development server:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm run dev&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This will start the Next.js development server, and you should be able to access your application at &lt;a href="http://localhost:3000"&gt;http://localhost:3000&lt;/a&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open your web browser and navigate to &lt;a href="http://localhost:3000/ssr-page"&gt;http://localhost:3000/ssr-page&lt;/a&gt;. You should see the "Server-Side Rendered Page" along with the server time displayed on the page.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The key takeaway here is that the getServerSideProps function is executed on the server side every time a request is made to the /ssr-page route. This allows you to fetch data, perform server-side computations, and customize the content of the page before it's sent to the client.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Server-side rendering can greatly improve initial page load times and provide better SEO, especially for dynamic content. However, it’s important to note that there are cases where static site generation (SSG) might be a more suitable choice, as it can provide even better performance in certain scenarios.&lt;/p&gt;

&lt;p&gt;Remember to refer to the official Next.js documentation for more in-depth information and advanced usage: &lt;a href="https://nextjs.org/docs/advanced-features/pages"&gt;https://nextjs.org/docs/advanced-features/pages&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Check out my Agency website and &lt;a href="https://www.devbucket.co"&gt;click here.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nextjs</category>
      <category>nextjsserverside</category>
      <category>javascript</category>
      <category>seo</category>
    </item>
    <item>
      <title>How to make iNFT using Alethea AI🤖</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Fri, 13 Oct 2023 15:44:52 +0000</pubDate>
      <link>https://dev.to/anikrouth/how-to-make-inft-using-alethea-ai-dn4</link>
      <guid>https://dev.to/anikrouth/how-to-make-inft-using-alethea-ai-dn4</guid>
      <description>&lt;p&gt;This is a quick explainer on how to imbue your ERC 721 iNFT with AI through a process called Fusion, turning it into an interactive and intelligent iNFT, or INT. To create an iNFT, you are going to need to have your iNFT of choice and an Alethea AI intelligence pod in your wallet.&lt;/p&gt;

&lt;p&gt;If you are requesting to fuse an iNFT that has not been approved yet, you will also need some credits, but more on that later. If you don’t have an intelligence pond already, you can purchase one on third-party marketplaces like OpenSea.&lt;br&gt;
Once you have both assets in your wallet, you will want to go to the Alethea AI Intelligent Metaverse DAP known as Noah’s Ark. At Noah’s Arc AI, you can think of an iNFT as having three distinct parts: a body, a soul, and a mind.&lt;/p&gt;

&lt;p&gt;The iNFT acts as the body for your iNFT. The Intelligence Pod can be thought of as a soul, enabling your iNFT to have a customizable on-chain personality and upgradeable intelligence levels. The AI systems, or the mind powering the infts, then allow your inft to interact, perform tasks, and offer services on the AI Protocol ecosystem.&lt;/p&gt;

&lt;p&gt;Once you’ve created an account and signed in on the homepage, you will see the option to demo an iNFT or Request to Fuse the demo, and in iNFT, this option allows you to create a demo and interact with it. The Request to Fuse option is where the magic happens.&lt;/p&gt;

&lt;p&gt;When you click on Request to Fuse, you will be prompted to connect your wallet and sign a gasless transaction to allow the Noah’s Arc app to read the contents of your wallet. Once you’ve signed the transaction, you will see the first screen of the Fusion process, prompting you to select one of the iNFT collections that have been identified in your wallet.&lt;/p&gt;

&lt;p&gt;It is important to note the disclaimer on the right. While iNFT collections containing three D assets and video nets might show up on this screen, fusion for them is currently not supported, so it is recommended that you select a two DFT that is a static image like a PFP collection. Collections that have been whitelisted in their entirety will have a blue check mark next to them and can be turned into iNFT’s instantly. Collections that do not have the blue checkmark will require you to submit the request, which, depending on demand, can take up to seven days to get approved.&lt;/p&gt;

&lt;p&gt;For this explanation, we are going to select a non-white list collection for the body of the iNFT, followed by an intelligence pod like this. Level Four. The final screen asks you to confirm your fusion request. The fusion process, once submitted, will transfer your intelligence pod to the iNFT contract and let the AI protocol know that it has been linked to your iNFT.&lt;/p&gt;

&lt;p&gt;Your iNFT will remain in your wallet, and your INT, once approved, will only be manageable using the wallet that is holding the iNFT. This means that you can transfer the body NFT if needed and still be able to access your iNFT from the new wallet.&lt;/p&gt;

&lt;p&gt;However, if you plan to sell your iNFT and want to retain the intelligence pod, it is recommended to unfuse the intelligence pod from it. Otherwise, the ownership of the intelligence pod will transfer to the new owner of the body iNFT back to the Fusion Request process.&lt;/p&gt;

&lt;p&gt;If your iNFT has not been previously approved, you will need to have 2 thousand credits in your account to submit the request, which are fully refundable in the event that your Fusion request does not meet the guidelines that are outlined in the Fusion.&lt;/p&gt;

&lt;p&gt;Terms and Conditions Credits can be earned on Noah’s ARK by participating in community events, completing certain tasks, or by converting the Artificial Liquid Intelligence, or ALI, utility token to credits on Noah’s credit conversion screen, which can be accessed by clicking on the credits button in the top right.&lt;/p&gt;

&lt;p&gt;Once you are ready to continue, you can click request to fuse and then confirm. If this is your first time interacting with Noah’s ARRKCAP on that particular wallet, you will see a pop-up to give permission for your intelligence pod to be transferred to the Fusion Contract.&lt;/p&gt;

&lt;p&gt;You are followed by the transaction to file the Fusion request and send your intelligence pod to the Fusion contract. Once your request has been submitted, you will see a confirmation window that has some information for you and a button through which you can train and interact with your intelligence pod, which has been given a base-level personality to allow you to interact with it instantly.&lt;/p&gt;

&lt;p&gt;You can also access the training feature by hovering over the My Assets menu item and clicking on the My in iNFT option. This will take you to the iNFT carousel, where you can see all of your pending and approved iNFTs, allowing you to train, customize, upgrade, interact, and create content with your iNFT.&lt;/p&gt;

&lt;p&gt;That concludes this video on how to imbue your iNFT with AI. For more on all of those different features in a separate video, be sure to follow us on &lt;a href="https://www.facebook.com/devbucket.co"&gt;Facebook&lt;/a&gt;, &lt;a href="https://www.linkedin.com/company/devbucket-co"&gt;Linkedin&lt;/a&gt;, and &lt;a href="https://www.instagram.com/devbucket.co"&gt;Instagram&lt;/a&gt;. Over 50 thousand other AI enthusiasts ask questions and learn more about iNFTs, the AI protocol, and &lt;a href="https://alethea.ai/"&gt;Alethea AI&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;My website Blog &lt;a href="https://www.devbucket.co/blogs/ai-nft/how-to-make-infts-using-alethea-ai"&gt;visit now!&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nft</category>
      <category>inft</category>
      <category>aletheaai</category>
      <category>opensea</category>
    </item>
    <item>
      <title>All you need to know about metadata in next.js 13 by Anik Routh</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Sun, 24 Sep 2023 19:03:42 +0000</pubDate>
      <link>https://dev.to/anikrouth/all-you-need-to-know-about-metadata-in-nextjs-13-by-anik-routh-1e8i</link>
      <guid>https://dev.to/anikrouth/all-you-need-to-know-about-metadata-in-nextjs-13-by-anik-routh-1e8i</guid>
      <description>&lt;h2&gt;
  
  
  Introduction:
&lt;/h2&gt;

&lt;p&gt;Next.js 13 has a Metadata API that can be used to define your application metadata (e.g. meta and link tags inside your HTML head element) for improved SEO and web shareability.&lt;/p&gt;

&lt;p&gt;There are two ways you can add metadata to your application:&lt;/p&gt;

&lt;h2&gt;
  
  
  Static metadata:
&lt;/h2&gt;

&lt;p&gt;To define static metadata, export a Metadata object from a layout.js or static page.js file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import type { Metadata } from 'next' 

export const metadata: Metadata = { 
  title: '...', 
  description: '...', 
} 

export default function Page() {
  .....
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Next.js will automatically generate the relevant &lt;/p&gt; elements for your pages. You can also create dynamic OG images using the ImageResponse constructor.

&lt;p&gt;For all the available options, see the &lt;a href="https://nextjs.org/docs/app/api-reference/functions/generate-metadata"&gt;API Reference.&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Dynamic metadata:
&lt;/h2&gt;

&lt;p&gt;You can use generateMetadata function to fetch metadata that requires dynamic values.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import type { Metadata, ResolvingMetadata } from 'next'

type Props = {
  params: { id: string }
  searchParams: { [key: string]: string | string[] | undefined }
}

export async function generateMetadata(
  { params, searchParams }: Props,
  parent?: ResolvingMetadata
): Promise&amp;lt;Metadata&amp;gt; {
  // read route params
  const id = params.id

  // fetch data
  const product = await fetch(`https://.../${id}`).then((res) =&amp;gt; res.json())

  // optionally access and extend (rather than replace) parent metadata
  const previousImages = (await parent).openGraph?.images || []

  return {
    title: product.title,
    openGraph: {
      images: ['/some-specific-page-image.jpg', ...previousImages],
    },
  }
}

export default function Page({ params, searchParams }: Props) {}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Good to know:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Both static and dynamic metadata generateMetadata are only supported in Server Components.&lt;/li&gt;
&lt;li&gt;fetch requests are automatically memoized for the same data across generateMetadata, generateStaticParams, Layouts, Pages, and Server Components. React cache can be used if fetch is unavailable.&lt;/li&gt;
&lt;li&gt;Next.js will wait for data fetching inside generateMetadata to complete before streaming UI to the client. This guarantees the first part of a streamed response includes  tags.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Dynamic Image Generation:
&lt;/h2&gt;

&lt;p&gt;The ImageResponse constructor allows you to generate dynamic images using JSX and CSS. This is useful for creating social media images such as Open Graph images, Twitter cards, and more.&lt;/p&gt;

&lt;p&gt;ImageResponse uses the Edge Runtime, and Next.js automatically adds the correct headers to cached images at the edge, helping improve performance and reducing recomputation.&lt;/p&gt;

&lt;p&gt;To use it, you can import ImageResponse from next/server:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { ImageResponse } from 'next/server'

export const runtime = 'edge'

export async function GET() {
  return new ImageResponse(
    (
      &amp;lt;div
        style={{
          fontSize: 128,
          background: 'white',
          width: '100%',
          height: '100%',
          display: 'flex',
          textAlign: 'center',
          alignItems: 'center',
          justifyContent: 'center',
        }}
      &amp;gt;
        Hello world!
      &amp;lt;/div&amp;gt;
    ),
    {
      width: 1200,
      height: 600,
    }
  )
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ImageResponse integrates well with other Next.js APIs, including Route Handlers and file-based Metadata. For example, you can use ImageResponse it in a opengraph-image.tsx file to generate Open Graph images at build time or dynamically at request time.&lt;/p&gt;

&lt;p&gt;ImageResponse supports common CSS properties including flexbox and absolute positioning, custom fonts, text wrapping, centering, and nested images. &lt;a href="https://nextjs.org/docs/app/api-reference/functions/image-response"&gt;See the full list of supported CSS properties.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Examples are available in the &lt;a href="https://og-playground.vercel.app/"&gt;Vercel OG Playground.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Follow me on Medium for more.&lt;/p&gt;

&lt;p&gt;Thank you for reading my post! Here is my website &lt;a href="https://www.devbucket.co/"&gt;check it out&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe87dl8r7daeszhe8psxi.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe87dl8r7daeszhe8psxi.jpg" alt="Image description" width="720" height="121"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nextjs</category>
      <category>nextjs13</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Setup a latest Next.js project with Typescript, Tailwind CSS and Storybook 2023</title>
      <dc:creator>Anik Routh</dc:creator>
      <pubDate>Fri, 05 May 2023 06:58:48 +0000</pubDate>
      <link>https://dev.to/anikrouth/setup-a-latest-nextjs-project-with-typescript-tailwind-css-and-storybook-2023-1gn6</link>
      <guid>https://dev.to/anikrouth/setup-a-latest-nextjs-project-with-typescript-tailwind-css-and-storybook-2023-1gn6</guid>
      <description>&lt;h3&gt;
  
  
  Installation :
&lt;/h3&gt;

&lt;p&gt;To create a new Next.js latest app run this command, it will install Typescript , ESLint automatically.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx create-next-app@latest&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;After finish install / create Next.js app, we have to install Tailwind CSS! To install run this command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install -D tailwindcss postcss autoprefixer&lt;br&gt;
npx tailwindcss init -p&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Now create tailwind.config.js file into Next.js app root folder and paste bellow code into the file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/** @type {import('tailwindcss').Config} */
module.exports = {
  content: [
    "./app/**/*.{js,ts,jsx,tsx,mdx}",
    "./pages/**/*.{js,ts,jsx,tsx,mdx}",
    "./components/**/*.{js,ts,jsx,tsx,mdx}",

    // Or if using `src` directory:
    "./src/**/*.{js,ts,jsx,tsx,mdx}",
  ],
  theme: {
    extend: {},
  },
  plugins: [],
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Now open the globals.css file and paste bellow code.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@tailwind base;
@tailwind components;
@tailwind utilities;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;We finished Tailwind CSS setup👏! Let’s setup Story Book! To install Story Book run this command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx storybook@latest init&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;And to run it&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm run storybook
OR
npm run storybook
OR
pnpm run storybook
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;It will run on 6006 port&lt;/p&gt;

&lt;p&gt;&lt;code&gt;http://localhost:6006&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;👏Hurrah! we finished the setup!&lt;/p&gt;

&lt;p&gt;Check out my nextjs-tailwindcss-storybook-typescript quick start template on github.🤩 please start the repo to get new updates!&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&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%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/anikrauth" rel="noopener noreferrer"&gt;
        anikrauth
      &lt;/a&gt; / &lt;a href="https://github.com/anikrauth/nextjs-tailwindcss-storybook-typescript" rel="noopener noreferrer"&gt;
        nextjs-tailwindcss-storybook-typescript
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;This is a Nextjs 13.3.4 | tailwindcss 3.3.2 | typescript 5.0.4 | storybook 7.0.8 | eslint 8.39.0 quick start template&lt;/h2&gt;
&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Getting Started&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;First, run the development server:&lt;/p&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm run dev
&lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; or&lt;/span&gt;
yarn dev
&lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; or&lt;/span&gt;
pnpm dev&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Open &lt;a href="http://localhost:3000" rel="nofollow noopener noreferrer"&gt;http://localhost:3000&lt;/a&gt; with your browser to see the result.&lt;/p&gt;
&lt;p&gt;To, run the stroy book:&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm run storybook&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Open &lt;a href="http://localhost:6006" rel="nofollow noopener noreferrer"&gt;http://localhost:6006&lt;/a&gt; stroy book live link with your browser to see the result.&lt;/p&gt;
&lt;p&gt;You can start editing the page by modifying &lt;code&gt;pages/index.tsx&lt;/code&gt;. The page auto-updates as you edit the file.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://nextjs.org/docs/api-routes/introduction" rel="nofollow noopener noreferrer"&gt;API routes&lt;/a&gt; can be accessed on &lt;a href="http://localhost:3000/api/hello" rel="nofollow noopener noreferrer"&gt;http://localhost:3000/api/hello&lt;/a&gt;. This endpoint can be edited in &lt;code&gt;pages/api/hello.ts&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;pages/api&lt;/code&gt; directory is mapped to &lt;code&gt;/api/*&lt;/code&gt;. Files in this directory are treated as &lt;a href="https://nextjs.org/docs/api-routes/introduction" rel="nofollow noopener noreferrer"&gt;API routes&lt;/a&gt; instead of React pages.&lt;/p&gt;
&lt;p&gt;This project uses &lt;a href="https://nextjs.org/docs/basic-features/font-optimization" rel="nofollow noopener noreferrer"&gt;&lt;code&gt;next/font&lt;/code&gt;&lt;/a&gt; to automatically optimize and load Inter, a custom Google Font.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Learn More&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;To learn more about Next.js, take a look at the following…&lt;/p&gt;
&lt;/div&gt;


&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/anikrauth/nextjs-tailwindcss-storybook-typescript" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;Thank you for reading my post! Here is my website &lt;a href="https://www.devbucket.co/" rel="noopener noreferrer"&gt;check it out.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>storybook</category>
      <category>nextjs</category>
    </item>
  </channel>
</rss>
