<?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: Shahin Islam</title>
    <description>The latest articles on DEV Community by Shahin Islam (@a4arpon).</description>
    <link>https://dev.to/a4arpon</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%2F1065665%2F4477d9d9-6579-42bc-8709-f305534beae0.jpg</url>
      <title>DEV Community: Shahin Islam</title>
      <link>https://dev.to/a4arpon</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/a4arpon"/>
    <language>en</language>
    <item>
      <title>Forgot Your Ex(press). Make It Your Next. Deno: NextGen JavaScript Runtime - @a4arpon</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Sun, 07 Jul 2024 18:16:09 +0000</pubDate>
      <link>https://dev.to/a4arpon/forgot-your-express-make-it-your-next-deno-nextgen-javascript-runtime-a4arpon-i5k</link>
      <guid>https://dev.to/a4arpon/forgot-your-express-make-it-your-next-deno-nextgen-javascript-runtime-a4arpon-i5k</guid>
      <description>&lt;h2&gt;
  
  
  Intro
&lt;/h2&gt;

&lt;p&gt;In the world of web development, Node.js and Express have long been the go-to solutions for building server-side applications. Their popularity is undeniable, bolstered by a vast ecosystem and extensive community support. However, just because a technology is popular doesn't necessarily mean it's the best choice for every project. Enter Hono and Deno—a powerful combination that offers a compelling alternative to Node.js and Express. Let's explore why you might want to consider making the switch.&lt;/p&gt;

&lt;h2&gt;
  
  
  Node.js and Express: Not the Only Solution
&lt;/h2&gt;

&lt;h3&gt;
  
  
  The Appeal of Node.js
&lt;/h3&gt;

&lt;p&gt;Node.js revolutionized server-side development by enabling JavaScript to run on the server, creating a unified language for both frontend and backend. Its non-blocking, event-driven architecture handles multiple connections efficiently, making it a popular choice for high-performance applications. The extensive npm ecosystem provides a wealth of libraries and tools, accelerating development.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Challenges of Node.js
&lt;/h3&gt;

&lt;p&gt;Despite its advantages, Node.js has its share of problems. Its asynchronous nature can lead to callback hell, making code harder to maintain. The single-threaded event loop can struggle with CPU-intensive tasks, causing performance bottlenecks. Heavy reliance on third-party packages can introduce security vulnerabilities and complicate dependency management.&lt;/p&gt;

&lt;h3&gt;
  
  
  Now Forgot Your Ex (Why Deno Instead of Fixing Node.js)
&lt;/h3&gt;

&lt;p&gt;Deno was created to address these fundamental issues. Rather than patching Node.js, Deno offers a fresh start with a focus on security, simplicity, and modern features. It runs in a secure sandbox by default, requires explicit permissions for file, network, and environment access, and eliminates the need for a centralized package manager by using URLs for module imports. Deno also has built-in TypeScript support and a more modern API, reducing complexity and boosting productivity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hono and Deno: A Superior Combination
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Built on Web Standards
&lt;/h3&gt;

&lt;p&gt;Both Hono and Deno are built on web standards APIs, ensuring compatibility and ease of use. Hono’s edge runtime architecture offers exceptional performance, surpassing Express in speed and efficiency when combined with Deno.&lt;/p&gt;

&lt;h3&gt;
  
  
  Comprehensive Plugin Support
&lt;/h3&gt;

&lt;p&gt;Hono boasts a wide range of plugins, comparable to those available for Express. These plugins are actively monitored and maintained by the community and developers, ensuring reliability and up-to-date functionality. You can explore and integrate these plugins from the &lt;a href="https://hono.dev/" rel="noopener noreferrer"&gt;Hono&lt;/a&gt; website.&lt;/p&gt;

&lt;h3&gt;
  
  
  Enhanced Security and Regular Updates
&lt;/h3&gt;

&lt;p&gt;Hono and Deno are designed with security in mind. Regular updates and improvements by their official developers ensure that these technologies remain secure and cutting-edge. The proactive development approach keeps them ahead of potential vulnerabilities and introduces new features to enhance developer experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Improved Developer Experience with Deno
&lt;/h3&gt;

&lt;p&gt;Deno offers a streamlined developer experience. It simplifies configuration by providing built-in support for tools like TypeScript, Prettier, and ESLint. This means you can start a new project and begin writing code without worrying about external configurations, saving valuable development time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Stick with Node.js and Express?
&lt;/h2&gt;

