<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/sources/logrocket/best-of/2022/09" -->

---
title: Best LogRocket posts — September 2022 | daily.dev
description: The most upvoted LogRocket posts from September 2022, curated by the daily.dev community.
canonical: https://daily.dev/sources/logrocket/best-of/2022/09
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:url: https://daily.dev/sources/logrocket/best-of/2022/09
og:type: website
og:site_name: daily.dev
og:title: Best LogRocket posts — September 2022 | daily.dev
og:description: The most upvoted LogRocket posts from September 2022, curated by the daily.dev community.
og:image: https://media.daily.dev/image/upload/s--VAY5ToZt--/f_auto/v1724209435/public/daily.dev%20-%20open%20graph
---

# Best of LogRocket — September 2022

1. 1  
[](https://daily.dev/posts/vite-3-0-vs-create-react-app-kyqilrbzn "Vite 3.0 vs. Create React App")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Vite 3.0 vs. Create React App  
Vite is built on top of esbuild, a JavaScript bundler written in Go, which bundles dependencies 10-100 times faster than JavaScript-based bundlers. Vite leverages the browser’s native ESM to parse and compile your code as the browser requests it. The browser only needs to pre-bundle your dependencies.  
135  
7
2. 2  
[](https://daily.dev/posts/32-free-flutter-templates-for-great-mobile-apps-anrms3zz5 "32 free Flutter templates for great mobile apps")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
32 free Flutter templates for great mobile apps  
Flutter E-Book App is a simple yet intuitive application developed by Festus Olusegun to read and download books from the Feedbooks API. StarBook StarBook is a digital diary developed by Hashir Shoaib that can help users track their mood and productivity throughout the month.  
84  
1
3. 3  
[](https://daily.dev/posts/implementing-user-authorization-in-next-js-engawrnas "Implementing user authorization in Next.js")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Implementing user authorization in Next.js  
NextAuth.js is a full-fledged authentication and authorization solution for Next.js designed to work with any OAuth service. To use them in your project, create a file named.env.local in the root of your project directory. This file will contain all the providers that you want to use in your app. Each provider will be configured using the credentials in order for the app to successfully connect with our OAuth identity provider.  
54  
1
4. 4  
[](https://daily.dev/posts/getting-started-with-nestjs-vite-and-esbuild-9accnssqx "Getting started with NestJS, Vite, and esbuild")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Getting started with NestJS, Vite, and esbuild  
NestJS is a Node.js framework for building efficient and scalable server-side/backend applications. Vite works by first dividing the modules in an application CREATE nest\_vite\_esbuild\_demo/.eslintrc.js (665 bytes) We'll learn how to work with them in real life scenarios, their major features, and use cases. Learn how to animate your React app with AnimXYZ - Explore Tauri, a new framework for Building binaries.  
51
5. 5  
[](https://daily.dev/posts/building-a-pomodoro-timer-with-tauri-using-react-and-vite-bv2lqn42m "Building a Pomodoro Timer with Tauri using React and Vite")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Building a Pomodoro Timer with Tauri using React and Vite  
Tauri is a set of tools that lets you build cross-platform desktop apps using frontend frameworks. When combined with React and Vite, it can be used to build extremely fast binaries for all desktop platforms. In this post, we will build a simple Pomodoro timer, and invite you to follow along with Below are the requirements for our app. To start, head over to src/App.tsX.tsx.  
47
6. 6  
[](https://daily.dev/posts/working-with-the-javascript-reflect-api-xg7f43v-4 "Working with the JavaScript Reflect API")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Working with the JavaScript Reflect API  
The goal of this article is to help you better understand the concept of Reflect in JavaScript. Use React's useEffect to optimize your application's performance. Learn how to animate your React app with AnimXYZ - Explore Tauri, a new framework for building binaries - Compare NestJS vs. Express.js - Discover popular ORMs used in the TypeScript landscape target.  
43  
2
7. 7  
[](https://daily.dev/posts/prisma-vs-thin-backend-nx4lhf5wm "Prisma vs. Thin Backend")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Prisma vs. Thin Backend  
Prisma enables you to access your database straight from Node.js and TypeScript application code. Thin Backend provides you with an IDE that has custom business logic and serverless functions. Prisma is a type-safe query builder that is an alternative to Sequelize and TypeORM.  
38  
1
8. 8  
[](https://daily.dev/posts/building-a-chatbot-with-dialogflow-node-js-and-react-z-wlgyscd "Building a chatbot with DialogFlow, Node.js, and React")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Building a chatbot with DialogFlow, Node.js, and React  
DialogFlow is an end-to-end tool powered by NLU to design and integrate chatbots into our interfaces. It translates natural language into machine-readable data using machine learning (ML) models trained by the language we provide. We are going to build our chatbot using Google’s NLU platform, Dial To act, sometimes we need to extract some data from the query.  
31  
1
9. 9  
[](https://daily.dev/posts/comparing-the-7-best-orm-packages-in-go-ultef5ez4 "Comparing the 7 best ORM packages in Go")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Comparing the 7 best ORM packages in Go  
The GORM (Go-ORM) package is the most popular ORM package in the Go ecosystem. The SQLC package provides database queries, transactions, configurations, and functionalities. The Beego ORM is a powerful ORM inspired by popular Python ORMs, like the Django ORM and SQLAlchemy.  
26  
2
10. 10  
[](https://daily.dev/posts/modeling-nestjs-app-data-with-dynamoose-2a8q8jtfn "Modeling NestJS app data with Dynamoose")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Modeling NestJS app data with Dynamoose  
DynamoDB is a NoSQL database, meaning that it does not have a pre-defined structure. We will explore why you should use ORM, or object-relational mapping, with DynamoDB to manage the models of the models. The first step to creating a NestJS app with Dynamoose is to install the NestJS CLI. The next step is to create an entity class that extends the Document class provided by Dynamoose. The nextStep is to define the data structure.  
23  
1
11. 11  
[](https://daily.dev/posts/how-to-dynamically-assign-properties-to-an-object-in-typescript-jhxtx-let "How to dynamically assign properties to an object in TypeScript")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
How to dynamically assign properties to an object in TypeScript  
TypeScript error throws a TypeScript error on dynamically assigning properties to an object in TypeScript. If you cannot define the variable type at declaration time, you can use the Record utility type or an object index signature to solve this. There are numerous ways you can resolve the error here.  
23  
1
12. 12  
[](https://daily.dev/posts/how-to-build-a-progress-bar-indicator-in-next-js--hgwpvtj1 "How to build a progress bar indicator in Next.js")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
How to build a progress bar indicator in Next.js  
Next.js takes a little bit of time to route between pages, especially to server-side rendered pages as these are rendered on request. This tutorial will address this issue by demonstrating how to showcase the progress indicator when we route to the Characters page. To finish setting up, run the following command in your terminal to install two third-party libraries, NProgress and React Spinners, that we’ll be using later in this tutorial.  
21
13. 13  
[](https://daily.dev/posts/improving-next-js-app-performance-with-blurhash-jj7orfvcp "Improving Next.js app performance with BlurHash")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Improving Next.js app performance with BlurHash  
The time it takes a web app to load to the client depends on how long it takes to serve its application code, styles, and data. For example, you could use server-side rendering to render the initial HTML of your web page on the server side before delivering it to the browser, use the Next.js. The amount that BlurHash impacts page speed can vary based on several factors.  
19  
1
14. 14  
[](https://daily.dev/posts/tauri-vs-electron-a-comparison-how-to-and-migration-guide-5sbjulhv3 "Tauri vs. Electron: A comparison, how-to, and migration guide")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Tauri vs. Electron: A comparison, how-to, and migration guide  
Tauri, the new shiny desktop application framework, was introduced as an alternative to Electron. Tauri is built on Rust, is secure and performant by design, is compatible with any front-end framework. It lets you create executable applications for all major desktop platforms, including macOS, Windows, and the Linux operating system. The /public and /src directories are React’s defaults. If you open the new app folder.  
20
15. 15  
[](https://daily.dev/posts/unit-testing-with-react-and-cypress-i5ejtwtbs "Unit testing with React and Cypress")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Unit testing with React and Cypress  
Unit testing with React and Cypress is a modern, automated testing suite. Cypress provides an API and methods to interact with the UI of the application. The commands available to us will have an inbuilt method that we can invoke in our test blocks.  
16  
1
16. 16  
[](https://daily.dev/posts/a-deep-dive-into-css-individual-transform-properties-aqnzgio9s "A deep dive into CSS individual transform properties")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
A deep dive into CSS individual transform properties  
CSS has a single transform property to manage all of its different values. When transforming a single value, a single property works well, but when working with multiple values, it becomes a burdensome, cognitive load. As transformations grow, the more difficult it becomes to manage the entire property. CSS has introduced the three individual properties rotate, scale, and translate.  
15
17. 17  
[](https://daily.dev/posts/building-rust-microservices-with-apache-kafka-fw8--l4uq "Building Rust microservices with Apache Kafka")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Building Rust microservices with Apache Kafka  
Kafka-based microservices built with Rust usually have one or more producers and consumers. In this article, you’ll learn how to build a microservice using Rust with Kafka. The producer is connected to your local server at localhost:9092\. The consumer we created above reads events published to the topic- Name topic and prints the event’s message to the console. It works in more detail. The consumer is created.  
14
18. 18  
[](https://daily.dev/posts/improve-repo-management-with-moon-479werzqo "Improve repo management with moon")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Improve repo management with moon  
moon is a repository management, organization, orchestration, and notification tool for JavaScript-based projects. moon only supports targets that are explicitly compiled for Linux 64\. We can set moon up to manage a new project or migrate existing repos to a monorepo setup.  
14
19. 19  
[](https://daily.dev/posts/build-an-api-with-next-js-lambda-functions-pcg4x-jf "Build an API with Next.js Lambda functions")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Build an API with Next.js Lambda functions  
Next.js renders React components into HTML pages on the server after a page request comes from the browser. Next.js provides developers with API routes that can be deployed on Vercel as serverless functions. The API routes live inside the /pages/api folder and Next.JS maps any file inside that folder to /api/\* as an endpoint. This feature is very interesting.  
13
20. 20  
[](https://daily.dev/posts/exploring-primevue-a-vue-based-ui-component-library-l3mxymrmr "Exploring PrimeVue, a Vue-based UI component library")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Exploring PrimeVue, a Vue-based UI component library  
Using a component-based frontend makes developing web apps easier and more manageable. PrimeVue provides a rich set of more than 90 responsive UI components — enough to cover a broad range of use cases. It also offers some unique components like Terminal, a text-based UI, and Dock, a navigation component. Users will be able to create, edit, and delete notes. Each note will contain a title, some content, and a tag or tags.  
12  
1
21. 21  
[](https://daily.dev/posts/getting-started-with-clojurescript-for-javascript-developers-agmskzn5j "Getting started with ClojureScript for JavaScript developers")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 4y  
Getting started with ClojureScript for JavaScript developers  
The cljs.main namespace is required to run your ClojureScript program. It contains functions with multiple usecases to initiate an interactive REPL session. Run the following command to see a list of available command-line arguments. Use React's useEffect to optimize your application's performance.  
11

[See all LogRocket archives](/sources/logrocket/best-of)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@graph":[{"@type":"CollectionPage","@id":"https://daily.dev/sources/logrocket/best-of/2022/09#page","url":"https://daily.dev/sources/logrocket/best-of/2022/09","name":"Best LogRocket Posts — September 2022","description":"The most upvoted LogRocket posts from September 2022, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/sources/logrocket/best-of/2022/09#items","numberOfItems":21,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/vite-3-0-vs-create-react-app-kyqilrbzn","name":"Vite 3.0 vs. Create React App"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/32-free-flutter-templates-for-great-mobile-apps-anrms3zz5","name":"32 free Flutter templates for great mobile apps"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/implementing-user-authorization-in-next-js-engawrnas","name":"Implementing user authorization in Next.js"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/getting-started-with-nestjs-vite-and-esbuild-9accnssqx","name":"Getting started with NestJS, Vite, and esbuild"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/building-a-pomodoro-timer-with-tauri-using-react-and-vite-bv2lqn42m","name":"Building a Pomodoro Timer with Tauri using React and Vite"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/working-with-the-javascript-reflect-api-xg7f43v-4","name":"Working with the JavaScript Reflect API"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/prisma-vs-thin-backend-nx4lhf5wm","name":"Prisma vs. Thin Backend"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/building-a-chatbot-with-dialogflow-node-js-and-react-z-wlgyscd","name":"Building a chatbot with DialogFlow, Node.js, and React"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/comparing-the-7-best-orm-packages-in-go-ultef5ez4","name":"Comparing the 7 best ORM packages in Go"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/modeling-nestjs-app-data-with-dynamoose-2a8q8jtfn","name":"Modeling NestJS app data with Dynamoose"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/how-to-dynamically-assign-properties-to-an-object-in-typescript-jhxtx-let","name":"How to dynamically assign properties to an object in TypeScript"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/how-to-build-a-progress-bar-indicator-in-next-js--hgwpvtj1","name":"How to build a progress bar indicator in Next.js"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/improving-next-js-app-performance-with-blurhash-jj7orfvcp","name":"Improving Next.js app performance with BlurHash"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/tauri-vs-electron-a-comparison-how-to-and-migration-guide-5sbjulhv3","name":"Tauri vs. Electron: A comparison, how-to, and migration guide"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/unit-testing-with-react-and-cypress-i5ejtwtbs","name":"Unit testing with React and Cypress"},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/a-deep-dive-into-css-individual-transform-properties-aqnzgio9s","name":"A deep dive into CSS individual transform properties"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/building-rust-microservices-with-apache-kafka-fw8--l4uq","name":"Building Rust microservices with Apache Kafka"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/improve-repo-management-with-moon-479werzqo","name":"Improve repo management with moon"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/build-an-api-with-next-js-lambda-functions-pcg4x-jf","name":"Build an API with Next.js Lambda functions"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/exploring-primevue-a-vue-based-ui-component-library-l3mxymrmr","name":"Exploring PrimeVue, a Vue-based UI component library"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/getting-started-with-clojurescript-for-javascript-developers-agmskzn5j","name":"Getting started with ClojureScript for JavaScript developers"}]},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Sources","item":"https://daily.dev/sources"},{"@type":"ListItem","position":3,"name":"LogRocket","item":"https://daily.dev/sources/logrocket"},{"@type":"ListItem","position":4,"name":"Best of","item":"https://daily.dev/sources/logrocket/best-of"},{"@type":"ListItem","position":5,"name":"September 2022"}]}]}
```

