#vite js
Explore tagged Tumblr posts
nubecolectiva · 3 months ago
Text
What “TypeScript + SWC” Means in Vite JS.
Qué Significa “TypeScript + SWC” en Vite JS.
👉 https://blog.nubecolectiva.com/que-significa-typescript-swc-en-vite-js/
Tumblr media
0 notes
cat-brrr · 9 months ago
Text
.
4 notes · View notes
caylakyazilimci · 1 year ago
Text
vite nedir?
Vite, modern web projeleri geliştirmek için hızlı ve minimalist bir yapı sunan bir JavaScript aracıdır. Vue.js ve React gibi popüler JavaScript kütüphaneleri veya framework'lerini kullanarak web uygulamaları geliştirmek için yaygın olarak tercih edilir.
Vite, geliştirme sürecini hızlandırmak için geliştirilmiş bir geliştirme sunucusu ve hızlı bir derleme aracı sunar. Proje dosyalarını değişiklikleri anında algılayarak anlık yeniden yükleme yapar ve hızlıca güncellenmiş bir önizleme sunar. Bu, geliştiricilerin kodlarını yazarken anlık geri bildirim almasını sağlar ve geliştirme sürecini daha verimli hale getirir.
Ayrıca, Vite, modüler bir mimariye dayanarak yalnızca ihtiyaç duyulan modülleri (örneğin, Vue bileşenleri) derler ve bunları tek bir dosyada bir araya getirir. Bu da geliştirme sürecini hızlandırır ve son kullanıcıya daha hafif ve daha hızlı bir uygulama sunar.
Genel olarak, Vite, modern web uygulamaları geliştirmek için hızlı, verimli ve kullanımı kolay bir araç olarak öne çıkar.
ite'ı kullanmak oldukça kolaydır. İşte Vite'ı kullanarak bir Vue.js projesi oluşturmanın temel adımları:
Proje Dizinini Oluşturun: Öncelikle bir proje dizini oluşturun veya var olan bir dizine gidin.
Proje İçin Bir Paket Yöneticisi Seçin: Projenizde npm veya Yarn gibi bir paket yöneticisi kullanın. Proje dizininde bir paket.json dosyası oluşturmak için aşağıdaki komutlardan birini çalıştırın:bashCopy codenpm init -y veyabashCopy codeyarn init -y
Vite'ı Yükleyin: Vite'ı proje bağımlılıklarına ekleyin. Vue.js projesi oluşturacaksanız, aşağıdaki komutu çalıştırın:bashCopy codenpm install vite @vitejs/plugin-vue veyabashCopy codeyarn add vite @vitejs/plugin-vue
Vite Config Dosyasını Oluşturun (Opsiyonel): Vite, varsayılan ayarlarla çalışır, ancak gerektiğinde bir Vite yapılandırma dosyası oluşturabilirsiniz. Bu dosyayı oluşturmak için projenizin kök dizininde vite.config.js adında bir dosya oluşturun.
Uygulamanızı Oluşturun: Vue.js kullanarak bir uygulama oluşturmak için, projenizin kök dizininde bir index.html dosyası ve src altında bir main.js dosyası oluşturun. İlgili kütüphaneleri ve bileşenleri bu dosyalara ekleyin.
Geliştirme Sunucusunu Başlatın: Vite, geliştirme sunucusunu başlatmak için kullanılabilir. Aşağıdaki komutu çalıştırarak geliştirme sunucusunu başlatın:bashCopy codenpm run dev veyabashCopy codeyarn dev Bu komut, geliştirme sunucusunu başlatır ve tarayıcıda uygulamanızın çalışan bir önizlemesini sağlar. Geliştirme süreci boyunca, kod değişiklikleriniz anında algılanır ve tarayıcıda canlı olarak yeniden yüklenir.
Uygulamanızı Derleyin ve Dağıtın (Opsiyonel): Uygulamanızı derlemek ve dağıtmak için Vite'ın sağladığı komutları kullanabilirsiniz. Örneğin, uygulamanızı derlemek için aşağıdaki komutu çalıştırabilirsiniz:bashCopy codenpm run build veyabashCopy codeyarn build Bu komut, uygulamanızı optimize edilmiş bir şekilde derler ve genellikle dağıtıma hazır bir paket oluşturur.
Bu adımları takip ederek Vite'ı kullanarak Vue.js veya başka bir JavaScript projenizi kolayca oluşturabilir ve geliştirebilirsiniz.
0 notes
kedama-mz · 2 years ago
Text
0 notes
Text
0 notes
utopicwork · 7 months ago
Text
Working on an issue with sending packets on the modified Meshtastic firmware but I can confirm that the Vite bundled JS works as expected so once that's handled things should be able to ramp up dev speed wise.
7 notes · View notes
fujowebdev · 2 years ago
Text
WebDev Q&A Highlights
Good news: we're getting better at using Twitch! This means we're starting to publish more digestible highlights of our streams for people who want to get straight to the goods. Here's the ones from last stream's WebDev Q&A:
Astro components vs React components
What is Vite (& Rollup)
Package Managers vs CDNs vs copy-and-paste JS libraries
Websockets vs HTTP requests
Some favorite JS libraries
Some favorite VSCode extensions
And from the last last stream (forms and payments):
Forms (in general, but especially in Astro)
Taking payments with Stripe and Paypal
Tumblr media
See you tomorrow on Twitch at 3PM PST with our next stream: using ao3.js to add new characters to RobinBoob, our one and only Ships marketplace.
21 notes · View notes
guzsdaily · 8 months ago
Text
Good Code is Boring
Daily Blogs 358 - Oct 28th, 12.024
Something I started to notice and think about, is how much most good code is kinda boring.
Clever Code
Go (or "Golang" for SEO friendliness) is my third or fourth programming language that I learned, and it is somewhat a new paradigm for me.
My first language was Java, famous for its Object-Oriented Programming (OOP) paradigms and features. I learned it for game development, which is somewhat okay with Java, and to be honest, I hardly remember how it was. However, I learned from others how much OOP can get out of control and be a nightmare with inheritance inside inheritance inside inheritance.
And then I learned JavaScript after some years... fucking god. But being honest, in the start JS was a blast, and I still think it is a good language... for the browser. If you start to go outside from the standard vanilla JavaScript, things start to be clever. In an engineering view, the ecosystem is really powerful, things such as JSX and all the frameworks that use it, the compilers for Vue and Svelte, and the whole bundling, and splitting, and transpiling of Rollup, ESBuild, Vite and using TypeScript, to compile a language to another, that will have a build process, all of this, for an interpreted language... it is a marvel of engineering, but it is just too much.
Finally, I learned Rust... which I kinda like it. I didn't really make a big project with it, just a small CLI for manipulating markdown, which was nice and when I found a good solution for converting Markdown AST to NPF it was a big hit of dopamine because it was really elegant. However, nowadays, I do feel like it is having the same problems of JavaScript. Macros are a good feature, but end up being the go-to solution when you simply can't make the code "look pretty"; or having to use a library to anything a little more complex; or having to deal with lifetimes. And if you want to do anything a little more complex "the Rust way", you will easily do head to head with a wall of skill-issues. I still love it and its complexity, and for things like compiler and transpilers it feels like a good shot.
Going Go
This year I started to learn Go (or "Golang" for SEO friendliness), and it has being kinda awesome.
Go is kinda like Python in its learning curve, and it is somewhat like C but without all the needing of handling memory and needing to create complex data structured from scratch. And I have never really loved it, but never really hated it, since it is mostly just boring and simple.
There are no macros or magic syntax. No pattern matching on types, since you can just use a switch statement. You don't have to worry a lot about packages, since the standard library will cover you up to 80% of features. If you need a package, you don't need to worry about a centralized registry to upload and the security vulnerability of a single failure point, all packages are just Git repositories that you import and that's it. And no file management, since it just uses the file system for packages and imports.
And it feels like Go pretty much made all the obvious decisions that make sense, and you mostly never question or care about them, because they don't annoy you. The syntax doesn't get into your way. And in the end you just end up comparing to other languages' features, saying to yourself "man... we could save some lines here" knowing damn well it's not worth it. It's boring.
You write code, make your feature be completed in some hours, and compile it with go build. And run the binary, and it's fast.
Going Simple
And writing Go kinda opened a new passion in programming for me.
Coming from JavaScript and Rust really made me be costumed with complexity, and going now to Go really is making me value simplicity and having the less moving parts are possible.
I am becoming more aware from installing dependencies, checking to see their dependencies, to be sure that I'm not putting 100 projects under my own. And when I need something more complex but specific, just copy-and-paste it and put the proper license and notice of it, no need to install a whole project. All other necessities I just write my own version, since most of the time it can be simpler, a learning opportunity, and a better solution for your specific problem. With Go I just need go build to build my project, and when I need JavaScript, I just fucking write it and that's it, no TypeScript (JSDoc covers 99% of the use cases for TS), just write JS for the browser, check if what you're using is supported by modern browsers, and serve them as-is.
Doing this is really opening some opportunities to learn how to implement solutions, instead of just using libraries or cumbersome language features to implement it, since I mostly read from source-code of said libraries and implement the concept myself. Not only this, but this is really making me appreciate more standards and tooling, both from languages and from ecosystem (such as web standards), since I can just follow them and have things work easily with the outside world.
The evolution
And I kinda already feel like this is making me a better developer overhaul. I knew that with an interesting experiment I made.
One of my first actual projects was, of course, a to-do app. I wrote it in Vue using Nuxt, and it was great not-gonna-lie, Nuxt and Vue are awesome frameworks and still one of my favorites, but damn well it was overkill for a to-do app. Looking back... more than 30k lines of code for this app is just too much.
And that's what I thought around the start of this year, which is why I made an experiment, creating a to-do app in just one HTML file, using AlpineJS and PicoCSS.
The file ended up having just 350 files.
Today's artists & creative things Music: Torna a casa - by Måneskin
© 2024 Gustavo "Guz" L. de Mello. Licensed under CC BY-SA 4.0
4 notes · View notes
ask-the-td-cast · 9 months ago
Note
I mean you were good enough to teach a stick figure to win total drama so thats saying alot (good way) and Im pretty sure they only voted you off bc of Lightning and the leeches, Scott was in fact in the way and Lightning deserved to be vited off. Soooooooo all that gives you a reason to win all stars and rveryone js saw you as bitchy sadly 😔😔😔
…Y’know what, I like where this going cuz that is all true. I DESERVED to win tdroti and everyone knows it! (Zoey: This might be bad for us right? I don’t I could handle a Jo with an ego the size of an island. Anne Maria: Suit yourself red, I’m going on a shopping spree the moment this is over. ) - Jo
3 notes · View notes
hiringjournal · 12 days ago
Text
5 Essential Skills to Look for When You Hire a Vue.js Developer
Tumblr media
Vue.js is quickly becoming the preferred front-end framework for companies wishing to create adaptable, high-performing web apps. The developer behind your user interface frequently determines its quality, whether you're working on an MVP or developing a sophisticated platform. 
For this reason, a lot of tech firms are opting to use Vue.js engineers to power their projects. Hiring someone with Vue knowledge alone won't help; you need someone who knows the framework and its ecosystem better. When hiring vue js developers, you should look for the five essential abilities listed below.
Build Better Interfaces by Hiring the Right Front-End Talent
Core proficiency in Vue.js
Although it may seem apparent, a strong grasp of Vue's fundamental features—reactive data binding, components, directives, and lifecycle hooks—is the cornerstone of any successful Vue developer. Additionally, a strong applicant should understand when and how to use Vue Router and Vue CLI. 
Make sure Vue.js engineers are at ease with Vue 3 and the Composition API before hiring them for long-term projects. For scalable applications, current IT businesses desire enhanced performance and better code organization, which the most recent version offers.
Deep knowledge of JavaScript and ES6+
Since Vue.js is based on JavaScript, knowing how to use contemporary JavaScript (ES6+) is essential. The ideal developer should feel at ease with promises, destructuring, array methods, arrow functions, and template literals. This guarantees their ability to write code that is clear, modular, and maintainable. Additionally, it's critical that they comprehend how JavaScript works with the DOM, particularly when responsiveness and performance are major considerations.
Experience in front-end ecosystems and tools
Vue is rarely utilized alone. It is frequently integrated by developers with testing libraries like Jest, Axios for managing APIs, and Vuex for state management. Proficient Vue.js developers should be able to use Webpack or Vite to create effective development pipelines. Knowing CSS pre-processors like SASS or LESS is also a plus because many tech businesses demand front-end engineers to know how to use them.
For this reason, it is essential to hire front-end developers who are knowledgeable with all aspects of contemporary online tools, not just the framework.
API integration and backend collaboration
The work of front-end developers is not isolated. They must communicate with RESTful APIs and backend systems with ease. Seek applicants who have experience working in teams utilizing Agile approaches and who are proficient in processing authentication tokens, testing API endpoints, and gracefully handling errors. To prevent a skills mismatch, be sure to include this criterion if you are working with an IT staffing agency.
Problem-solving and communication skills
Technical proficiency is important, but so is the ability for independent problem-solving and effective communication. The top Vue.js developers collaborate as often as they code. They grasp the business implications of their code, provide better solutions, and pose pertinent questions. These soft skills can have a significant impact on the success of a project, whether you're working with a small startup or a huge tech company.
Concluding Thoughts
Hiring Vue js developers involves more than just checking off boxes on a CV. Professionals who are well-versed in the framework, work well with others, and stay up to date with changing tech stacks are what you require. Hiring the appropriate person can improve your front-end experience, cut down on development time, and increase the marketability of your product.
0 notes
korshubudemycoursesblog · 18 days ago
Text
🚀 From Novice to Pro: Build a Swiggy-Style Food App with React 18
Tumblr media
Have you ever dreamed of building a food delivery app like Swiggy or Zomato using the most in-demand frontend library, React? Whether you're a beginner or looking to elevate your frontend development skills, React 18 opens up incredible possibilities—and the best way to master it is by getting hands-on.
Imagine being able to create a real-world food delivery platform, complete with features like dynamic menus, cart functionality, and routing—all from scratch. If that sounds like your jam, you're going to love the journey of learning React through the lens of building a Swiggy-style food app.
And here's the good news: you don’t have to do it alone. With the course Mastering React 18: Build a Swiggy-Style Food App, you’ll get everything you need—step-by-step guidance, real-world coding experience, and modern best practices.
Let’s break down why this is one of the smartest ways to learn React in 2025.
Why React 18 Is Still a Game-Changer in 2025
React has come a long way, but React 18 is where the future starts. With features like automatic batching, concurrent rendering, and the transition API, it brings smoother UI updates and better performance to your applications.
These updates are more than just technical improvements—they directly impact user experience. Whether you’re building a personal project or developing apps for clients, React 18 ensures that your interfaces are responsive, scalable, and lightning-fast.
In other words, learning React 18 gives you a serious edge in today’s frontend job market.
What Makes Building a Food Delivery App So Valuable?
You might wonder: why a food delivery app? Why not just build a to-do list or calculator?
Great question.
Here’s the truth: while basic projects help you learn syntax, real-world projects like a Swiggy-style app teach you how to think like a developer. They help you understand how to:
Structure components effectively
Manage application-wide state
Integrate APIs and fetch dynamic data
Use advanced features like lazy loading, routing, and conditional rendering
Optimize performance and manage code reusability
Plus, let’s be honest—a food app is way more fun to build and show off than a to-do list.
What You’ll Learn in This Course
The course Mastering React 18: Build a Swiggy-Style Food App isn’t just about React basics. It’s about learning to build a complete, fully-functional application that mimics the UX and UI of a real-world platform.
Here’s what you can expect to master:
🔹 Setting Up Your Development Environment
From setting up your folder structure to installing the latest React 18 version, the course walks you through everything. You'll even get hands-on with Vite or Create React App for fast and optimized development.
🔹 Component-Based Architecture
You’ll learn how to break your app into reusable, modular components—like headers, cards, menus, and cart elements—following modern practices.
🔹 Routing & Navigation
React Router DOM makes navigating through your app smooth and dynamic. Learn how to implement routes like Home, Restaurant Details, Checkout, and more.
🔹 State Management
Explore React’s built-in useState and useReducer hooks, and get introduced to state management tools like Redux Toolkit or Context API to manage global states like cart contents or restaurant menus.
🔹 Working with APIs
Discover how to fetch real-time data from mock APIs (or real ones!) and display it dynamically in your app. Learn about useEffect, asynchronous calls, and loading states.
🔹 Optimizing User Experience
Dive into performance tricks—like code splitting, lazy loading, and suspense—to make your app lightning-fast and SEO-friendly.
🔹 Responsive Design
Use CSS-in-JS, Tailwind CSS, or plain CSS to ensure your app looks great on all devices, from smartphones to desktops.
Who Is This Course For?
This course is for:
✅ Beginners who know some JavaScript and want to learn React by doing something practical ✅ Intermediate developers looking to refresh their skills and add a real-world project to their portfolio ✅ Freelancers & job seekers wanting to build portfolio-worthy projects that impress clients and employers
Whether you're aiming to land a job, freelance, or build your own startup, this course equips you with skills that truly matter.
Let’s Talk About Career Benefits 🎯
Once you’ve completed the app, you won’t just know React—you’ll own it. You’ll understand how to architect modern applications that can scale, perform, and delight users.
Employers love developers who:
Can build end-to-end projects
Understand state and data flow
Write clean, reusable code
Know how to debug and optimize
By learning through a real-world project like this food delivery app, you showcase exactly those skills.
Practical Features You’ll Build
To make things even more exciting, here are just some of the features you’ll bring to life in your food app:
🛍️ Cart Management
🍔 Dynamic Menus
📍 Restaurant Listings with Filters
📦 Add to Cart / Remove from Cart Functionality
🔄 Routing and Deep Linking
📲 Responsive Mobile Layout
🌐 SEO and Performance Optimization
By the end, you’ll have a polished app that looks and works like something you’d find on the App Store.
Why This Course Over Others?
There are dozens of React tutorials out there. So why pick this one?
Because it’s goal-oriented, real-world focused, and result-driven. Instead of showing you dry concepts in isolation, it walks you through a real business case: a Swiggy-style food app. It helps you think like a product engineer—not just a coder.
Also, this course is regularly updated, uses modern tooling, and helps you understand the why behind the how. That’s crucial when leveling up.
Learn by Doing: No More Tutorial Hell
The problem with most courses? You watch videos, nod along… and forget it all by the next day.
This course is different.
It encourages active learning. You’ll build the app alongside the instructor, write real code, and solve actual challenges. That’s the secret to mastering React and escaping “tutorial hell.”
Build Confidence Through Action
By the end of this course, you’ll have:
✅ A complete, responsive food delivery app in your portfolio ✅ A clear understanding of how React 18 works under the hood ✅ Real confidence to take on new frontend projects ✅ The ability to contribute to or lead React-based projects
It’s not just about watching someone code. It’s about gaining real experience that sticks.
Bonus: Reusable Codebase for Future Projects
Once you've completed the food app, you can reuse its architecture and logic for future e-commerce platforms, restaurant websites, or client projects. You’ll save time, work smarter, and deliver faster.
In short: you’ll have a strong foundation for your React journey.
Get Started Today
There’s no better time to learn React 18 than right now. The frontend ecosystem is thriving, and skills like these open doors—whether you want to work at a startup, land freelance gigs, or build your own product.
Ready to turn your coding dreams into reality?
👉 Mastering React 18: Build a Swiggy-Style Food App is the ultimate hands-on guide to modern React development.
Start building. Start growing. Start coding like a pro. 🚀
0 notes
black7375 · 28 days ago
Text
프론트엔드 모노레포 빌드에 대한 소고
개인적인 취향이 상당부분 반영되어 있지만 평소 모노레포 빌드/태스크에 대해 가지고 있던 생각을 정리해보았습니다.
1. 프론트엔드 모노레포 빌드/태스크 구조
빌드나 각종 명령어 실행에 있어서 3가지 정도로 나뉠 수 있을 것 같다.
작업 종속성: 분리할 수 있는 작업은 분리하여 실행하거나 병렬적으로 실행한다
작업목적의 차이: 라이브러리냐, 앱이냐? 빌드냐 테스트냐 등에 따라 달라짐
실행환경의 차이: 로컬에서는 빠르게 여러번 실행하고, 서버에서는 최대한 많은 검증을 한다.
작업종속성
Tumblr media
패키지 종속성: 패키지만 설치되면 검증 가능한 작업들
타입 종속성: 타입이 빌드되야 검증 가능한 작업들
빌드 종속성: 빌드가 되어야 검증 가능한 작업들
패키지만 설치되면 검증 가능한 작업들로는 패키지 매니저의 lockfile, peerDeps 검증, prettier/eslint와 같은 포매팅과 린팅 작업이 있다.
의외로 타입 검증 작업은 빌드 작업과 별개로 가능하다. 다만 typescript-eslint와 같이 타입이 빌드되야 린트 검증이 가능한 가능한 경우가 있다.
모노레포에서 테스트는 의존한 패키지의 빌드가 되어있어야 실행가능하다.
작업목적의 차이
Tumblr media
패키지 목적: 라이브러리 / 앱 / 환경설정 / 테스트
번들러 목적: 빌드 / 개발서버 / 테스트
작업목적에 따라 실행해야할 작업들이 상이하다. 예를 들어 라이브러리는 ESM/CJS 빌드, 타입 빌드 모두가 필요하다. 앱은 빌드 결과물 1개와 타입체크, 환경설정용/테스용은 타입 체크 정도만 필요하다.
또한 똑같이 번들러 작업이 필요하다고 해도, 빌드, 개발서버, 테스트등 작업 따라 필요한 플러그인이 다르다.
실행환경의 차이
Tumblr media
로컬에서 개발하며 실행
리모트에서 검증
개발 환경은 모든 환경을 고려하기보다는 빠르게 실행되어 코딩-빌드-테스트 이터레이션을 여러번 돌릴 수 있게 만드는게 합리적이다. 따라서 특히 개발서버는 ESM 환경에서 실행하는 vite, 마찬가지로 vitest 또한 ESM Native를 사용하는 등 가능하면 ESM Only를 전제하고 패키지를 설정해야 한다.
Tumblr media Tumblr media
반대로 리모트(PR 시)는 최대한 많은 것을 검증함이 좋다. 위에서 언급된 작업 종속성에 따라 나누고, 모든 검증 태스크를 돌리자. 다만 리모트 작업에서도 검증과 릴리즈는 달라질 수 있다.
예를 들어 라이브러리같은 경우 검증단계에서는 타입 빌드와 JS 빌드가 각각 나뉘어 실행될 수 있지만, 릴리즈시에는 통합적으로 일어나야 한다.
2. 패키지 매니저
프론트엔드 모노레포에서 첫번째로 생각나는 것은 무엇인가? 난 패키지매니저를 뽑고싶다.
여러종류의 패키지를 운영하며, 각 패키지마다 의존성들을 설치하고 관리하는 기능이 필수적으로 들어가기 때문이다.
그 중에서 yarn을 가장 좋아하는 편이다. 다음 글에 나온대로 잘 설계된 아키텍처와 정확성, 성능이 마음에 든다.
패키지 매니저의 과거, 토스의 선택, 그리고 미래
Tumblr media
우선 패키지 매니져로서 기본기는 훌륭하다.
안정적인 lockfile 업데이트
lockfile과 pnp.cjs의 conflict 자동해결
간편한 패키지 패치
NPM script를 위한 휴대용 shell 내장과 스크립트 공유
이외에 각종 검증기능이 달려있다.
Hardened Mode: resolution 체크등으로 install시 보안공격 보호
락파일/캐시 변경 감지
Constraints: 패키지와 필드에 대한 검증
Constraints에서는 대체 어떤게 가능한가?
패키지 금지: 쓰지 말아야 할 패키지를 정할 수 있다
동일한 패키지 버전: 모노레포에서 사용할 패키지 버전을 일관적으로 유지 가능
패키지 버전 범위 통제: 패키지의 버전이 특정 범위에 속하는지 제약을 줄 수 있다
워크스페이스 페키지 강제: 워크스페이스에 있는 패키지는 고정버전이 아니라 워크스페이스 프로토콜을 쓰도록 강제가 가능
피어 디펜던시 누락 검증 및 자동추가: 피어 디펜던시가 누락되었는지 체크하고, 에러를 발생시키거나 자동적으로 devDeps/Deps에 누락된 패키지를 추가
package.json의 필드 제약: 예를 들어 패키지 이름에 prefix가 붙어있어야 하는지 검증가능
이 중에서 일부는 PNPM이나 Syncpack을 사용해야 가능하다는 기능을 잠금해제한다. [yarn berry 공식 설정 / yarn-constraints-rules] 예를 들어 동일한 패키지 버전 + 패키지 버전 범위 통제가 가능하고 (물론 yarn-plugin-catalogs라는 플러그인도 존재한다) 피어 디펜던시 설치도 조금의 노력만 들이면 가능하다.
그럼 PNPM에서 가지는 특징적인 기능적 장점은 SideEffect 캐시정도이다. 이것도 아마 플러그인을 만든다면 해결 가능한 이슈로 보인다.
이외에 앞으로 도입될 auto install, yarn run 오버헤드 감소 등의 로드맵도 기대가 된다.
Tumblr media
이와 별개로 타입스크립트를 잘 사용하기 위해서는 project reference를 잘 설정하는게 필수인데
에디터 통합: project reference가 잘 설정되어 있어야 workspace root를 에디터로 열어도 패키지의 타입 추론이 가능해진다
적절한 타입추론: App.tsx와 vite.config.ts처럼 환경에 따른 적절한 타입추론을 위해서는 project reference 설정이 필요하다
성능: tsc --build를 통해 빌드하면 ���폴로지컬한 증분빌드가 가능하다.
문제는 제대로 설정하기나, 자동으로 설정하기가 어렵다. root, local, package 참조에 따라 모두 설정해줘야 하기 때문이다. 다행히 저도 약간 기여한 @monorepo-utils/workspaces-to-typescript-project-references를 사용하면 해결이 가능합니다. (yarn과 npm만 가능)
현재 남아있는 가장 큰 불만은 Changeset에서 제대로 작동하지 않다는점이다. yarn pack을 먼저 실행하고 publish 하는 방법으로 우회가 가능하긴 하지만..
3. 린트 / 포매팅
파이썬을 사용했을때가 가끔 그리웠던 것 중 하나는 ruff이다. prettier/eslint 분리를 생각할 필요가 없고 에디터에서 거의 즉시 린트와 포매팅이 가능했기 때문이다.
그러한 면에서 Biome가 동일하게 기대된다.
Tumblr media
다만 완전히 대체가 가능할지 미지수다. Prettier는 확실히 가능하겠지만, ESLint의 풍부한 플러그인/설정 생태계에 비할바는 아니다.
예를 들어 typescript와 통합에 있어 projectService와 같은 기능이라거나 yaml과 같은 추가적인 lint 기능들이 존재하지 않는다.
따라서 현재로선 lint는 eslint로, formatter는 biome와 함께 쓰는 방향이 합리적이라 생각한다. formatter의 경우도 vue, mdx, yaml, toml과 같은 파일등도 함께 지원해야 한다면 prettier에서 못넘어가지 않을까
4. 빌드
Biome와 동일한 맥락으로 Rolldown이 미래이며, vite에서도 실험적으로는 적용중이지만 안정화에는 1년은 걸리지 않을까?
Tumblr media
CSS 후처리 역시 Lighting CSS와의 통합으로 매우 빠른 성능을 달성할 수 있다.
역시 문제는 빌드시 성능 병목인 타입 빌드다. 지금도 일반 빌드는 10초면 끝나지만 타입 빌드는 vite-plugin-dts를 사용하면 1분 넘게 걸린다.
미래에 Typescript Native(Typescript 7.0)가 사용되면 좀 빨라지겠지만 근본적으로 플러그인이 비효율적으로 설계되어 느리다는 생각은 버릴수가 없다.
때문에 vite-plugin-dts-build라는 vite 플러그인을 만들었다. (Type rollup 기능을 제공할 생각이 없어 vite-plugin-tsc-build라고 붙이고 싶었는데 이미 있더라ㅠㅠ)
tsc --build 처럼 증분빌드
분리된 워커에서 병렬 실행
vite의 library mode에서 여러 format이 실행될때 중복으로 실행되지 않음
3번은 직관적으로 이해가 가지 않을 것이다. 부연 설명을 하자면 CommonJS와 ESM을 동시에 지원하려면 각각을 대응하는 package.json export가 필요하며 따라서 각각의 mjs, cjs를 빌드해야 한다. 이때 plugin은 2번씩 실행된다.
타입도 그에 맞추어 ESM버전과 ModuleKind.CommonJS 및 ModuleResolutionKind.Node10를 사용해야 한다. 그래서 dts 세팅을 2번해줘야 문제없도록 export를 할 수 있다.
문제는 위와 같이 세팅이 된 경우 총 4번이 실행이 되기 때문에 락을 걸어 각 dts 플러그인 설정은 한번씩만 실행되도록 보장했다.
추가) Are the types wrong?을 사용하면 타입이 잘 export되었는지 체크가 가능하다.
Tumblr media Tumblr media
예를 들어 vite-plugin-dts는 👺 Masquerading as ESM 문제가 있다. (근데 위 문제를 제대로 처리하는 라이브러리들이 생각보다 적은것 같다...)
이외에 TypeScript 빌드를 더 빠르게 만들 방법도 있는데 일반적이지는 않다.
assumeChangesOnlyAffectDirectDependencies: 영향을 받은 파일들은 재검사/재빌드 하지않고, 변경된 파일과 직접 import한 파일만 재검사/재빌드되므로 정확도가 내려간다
isolatedDeclarations: 병렬적으로 타입을 빌드하거나 검사할때 도움이 되지만, 명시적으로 각 타입들을 코드 단위에서 변경하는게 요구된다
5. 태스크 러너
현재 가장 빈공간이 많은 툴이라 느껴진다.
Yarn의 휴대용 shell + Vercel의 Turborepo의 설정이 정말 간결해서 편하다.
Root와 워크스페이스의 NPM script 공유
Turbo Repo의 증분/병렬실행과 Remote caching
Tumblr media
복잡한 스크립트가 필요한 경우는 단순히 NPM script에 쓰이는 스크립트가 아니라 JavaScript (혹은 TypeScript)로 쓰인 태스크 매니저를 원하게 될 것이다.
이를테면 Grunt나 Gulp 같은 것들 말이다.
Tumblr media
이 중에는 Gulp의 Task 사용법이 가장 합리적이라 여겨진다.
Gulp의 문제라 한다면, Turborepo와 같은 토폴로지/증분/병렬 실행 기능이 부족하기 때문이다. 패키지 단위의 위상적 실행은 원래 지원하지 않았고, 증분에서는 lastRun이라는 함수가 있지만, 프로세스가 꺼지면 정보가 사라진다. 병렬에서는 parallel이라는 함수가 있지만, 내부에서 사용되는 now-and-later라는 패키지의 코드를 읽어보면 실제 병렬이라기보다는 동시성 기능에 가깝다.
Turborepo의 JavaScript interface를 사용할 수 있다면 참 좋겠지만, 불행하게도 Node와의 인터페이스는 존재하지 않으므로 만약 제작하게 된다면 Microsoft의 Rush(lib)를 사용하는게 현실적이지 않을까? Turborepo의 편안한 인터페이스는 빌리더라도 말이다.
모든 워크스페이스의 태스크, vitest와 같은 것들까지 최적의 실행시간을 보장하려면 위임하여 처리할 수 있는 글로벌 워커 풀 / 프로미스 풀이 구현되는 것도 필요하지 않나 싶다.
이 정도가 Frontend Monorepo에서 당장 생각나는 요구사항들 같다. 만약 다른 언어까지 포함된 backend까지 합쳐진 형태라면 bazel 쓰는게..ㅋㅋ
0 notes
guptatechweb · 1 month ago
Text
React JS Development: The Ultimate Guide to Building Modern Web Applications
In the rapidly evolving world of web development, building fast, interactive, and scalable applications is no longer optional—it's essential. Among the many technologies available today, React JS development has emerged as a top choice for developers and businesses alike. Created by Facebook, React.js simplifies front-end development while delivering a superior user experience.
Whether you're a business owner exploring tech options or a developer seeking efficient tools, this guide covers everything you need to know about React JS development, its advantages, real-world applications, and why it continues to dominate the front-end ecosystem.
What is React.js?
React.js is an open-source JavaScript library used for building user interfaces—particularly single-page applications (SPAs). It allows developers to create reusable UI components that update in real time as data changes.
Unlike traditional web frameworks that manipulate the DOM (Document Object Model) directly, React uses a virtual DOM to optimize updates, making apps faster and more responsive.
Key Features of React JS Development
1. Component-Based Architecture
React promotes modular development. Instead of building large monolithic pages, developers create reusable components that make development faster and more organized.
2. Virtual DOM for High Performance
React’s virtual DOM efficiently updates only the changed parts of the UI, improving performance and reducing unnecessary re-renders.
3. Unidirectional Data Flow
Data flows in one direction, making application behavior more predictable and easier to debug.
4. JSX Syntax
JSX (JavaScript XML) allows developers to write HTML-like code within JavaScript, making UI code easier to read and maintain.
5. Strong Ecosystem and Community
With millions of developers worldwide and a vast number of open-source tools and libraries, React JS development benefits from a rich ecosystem.
Why Choose React JS Development?
Fast Development
React’s reusable components, efficient rendering, and active community support make development faster and easier.
Scalability
React can scale from a simple web widget to a full-fledged enterprise application with complex UI logic.
Cross-Platform Possibilities
React Native, a framework based on React.js, allows developers to build mobile apps for iOS and Android using the same codebase.
SEO-Friendly SPAs
Using server-side rendering (SSR) with tools like Next.js, React JS development can be optimized for search engines, solving one of SPA’s biggest issues.
Use Cases of React JS Development
React is used by some of the world’s largest companies, including Facebook, Netflix, Airbnb, and Uber. Common use cases include:
Single Page Applications (SPAs)
Dashboards and Admin Panels
E-commerce Frontends
Social Media Platforms
Real-time Chat and Messaging Apps
Interactive Data Visualizations
Tech Stack for React JS Development
React.js often works best when paired with other modern tools:
Frontend: React, Redux, Tailwind CSS, React Router
Backend: Node.js, Express.js
Database: MongoDB, PostgreSQL
Build Tools: Vite, Webpack, Babel
Deployment: Vercel, Netlify, Heroku
Getting Started with React JS Development
To begin your journey with React.js:
Install Node.js (if not already installed)
Create a new React project
Start building components, connecting APIs, and customizing your UI.
There are also advanced setups like Next.js for server-side rendering and static site generation.
Best Practices for React JS Development
Use functional components and Hooks instead of class components.
Keep components small and focused.
Use PropTypes or TypeScript for type checking.
Implement code splitting and lazy loading to improve performance.
Maintain a consistent folder structure and follow naming conventions.
React JS Development Trends in 2025
As of 2025, React.js continues to lead the front-end world due to:
Ongoing performance improvements
The rise of frameworks like Next.js and Remix
Enhanced support for concurrent rendering
Growing adoption in enterprise-level applications
React is not just a library—it's a central part of the modern development stack, and its role is only growing.
Conclusion
React JS development offers an unmatched combination of speed, efficiency, and flexibility for building user interfaces. Whether you're developing a simple dashboard or a complex web app, React gives you the tools to create clean, maintainable, and dynamic interfaces that users love.
If you're considering front-end development for your next project, investing in React JS development could be one of the smartest choices you make.
0 notes
transienturl · 2 months ago
Text
q: how much bigger does the minifier option to keep function names unmangled make react code?
a: I tried it on one of my codebases and it looks like it's around 4-5% on the main gzipped js bundle.
(it added 93kb (esbuild keepNames) / 135kb (terser keep_fnames) to my 28mb build output folder, but that includes assets and isn't gzipped, so that's meaningless, and I can't be bothered to run vite-bundle-analyzer for this post.)
one thing that was interesting to observe is that terser kept the function names inline; vite minified them and then ran clientside js to set the name property on the function object. post gzip I have to imagine there's basically no difference between these.
anyway, it's definitely not free, but if necessary a site like tumblr could probably afford it? js bundles have to be an irrelevant percentage of site bandwidth right?
0 notes
aitoolswhitehattoolbox · 2 months ago
Text
Node + Angular
Lead exp + .Net core + .net framework + OOPS + ASP.NET MVC + ASP.NET Web API or Owin + Entity Framework + CICD + Git or github + Basics of Angular JS or Angular or React / Preact / Typescript with Vite Apply Now
0 notes
formationconseilmentor · 3 months ago
Text
Mon Avis sur le Plugin WP Rocket 🚀
Tumblr media
Vous cherchez à donner un coup de boost à votre blog WordPress grâce à un plugin de cache performant ? Découvrez WP Rocket, l’une des solutions les plus populaires pour optimiser la vitesse de chargement de vos pages !
Dans cet article, je partage avec vous mon avis honnête sur WP Rocket, ses points forts et ses éventuelles limites. Et pour ceux qui voudraient l’essayer, vous trouverez ci-dessous mon lien affilié (et j’insiste, cela n’entraîne aucun frais supplémentaire pour vous).
👉 Abonnez-vous à WP Rocket Spécial Bloggeur
Les Points Positifs de WP Rocket ✅
Installation Simple et Rapide Pas besoin d’être un expert en développement pour configurer WP Rocket. L’interface est intuitive et la mise en place ne prend que quelques minutes.
Amélioration Automatique de la Vitesse À peine installé, le plugin met en cache vos pages et active des pratiques d’optimisation (compression GZIP, minification, etc.) pour rendre votre site beaucoup plus rapide.
Lazy Loading des Images et Vidéos Cette fonctionnalité permet de ne charger les contenus visuels qu’au moment où le visiteur fait défiler la page. Résultat : votre blog s’affiche plus vite et vos visiteurs profitent d’une navigation fluide.
Nettoyage Facile de la Base de Données WP Rocket propose un outil intégré pour supprimer les révisions de vieux articles, brouillons et commentaires indésirables, améliorant ainsi les performances globales de votre site.
Support Client Réactif L’équipe “Rocketeers” est connue pour sa réactivité. En cas de souci, vous bénéficiez d’une assistance rapide et efficace, ce qui est un vrai plus pour les blogueurs qui ne maîtrisent pas tout l’aspect technique.
Les Points Négatifs de WP Rocket ⚠️
Solution Payante WP Rocket est un plugin premium. Bien qu’il offre de nombreuses fonctionnalités, cela représente un investissement pour les blogueurs ou entrepreneurs aux budgets serrés.
Compatibilité Variable avec Certains Plugins Même si WP Rocket prend en charge la plupart des thèmes et plugins populaires, il se peut que certaines extensions plus rares rencontrent des conflits. Il faut donc bien vérifier au préalable.
Paramètres Avancés Complexes Pour la majorité des utilisateurs, l’activation par défaut suffit. Cependant, creuser dans les options avancées (minification, différer le JS, etc.) peut demander un peu de connaissances techniques pour éviter de casser l’affichage du site.
Renouvellement Annuel Pour bénéficier des mises à jour et du support, un abonnement annuel est nécessaire. Cela reste classique dans l’univers des plugins premium, mais c’est un point à prendre en compte.
Mon Avis Final 🌟
Si vous tenez à offrir une expérience de navigation rapide à vos visiteurs (et ainsi améliorer votre SEO, votre taux de conversion, et la satisfaction générale), WP Rocket est un choix solide. Ses fonctionnalités clés (cache, minification, lazy loading) se configurent rapidement et permettent d’obtenir des résultats quasi immédiats.
Malgré son coût, le gain de temps et de performances en fait un investissement rentable pour tout blogueur sérieux. N’oublions pas que la vitesse de chargement est essentielle dans la stratégie de référencement et la rétention des visiteurs.
Pour en savoir plus et tester WP Rocket vous-même, n’hésitez pas à suivre mon lien affilié pour découvrir toutes les fonctionnalités et bénéficier de leur support si nécessaire.
En fin de compte, WP Rocket apporte une vraie valeur ajoutée aux utilisateurs WordPress qui cherchent la simplicité et la performance, tout en restant conscient de l’investissement financier et de la gestion plus avancée requise pour certains réglages.
Bon blogging rapide à tous ! ✨
0 notes