&lt;p&gt;While Node.js and Express have served the development community well, it's important to recognize that they are not the only solutions available. Hono and Deno present a modern, efficient, and secure alternative that addresses many of the shortcomings of their predecessors. By adopting these technologies, developers can benefit from a more streamlined, productive, and secure development experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who Should Use This Starter Kit?
&lt;/h2&gt;

&lt;p&gt;This Deno starter kit is designed for developers with advanced experience in Node.js, TypeScript, and an understanding of Deno's architecture. It is not intended for newcomers or those unfamiliar with these technologies. To effectively use this kit, you should have a minimum depth of knowledge about the similarities and differences between Deno, Hono, Node.js, and Express.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deno Starter Kit Overview
&lt;/h2&gt;

&lt;h3&gt;
  
  
  GitHub Repo:
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/a4arpon/deno-back-end-starterkit.git" rel="noopener noreferrer"&gt;Deno Back-End Starter Kit&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Well-organized and structured API setup&lt;/li&gt;
&lt;li&gt;Pre-configured middlewares for logging, CORS, and security&lt;/li&gt;
&lt;li&gt;Ready-to-use database connection with Mongoose&lt;/li&gt;
&lt;li&gt;Standardized response and error handling mechanisms&lt;/li&gt;
&lt;li&gt;Flexibility to add plugins and change database drivers as needed
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;.&lt;/span&gt;
├── deno.json            &lt;span class="c"&gt;# Deno configuration file&lt;/span&gt;
├── deno.lock            &lt;span class="c"&gt;# Lock file for dependencies&lt;/span&gt;
├── README.md            &lt;span class="c"&gt;# Project documentation&lt;/span&gt;
└── src
    ├── config           &lt;span class="c"&gt;# Configuration files&lt;/span&gt;
    │   └── helmet.config.ts
    ├── main.ts          &lt;span class="c"&gt;# Main application entry point&lt;/span&gt;
    ├── models           &lt;span class="c"&gt;# Database models&lt;/span&gt;
    │   └── user.model.ts
    ├── routes           &lt;span class="c"&gt;# API route definitions&lt;/span&gt;
    │   ├── router.ts
    │   └── stable.routes.ts
    ├── middlewares      &lt;span class="c"&gt;# Application guards and middlewares&lt;/span&gt;
    ├── services         &lt;span class="c"&gt;# Business logic and services&lt;/span&gt;
    │   └── users.services.ts
    ├── types            &lt;span class="c"&gt;# Type definitions&lt;/span&gt;
    │   └── shared.types.ts
    └── utils            &lt;span class="c"&gt;# Utility functions&lt;/span&gt;
        ├── async.ts
        └── response.ts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;p&gt;The combination of Hono and Deno offers a compelling alternative to Node.js and Express. With better performance, enhanced security, and a more streamlined developer experience, it's time to consider making the switch. This Deno starter kit provides a solid foundation for building modern, efficient, and secure applications. However, it is best suited for experienced developers who understand the intricacies of these technologies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Read More
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.a4arpon.me/my-contents/blogs/deno-lets-make-javascript-uncomplicated-a-powerful-nextgen-javascript-runtime-1h2o" rel="noopener noreferrer"&gt;Deno : Let's Make JavaScript Uncomplicated. A Powerful NextGen JavaScript Runtime&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.a4arpon.me/my-contents/blogs/bytedances-rspack-the-future-of-web-bundling-shahin-islam-arpon-a4arpon-op4" rel="noopener noreferrer"&gt;ByteDance’s RsPack: The Future of Web Bundling&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Author
&lt;/h2&gt;

&lt;p&gt;Mr. Wayne&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.facebook.com/a4arpon" rel="noopener noreferrer"&gt;Facebook&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://a4arpon.me/" rel="noopener noreferrer"&gt;Website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/a4arpon" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.linkedin.com/in/a4arpon" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>deno</category>
      <category>node</category>
      <category>backenddevelopment</category>
    </item>
    <item>
      <title>ByteDance’s RsPack: The Future of Web Bundling || Shahin Islam Arpon || a4arpon</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Tue, 02 Jul 2024 17:21:18 +0000</pubDate>
      <link>https://dev.to/a4arpon/bytedances-rspack-the-future-of-web-bundling-shahin-islam-arpon-a4arpon-op4</link>
      <guid>https://dev.to/a4arpon/bytedances-rspack-the-future-of-web-bundling-shahin-islam-arpon-a4arpon-op4</guid>
      <description>&lt;h2&gt;
  
  
  ByteDance and JavaScript
