<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/sources/community/best-of/2023/04" -->

---
title: Best Community Picks posts — April 2023 | daily.dev
description: The most upvoted Community Picks posts from April 2023, curated by the daily.dev community.
canonical: https://daily.dev/sources/community/best-of/2023/04
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:url: https://daily.dev/sources/community/best-of/2023/04
og:type: website
og:site_name: daily.dev
og:title: Best Community Picks posts — April 2023 | daily.dev
og:description: The most upvoted Community Picks posts from April 2023, 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 Community Picks — April 2023

1. 1  
[](https://daily.dev/posts/react-visualized-react-gg-bisspev15 "React, visualized – react.gg")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
React, visualized – react.gg  
Learn about lifting state up to the nearest parent component and using the Context API in React to bypass the limitation of passing props through intermediate components.  
549  
28
2. 2  
[](https://daily.dev/posts/8-best-opensource-projects-you-should-try-out-jwsnbjul7 "8 best opensource projects you should try out")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
8 best opensource projects you should try out  
Discover 8 amazing open-source projects that can replace paid software, including Chatwoot, Amplication, Docz, Partytown, Typesense, BackdropCMS, Hoppscotch, and NocoDB.  
392  
27
3. 3  
[](https://daily.dev/posts/patterns-dev-resources-wrjzj5ycd "Patterns.dev ⏐ Resources")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Patterns.dev ⏐ Resources  
Learn more about the next book on building large-scale JavaScript web apps with React. Explore community resources on patterns for React, Angular, Vue, and TypeScript, including curated lists of recommended talks and courses.  
376  
11
4. 4  
[](https://daily.dev/posts/introducing-the-tern-stack-and-how-to-migrate-from-mern-to-tern-ifbeeqy4k "Introducing the TERN stack and how to migrate from MERN to TERN")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Introducing the TERN stack and how to migrate from MERN to TERN  
Introducing the TERN stack and how to migrate from MERN to TERN. MERN is a web technology stack consisting of MongoDB, Express.js, React, and Node.js. This tutorial will assume you're using Tigris Cloud or a self-hosted instance of Tigris.  
300  
40
5. 5  
[](https://daily.dev/posts/best-way-to-learn-linux--xjlflq93k "Best Way to Learn Linux 🎮")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Best Way to Learn Linux 🎮  
Learn Linux through games with resources like Linux Journey and games like OverTheWire, Linux Survival, Vim-adventures, HackerRank, Terminus, Bashcrawl, and Command Line Mystery.  
299  
21
6. 6  
[](https://daily.dev/posts/5-code-refactoring-techniques-to-improve-your-code-1wniqsnuh "5 Code Refactoring Techniques to Improve Your Code")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
5 Code Refactoring Techniques to Improve Your Code  
Learn about code refactoring techniques to improve code readability, maintainability, and scalability. Techniques include extracting methods, replacing magic numbers, merging duplicated code, simplifying methods, and using lazy loading.  
286  
27
7. 7  
[](https://daily.dev/posts/vite-4-3-is-out--w2ocz0jd1 "Vite 4.3 is out!")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Vite 4.3 is out!  
Vite 4.3 has been released with performance improvements, including faster dev server startup time and improved hot module replacement (HMR) times. A benchmark was conducted to measure the performance improvements. Vite now has a profiling feature and an official benchmark tool is being developed. A Vite 5 Discussion has been started to gather early feedback.  
278  
26
8. 8  
[](https://daily.dev/posts/how-to-find-open-source-projects--unr2j3f7h "How to find Open Source projects?")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
How to find Open Source projects?  
Learn the importance of contributing to Open Source projects, how to find Open Source projects on GitHub, and explore Open Source communities. Discover the benefits of contributing and how it can help advance your career.  
246  
27
9. 9  
[](https://daily.dev/posts/don-t-learn-a-programming-language-learn-software-engineering-amo2i129e "Don’t Learn a Programming Language. Learn Software Engineering")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Don’t Learn a Programming Language. Learn Software Engineering  
Instead of focusing on a specific programming language, aspiring programmers should strive to become software engineers with a strong foundation in programming. Learning the fundamentals of software engineering allows for flexibility in using any language or tool to achieve goals.  
221  
25
10. 10  
[](https://daily.dev/posts/advanced-javascript-concepts-to-write-high-quality-code-that-scales-mkripw8s3 "Advanced JavaScript Concepts To Write High-Quality Code That Scales")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Advanced JavaScript Concepts To Write High-Quality Code That Scales  
Learn about advanced JavaScript concepts including closures, \`this\`, prototypal inheritance, asynchronous programming, hoisting, type coercion, and destructuring. Master these concepts to build robust and high-quality JavaScript applications.  
186  
33
11. 11  
[](https://daily.dev/posts/the-most-common-react-design-patterns-3uxjuf2yk "The Most Common React Design Patterns")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
The Most Common React Design Patterns  
This post discusses the concept of layout components in React and provides examples of split-screens, lists, and modals as common layout components.  
170  
11
12. 12  
[](https://daily.dev/posts/typescript-utility-types-that-you-must-know-fahbh1oaz "Typescript utility types that you must know")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Typescript utility types that you must know  
Learn about essential utility types in Typescript that can make your coding easier. Explore types like Partial, Required, Omit, Pick, Readonly, Mutable, Exclude, Extract, ReturnType, Parameters, NonNullable, Awaited, and more.  
147  
9
13. 13  
[](https://daily.dev/posts/skeleton-ui-toolkit-for-svelte-tailwind-lbk9lhuha "Skeleton — UI Toolkit for Svelte + Tailwind")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Skeleton — UI Toolkit for Svelte + Tailwind  
Skeleton is a UI toolkit for Svelte and Tailwind that allows for the creation of adaptive and accessible interfaces for web apps. It integrates directly with Svelte and SvelteKit's best features and offers interactive components, image filters, and more.  
148  
12
14. 14  
[](https://daily.dev/posts/module-pattern-i5jzd1eth "Module Pattern")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Module Pattern  
The module pattern in JavaScript allows you to split code into smaller, reusable pieces and keep them private to the module. ES2015 modules provide a built-in way to use modules in JavaScript. They allow you to export and import values between files. Using modules can improve code maintainability and reduce the risk of naming collisions. React components can also be separated into their own files as modules. Dynamic import allows you to load modules on demand, reducing page load time.  
146  
4
15. 15  
[](https://daily.dev/posts/pnpm-vs-npm-and-yarn-why-you-should-switch-and-how-to-do-it-pxotkhw5m "PNPM vs npm and Yarn: Why You Should Switch and How to Do It")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
PNPM vs npm and Yarn: Why You Should Switch and How to Do It  
Learn why you should switch to PNPM for package management in JavaScript projects. Discover the benefits of reduced network usage, faster installation times, and compatibility with npm and Yarn. Follow a step-by-step guide to switch from npm or Yarn to PNPM.  
146  
24
16. 16  
[](https://daily.dev/posts/ecmascript-es-four-new-features-ikqwjabn5 "ECMAScript ES : Four New Features")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
ECMAScript ES : Four New Features  
Discover four new features coming in ES14: Array find from last, Hashbang Grammar, Symbols as WeakMap keys, and Change array by copy.  
127  
13
17. 17  
[](https://daily.dev/posts/rix-chat-ai-search-engine-for-developers-19x8j76mm "Rix.chat: AI search engine for developers")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Rix.chat: AI search engine for developers  
Rix.chat is an AI-powered search engine designed specifically for developers. It provides accurate and up-to-date information, offers a quick mode for rapid access to knowledge, allows users to chat with a URL or GitHub Gist, and includes a Code Writer mode that translates requirements into functional code.  
122  
18
18. 18  
[](https://daily.dev/posts/the-ultimate-docker-cheat-sheet-ru5sh0ub5 "The Ultimate Docker Cheat Sheet")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
The Ultimate Docker Cheat Sheet  
A Docker cheatsheet is a concise summary of commonly used Docker commands and their options. Cheatsheets are helpful for learning new tools and quickly looking up key concepts and commands. The post provides a list of basic Docker commands for managing images and containers.  
118  
10
19. 19  
[](https://daily.dev/posts/next-js-enterprise-project-structure-emqsaqbyz "Next.js Enterprise Project Structure")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Next.js Enterprise Project Structure  
This post discusses an opinionated project structure for Next.js enterprise applications. It focuses on managing code volume, state management, and flow control to prevent programmer purgatory. The post suggests using a 'src' directory, breaking down the directory further into logical pieces, and using TypeScript configuration paths.  
114  
6
20. 20  
[](https://daily.dev/posts/the-complete-modern-react-developer-2022-sydkka2ae "The Complete Modern React Developer 2022")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
The Complete Modern React Developer 2022  
Course covering the full stack development using React, Node.js, MongoDB, and PostgreSQL. Backend setup using Express.js or Nest.js. Includes tutorials for setting up local databases and using Docker. Frontend tests using React Testing Library and Cypress.  
111  
2
21. 21  
[](https://daily.dev/posts/the-chatgpt-list-of-lists-a-collection-of-3000-prompts-gpts-use-cases-tools-apis-extensions--pxkntn9my "The ChatGPT list of lists: A collection of 3000+ prompts, GPTs, use-cases, tools, APIs, extensions, fails and other resources.")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
The ChatGPT list of lists: A collection of 3000+ prompts, GPTs, use-cases, tools, APIs, extensions, fails and other resources.  
The post discusses the ChatGPT ecosystem and provides a list of resources, prompts, and use cases related to ChatGPT. It also mentions the launch and growth of ChatGPT as a popular AI application.  
109  
9
22. 22  
[](https://daily.dev/posts/advanced-javascript-console-logging-for-developers-7wsovul03 "Advanced JavaScript Console Logging for Developers")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Advanced JavaScript Console Logging for Developers  
Learn how to use advanced console logging in JavaScript for debugging and troubleshooting applications. Topics covered include finding the Console Tool in your browser, basic console logging methods, filtering and grouping console messages, tracing messages, displaying messages as tables, formatting log messages, preserving log messages, measuring execution time, and using console utilities. Discover how Bugfender can help you gather logs from customer devices remotely for better application performance insights.  
102  
21
23. 23  
[](https://daily.dev/posts/the-catalog-of-design-patterns-yfdkf1ku8 "The Catalog of Design Patterns")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
The Catalog of Design Patterns  
The Catalog of Design Patterns includes creational, structural, and behavioral patterns that increase flexibility and reuse of code.  
99  
1
24. 24  
[](https://daily.dev/posts/browsing-reinvented-wmaify7yw "Browsing reinvented")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Browsing reinvented  
Opera One introduces Tab Islands for a more organized browsing experience. Aria browser AI provides AI capabilities. Opera One has a modular design and a new technology stack for smooth animations.  
96  
32
25. 25  
[](https://daily.dev/posts/optimise-your-resume-with-ai-vhgeo2o5o "Optimise Your Resume With AI")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Optimise Your Resume With AI  
Learn how AI can assist in creating the perfect resume for job seekers in Europe's tech scene. Discover the benefits of AI-optimised resumes and explore a list of free and paid AI tools for resume optimisation.  
92  
8

[See all Community Picks archives](/sources/community/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/community/best-of/2023/04#page","url":"https://daily.dev/sources/community/best-of/2023/04","name":"Best Community Picks Posts — April 2023","description":"The most upvoted Community Picks posts from April 2023, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/sources/community/best-of/2023/04#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/react-visualized-react-gg-bisspev15","name":"React, visualized – react.gg"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/8-best-opensource-projects-you-should-try-out-jwsnbjul7","name":"8 best opensource projects you should try out"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/patterns-dev-resources-wrjzj5ycd","name":"Patterns.dev ⏐ Resources"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/introducing-the-tern-stack-and-how-to-migrate-from-mern-to-tern-ifbeeqy4k","name":"Introducing the TERN stack and how to migrate from MERN to TERN"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/best-way-to-learn-linux--xjlflq93k","name":"Best Way to Learn Linux 🎮"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/5-code-refactoring-techniques-to-improve-your-code-1wniqsnuh","name":"5 Code Refactoring Techniques to Improve Your Code"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/vite-4-3-is-out--w2ocz0jd1","name":"Vite 4.3 is out!"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/how-to-find-open-source-projects--unr2j3f7h","name":"How to find Open Source projects?"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/don-t-learn-a-programming-language-learn-software-engineering-amo2i129e","name":"Don’t Learn a Programming Language. Learn Software Engineering"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/advanced-javascript-concepts-to-write-high-quality-code-that-scales-mkripw8s3","name":"Advanced JavaScript Concepts To Write High-Quality Code That Scales"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/the-most-common-react-design-patterns-3uxjuf2yk","name":"The Most Common React Design Patterns"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/typescript-utility-types-that-you-must-know-fahbh1oaz","name":"Typescript utility types that you must know"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/skeleton-ui-toolkit-for-svelte-tailwind-lbk9lhuha","name":"Skeleton — UI Toolkit for Svelte + Tailwind"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/module-pattern-i5jzd1eth","name":"Module Pattern"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/pnpm-vs-npm-and-yarn-why-you-should-switch-and-how-to-do-it-pxotkhw5m","name":"PNPM vs npm and Yarn: Why You Should Switch and How to Do It"},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/ecmascript-es-four-new-features-ikqwjabn5","name":"ECMAScript ES : Four New Features"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/rix-chat-ai-search-engine-for-developers-19x8j76mm","name":"Rix.chat: AI search engine for developers"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/the-ultimate-docker-cheat-sheet-ru5sh0ub5","name":"The Ultimate Docker Cheat Sheet"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/next-js-enterprise-project-structure-emqsaqbyz","name":"Next.js Enterprise Project Structure"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/the-complete-modern-react-developer-2022-sydkka2ae","name":"The Complete Modern React Developer 2022"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/the-chatgpt-list-of-lists-a-collection-of-3000-prompts-gpts-use-cases-tools-apis-extensions--pxkntn9my","name":"The ChatGPT list of lists: A collection of 3000+ prompts, GPTs, use-cases, tools, APIs, extensions, fails and other resources."},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/advanced-javascript-console-logging-for-developers-7wsovul03","name":"Advanced JavaScript Console Logging for Developers"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/the-catalog-of-design-patterns-yfdkf1ku8","name":"The Catalog of Design Patterns"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/browsing-reinvented-wmaify7yw","name":"Browsing reinvented"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/optimise-your-resume-with-ai-vhgeo2o5o","name":"Optimise Your Resume With AI"}]},{"@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":"Community Picks","item":"https://daily.dev/sources/community"},{"@type":"ListItem","position":4,"name":"Best of","item":"https://daily.dev/sources/community/best-of"},{"@type":"ListItem","position":5,"name":"April 2023"}]}]}
```