&lt;/h2&gt;

&lt;p&gt;Web development is always changing, and ByteDance, the company behind TikTok and CapCut, is leading the way with a new tool called RsPack. This tool promises to make developers' lives easier by solving common problems with bundling JavaScript. Here's what you need to know about RsPack.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why RsPack?
&lt;/h2&gt;

&lt;p&gt;ByteDance relies heavily on JavaScript for many of its products. However, they ran into issues with their current bundling tool, Webpack, especially with Node.js compatibility. To solve these problems, ByteDance created RsPack, a new bundler that’s fast, efficient, and designed to work seamlessly with existing tools.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Makes RsPack Special?
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Speed and Performance
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Fast Startup&lt;/strong&gt;: RsPack combines TypeScript and Rust with a parallelized architecture, which means it starts up quickly, making the development process smoother.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lightning HMR&lt;/strong&gt;: It offers superior Hot Module Replacement (HMR) performance, which is crucial for large projects. This means changes you make in the code appear almost instantly in the browser.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Compatibility
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Webpack Compatible&lt;/strong&gt;: RsPack works with existing Webpack plugins and loaders, so developers can easily switch without having to redo their setup.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Module Federation&lt;/strong&gt;: It supports Module Federation, which helps in developing large-scale web applications by allowing multiple independent builds to work together.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Production Optimizations
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Integrated Optimizations&lt;/strong&gt;: RsPack has built-in optimizations like tree shaking and minification, which improve the performance and size of your final build without needing extra plugins.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Framework Agnostic&lt;/strong&gt;: It’s not tied to any specific frontend framework, so it can be used with any project.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Real-World Impact
&lt;/h2&gt;

&lt;p&gt;ByteDance created RsPack because their existing tools were slowing them down. Their production build times could take up to half an hour, and starting the development server often took several minutes. RsPack was designed to solve these issues with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Quick Dev Mode Startups&lt;/strong&gt;: Developers often run &lt;code&gt;npm run dev&lt;/code&gt; many times an hour. RsPack ensures these startups are fast, keeping productivity high.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speedy Builds&lt;/strong&gt;: In Continuous Integration/Continuous Deployment (CI/CD) pipelines, every second counts. RsPack significantly reduces build times, speeding up the entire deployment process.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flexible Configuration&lt;/strong&gt;: RsPack maintains the flexibility of Webpack, allowing developers to customize it to fit their specific needs without high migration costs.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;RsPack is ByteDance's answer to the limitations they faced with current bundling tools. It promises faster startup times, better performance, and easy integration with existing setups. As ByteDance prepares to release RsPack to the public, developers around the world are eager to try this new tool and experience its benefits firsthand.&lt;/p&gt;

&lt;p&gt;Stay tuned for more updates on RsPack, and get ready to explore a new era of efficient and powerful web development!&lt;/p&gt;

&lt;h2&gt;
  
  
  Author
&lt;/h2&gt;

&lt;p&gt;Shahin Islam Arpon&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.facebook.com/a4arpon" rel="noopener noreferrer"&gt;Facebook&lt;/a&gt;&lt;br&gt;
&lt;a href="https://a4arpon.me" rel="noopener noreferrer"&gt;Portfolio&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/a4arpon" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/a4arpon" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>tiktok</category>
      <category>rust</category>
    </item>
    <item>
      <title>Deno : Let's Make JavaScript Uncomplicated. A Powerful NextGen JavaScript Runtime</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Tue, 25 Jun 2024 07:35:51 +0000</pubDate>
      <link>https://dev.to/a4arpon/deno-lets-make-javascript-uncomplicated-a-powerful-nextgen-javascript-runtime-1h2o</link>
      <guid>https://dev.to/a4arpon/deno-lets-make-javascript-uncomplicated-a-powerful-nextgen-javascript-runtime-1h2o</guid>
      <description>&lt;h2&gt;
  
  
  What is JavaScript Server Side Runtime
&lt;/h2&gt;

&lt;p&gt;A JavaScript server-side runtime allows JavaScript to run on the server, letting developers use JavaScript for backend development. This means you can use the same language for both the frontend and backend, making web development more consistent and efficient.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why People Use Node.js
&lt;/h2&gt;

&lt;p&gt;Node.js is popular because it handles multiple connections efficiently with its non-blocking, event-driven architecture. It allows developers to use JavaScript on the server-side, providing a unified language for the entire application. Its large ecosystem, with npm, offers a wealth of libraries and tools, speeding up development.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Problems Node.js Creates in a Project
&lt;/h2&gt;

&lt;p&gt;Node.js can make projects complicated due to its asynchronous nature, leading to issues like callback hell, which makes code harder to maintain. Its single-threaded event loop can also cause performance issues in CPU-heavy tasks. Additionally, relying heavily on third-party packages can pose security risks and make dependency management challenging.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Deno Came Instead of Fixing Node
&lt;/h2&gt;

&lt;p&gt;Deno was created to tackle the fundamental issues in Node.js, like security flaws and complex package management. Instead of patching Node.js, Deno offers a fresh approach with better security, built-in TypeScript support, and a simpler module system to make development easier and safer.&lt;/p&gt;

&lt;h2&gt;
  
  
  What It Solves
&lt;/h2&gt;

&lt;p&gt;Deno improves security by running in a secure sandbox by default and requiring permissions for file, network, and environment access. It gets rid of the need for a centralized package manager by using URLs for module imports. It also has built-in TypeScript support and a more modern API, reducing complexity and boosting productivity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why People Are Facing Problems Adopting It
&lt;/h2&gt;

&lt;p&gt;Switching to Deno is challenging because it's not compatible with existing Node.js modules, meaning projects need to be rewritten or adapted. The shift from npm to URL-based imports has a learning curve. Plus, since Deno is relatively new, it has a smaller community and fewer third-party libraries compared to Node.js.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Deno is Solving Adoption Problems
&lt;/h2&gt;

&lt;p&gt;Deno is making the transition easier by providing tools and documentation to help developers move from Node.js. It offers compatibility layers and conversion tools for migrating existing projects. The active community and ongoing improvements are making the ecosystem more attractive for developers.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is the Current Stage of Deno
&lt;/h2&gt;

&lt;p&gt;Deno is now in a stable phase with regular updates and a growing ecosystem. More projects are starting to use it, especially those that prioritize security and modern JavaScript features. The community is growing, contributing more libraries and tools, which makes Deno a stronger alternative to Node.js.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why People Are Starting to Use It in This Era
&lt;/h2&gt;

&lt;p&gt;People are adopting Deno because of its improved security model, built-in TypeScript support, and modern API design. As web development evolves, Deno’s approach fits well with current best practices. With active development and strong community support, Deno promises a robust future, encouraging more developers to make the switch.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deno's New JavaScript Registry: JSR
&lt;/h2&gt;

&lt;p&gt;Deno also addresses the URL problem with a new JavaScript registry called JSR, which you can think of as a modern version of npm. JSR supports ES modules, TypeScript, and multiple runtimes, including browsers. This means you no longer need to use URL patterns, and npm packages are now compatible with Deno.&lt;/p&gt;

&lt;h2&gt;
  
  
  Simplified Configuration with Deno
&lt;/h2&gt;

&lt;p&gt;Working with Node.js often involves wasting time on configuring TypeScript, Prettier, ESLint, and other tools. Deno simplifies this by offering built-in support for these tools. It's a straightforward solution: just start a new project and begin writing code without worrying about external configurations. Deno is designed to streamline your development process.&lt;/p&gt;

&lt;h2&gt;
  
  
  Author:
&lt;/h2&gt;

&lt;p&gt;Mr. Wayne&lt;br&gt;
Social: &lt;br&gt;
&lt;a href="https://www.facebook.com/a4arpon" rel="noopener noreferrer"&gt;Facebook&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.github.com/a4arpon" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/a4arpon" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;br&gt;
&lt;a href="https://a4arpon.me" rel="noopener noreferrer"&gt;Portfolio&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>deno</category>
      <category>node</category>
      <category>backenddevelopment</category>
    </item>
    <item>
      <title>Upscale Your React App Into Next Level</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Sun, 10 Mar 2024 17:21:39 +0000</pubDate>
      <link>https://dev.to/a4arpon/upscale-your-react-app-into-next-level-reactive-radiation-a4arponme-20n5</link>
      <guid>https://dev.to/a4arpon/upscale-your-react-app-into-next-level-reactive-radiation-a4arponme-20n5</guid>
      <description>&lt;p&gt;A Professional React Project Setup With BiomeJS, Bun and Vite&lt;/p&gt;

&lt;h2&gt;
  
  
  Intro
&lt;/h2&gt;

&lt;p&gt;Like angular and vue react don't have any specific folder structure. But if you want to make a production grade web app with industry best practices. There are thousands of structures available online for react projects but today I'm teaching you another one. In this project we will  choose our packages which are type safe and latest also. Listen carefully this is my own reactive project peradiam. I'm not arguing with anyone about why I use this instead of the sampler one or why I didn't use traditional packages to extend the react app. I am a huge performance freak. Every second of performance and memory byte is important for me. And I structure my project in the way that I can push updates in future without messing up with everything.    &lt;/p&gt;

&lt;h2&gt;
  
  
  Technologies
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://tanstack.com/router/latest" rel="noopener noreferrer"&gt;TanStack&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://biomejs.dev/" rel="noopener noreferrer"&gt;BiomeJS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://lucide.dev/icons/" rel="noopener noreferrer"&gt;Lucide Icon&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nextui.org/docs/guide/introduction" rel="noopener noreferrer"&gt;@Nextui&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Initiate Project With Vite
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;bunx create-vite
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Install Dep
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;bun add lucide-react react-helmet-async appwrite @nextui-org/react framer-motion @tanstack/react-router

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  Install Dev Dep
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;bun add --dev tailwindcss postcss autoprefixer @tanstack/router-vite-plugin @types/bun @biomejs/biome
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Config Setup
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Vite Config For Project &lt;code&gt;vite.config.ts&lt;/code&gt;
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// vite.config.ts

// ....
import path from 'path'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    // ...,
    // Split Vendor Chunk 
    splitVendorChunkPlugin(),
    // Tans Stack Router Config
    TanStackRouterVite()
  ],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src'),
    },
  },
})
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  TypeScript config file &lt;code&gt;tsconfig.json&lt;/code&gt;
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
{
    // Extra for aliases
    "paths": {
      "baseUrl": ["."],
      "@/*": ["./src/*"]
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Setting up Tailwind CSS in a Vite project.
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;bunx tailwindcss init -p

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

&lt;/div&gt;



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

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const {nextui} = require("@nextui-org/react");

export default {
  content: [
    "./index.html",
    "./src/**/*.tsx}",
    "./node_modules/@nextui-org/theme/dist/**/*.{js,ts,jsx,tsx}",
  ],
  theme: {
    extend: {},
  },
  darkMode: "class",
  plugins: [nextui()],
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;index.css&lt;/code&gt;&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;&lt;code&gt;Next Theme Provider&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    &amp;lt;NextUIProvider&amp;gt;
      &amp;lt;YourApplication /&amp;gt;
    &amp;lt;/NextUIProvider&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;biome.json&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "organizeImports": {
    "enabled": true
  },
  "linter": {
    "enabled": true,
    "rules": {
      "recommended": true,
      "style": {
        "noVar": "error"
      },
      "correctness": {
        "noUnusedVariables": "warn"
      }
    }
  },
  "formatter": {
    "enabled": true,
    "indentWidth": 2,
    "indentStyle": "space",
    "lineWidth": 80,
    "formatWithErrors": false
  },
  "javascript": {
    "formatter": {
      "semicolons": "asNeeded",
      "trailingComma": "es5",
      "jsxQuoteStyle": "double"
    }
  },
  "files": {
    "ignore": ["routeTree.gen.ts"]
  }
}

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

&lt;/div&gt;



</description>
      <category>javascript</category>
      <category>react</category>
      <category>professional</category>
      <category>projectsetup</category>
    </item>
    <item>
      <title>Things I will follow if I hire any Front End Developer in 2024</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Fri, 16 Feb 2024 18:09:33 +0000</pubDate>
      <link>https://dev.to/a4arpon/things-i-will-follow-if-i-hire-any-front-end-developer-in-2024-m33</link>
      <guid>https://dev.to/a4arpon/things-i-will-follow-if-i-hire-any-front-end-developer-in-2024-m33</guid>
      <description>&lt;h2&gt;
  
  
  If I hire for my company or any of my known person or his team this year, then the following requirements must be followed:
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Design-Driven, Deeply Technical Talent:
&lt;/h3&gt;

&lt;p&gt;I seek individuals who demonstrate genuine enthusiasm for web design and possess a robust understanding of front-end frameworks. Superficiality doesn't suffice; I value those who grasp the internal workings of browsers and their interactions with front-end development.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Beyond Boot Camps: Experience Matters:
&lt;/h3&gt;

&lt;p&gt;While bootcamps can offer a starting point, I emphasize real-world experience and mastery over short-term training. I prioritize candidates who exhibit a solid understanding of JavaScript's core functionalities and principles.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Mastering React's Core and Hooks:
&lt;/h3&gt;

&lt;p&gt;In-depth knowledge of React's core concepts and hooks is essential. While encyclopedic knowledge isn't necessary, I seek developers who demonstrate a profound understanding of these crucial elements.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Building Reusable Components and Library Awareness:
&lt;/h3&gt;

&lt;p&gt;The ability to design reusable components and proficiency in contemporary JavaScript-based component libraries are highly desirable. This skill showcases foresight and an understanding of efficient development practices.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Client-Server Differentiation:
&lt;/h3&gt;

&lt;p&gt;A clear understanding of the distinction between client-side and server-side development is crucial for effective collaboration and problem-solving within web applications.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Staying Ahead of the Curve: React Rendering Optimization:
&lt;/h3&gt;

&lt;p&gt;Knowledge of React's re-rendering behavior and strategies for optimization showcases a commitment to best practices and performance improvement.&lt;/p&gt;

&lt;h2&gt;
  
  
  Beyond the Basics: Advanced Skills and Future-Proof Development:
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Progressive Web Apps: A Valuable Plus:
&lt;/h3&gt;

&lt;p&gt;While not mandatory, expertise in Progressive Web Apps is a sought-after skill. In today's mobile-first environment, it gives us the flexibility to deliver enhanced user experiences across platforms.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. React Native Mastery for Mobile Expansion:
&lt;/h3&gt;

&lt;p&gt;Given the significant role React Native plays in contemporary mobile development, proficiency in this framework would be a major advantage. It signifies adaptability and expertise in building cross-platform mobile applications.&lt;/p&gt;

&lt;p&gt;Follow For Next Part: &lt;br&gt;
&lt;a href="https://dev.to/a4arpon"&gt;Dev.to&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.facebook.com/a4arpon" rel="noopener noreferrer"&gt;Facebook&lt;/a&gt;&lt;br&gt;
&lt;a href="https://twitter.com/a4arpon" rel="noopener noreferrer"&gt;X @a4arpon&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>node</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>Behind the Screens: How Your App's Back-end Works</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Thu, 28 Dec 2023 05:55:17 +0000</pubDate>
      <link>https://dev.to/a4arpon/behind-the-screens-how-your-apps-back-end-works-bgg</link>
      <guid>https://dev.to/a4arpon/behind-the-screens-how-your-apps-back-end-works-bgg</guid>
      <description>&lt;p&gt;Ever wondered what happens when you tap that button on your favorite app? How does it magically fetch your information or place that order? Well, it's time to take a peek behind the curtains and meet the unsung hero: the enterprise back-end!&lt;/p&gt;

&lt;h2&gt;
  
  
  Imagine a busy restaurant kitchen...
&lt;/h2&gt;

&lt;p&gt;Think of the backend as a super-efficient kitchen, handling a constant flow of orders (requests) from customers (you!). Here's a step-by-step journey of how it works:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Order Arrives: When you tap that button, it's like placing an order with the kitchen. The request first meets the friendly HTTP server, who takes note of the order and passes it along.&lt;/li&gt;
&lt;li&gt;Global Middleware, the Head Chef: The global middleware, like a head chef, checks every order for basic requirements. Is it complete? Does it make sense? If not, it gets sent back with a helpful note for the customer.&lt;/li&gt;
&lt;li&gt;Finding the Right Cook: Each request has a specific destination, like a dish on the menu. The route, like a skilled maître d', guides the request to the right controller, the expert chef who knows just what to do.&lt;/li&gt;
&lt;li&gt;Chef's Prep Work: The controller gets organized, double-checking the order for accuracy (validation) and calling on any specialized third-party services needed, like a pastry chef for those fancy desserts.&lt;/li&gt;
&lt;li&gt;Cooking Up the Magic: Now comes the heart of the kitchen, the business logic. This is where the real cooking happens, applying the app's unique recipes to transform ingredients into delicious results.&lt;/li&gt;
&lt;li&gt;Handling Any Spills: Even the best chefs have occasional mishaps. The error handling team is always ready to catch any issues and send back a helpful response to avoid a ruined meal.&lt;/li&gt;
&lt;li&gt;Plating Perfection: Once the dish is ready, it's time to present it beautifully! The response is carefully crafted and sent back through the same route, ensuring a satisfying experience for the customer.&lt;/li&gt;
&lt;li&gt;Secret Ingredients: Sometimes, chefs need extra help from custom pantry items. The business logic might call on custom services to interact with the database, retrieving or storing important ingredients for future use.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;And voilà!&lt;/strong&gt; Your app responds seamlessly, thanks to the tireless work of the backend kitchen. So next time you tap that button, take a moment to appreciate the invisible culinary artistry happening behind the scenes!&lt;/p&gt;

</description>
      <category>backend</category>
      <category>javascript</category>
      <category>devops</category>
      <category>node</category>
    </item>
    <item>
      <title>A better Back-end Architecture Design fast approach. Part - 1 | Shahin Islam Arpon</title>
      <dc:creator>Shahin Islam</dc:creator>
      <pubDate>Sun, 24 Dec 2023 06:37:15 +0000</pubDate>
      <link>https://dev.to/a4arpon/a-better-back-end-architecture-design-fast-approach-part-1-shahin-islam-arpon-4eii</link>
      <guid>https://dev.to/a4arpon/a-better-back-end-architecture-design-fast-approach-part-1-shahin-islam-arpon-4eii</guid>
      <description>&lt;h2&gt;
  
  
  Components
&lt;/h2&gt;

&lt;p&gt;The main components of a backend application typically include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Server&lt;/strong&gt;: The server is responsible for receiving requests from clients and processing them. It handles tasks such as routing, authentication, and data validation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database&lt;/strong&gt;: The database stores and manages the application's data. It can be relational (e.g., MySQL, PostgreSQL) or NoSQL (e.g., MongoDB, Cassandra) depending on the requirements.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;APIs&lt;/strong&gt;: APIs (Application Programming Interfaces) allow communication between different parts of the system. They define how different components can interact with each other.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security&lt;/strong&gt;: Backend systems often implement security measures such as encryption, authentication, and authorization to protect sensitive data and ensure secure access.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Caching&lt;/strong&gt;: Caching is used to improve performance by storing frequently accessed data in memory. It helps reduce the load on the server and speeds up response times.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Background Processing&lt;/strong&gt;: Some backend applications require background processing for tasks such as sending emails, generating reports, or performing time-consuming operations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Logging and Monitoring&lt;/strong&gt;: Logging and monitoring tools are used to track and analyze the system's performance, identify issues, and ensure smooth operation.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These components work together to create a robust and efficient backend system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checklist
&lt;/h2&gt;

&lt;p&gt;API Development Checklist for Developers&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Understand the requirements and purpose of the API&lt;/li&gt;
&lt;li&gt;Define the endpoints and their corresponding HTTP methods&lt;/li&gt;
&lt;li&gt;Implement request validation and handle error cases&lt;/li&gt;
&lt;li&gt;Design and implement the data models and database interactions&lt;/li&gt;
&lt;li&gt;Implement the necessary authentication and authorization mechanisms&lt;/li&gt;
&lt;li&gt;Write clear and concise documentation for the API endpoints&lt;/li&gt;
&lt;li&gt;Test the API endpoints using a tool like Postman or curl&lt;/li&gt;
&lt;li&gt;Handle edge cases and error scenarios gracefully&lt;/li&gt;
&lt;li&gt;Implement proper error handling and error messages&lt;/li&gt;
&lt;li&gt;Optimize the API for performance and scalability&lt;/li&gt;
&lt;li&gt;Implement logging and monitoring for the API&lt;/li&gt;
&lt;li&gt;Collaborate with front-end developers to ensure smooth integration with the UI&lt;/li&gt;
&lt;li&gt;Follow best practices and coding standards for API development&lt;/li&gt;
&lt;li&gt;Document and communicate any changes or updates to the API&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Follow for next part. &lt;/p&gt;

</description>
      <category>node</category>
      <category>backenddevelopment</category>
      <category>javascript</category>
      <category>database</category>
    </item>
  </channel>
</rss>
