Best of freeCodeCamp2025

  1. 1
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    The Clean Code Handbook: How to Write Better Code for Agile Software Development

    Clean code is essential for building scalable and maintainable software applications, especially in an Agile environment. This post outlines the importance of writing clean code, its long-term cost benefits, and shares practical patterns and best practices. It emphasizes naming conventions, the Single Responsibility Principle, effective commenting, and continuous integration to ensure scalability and adaptability. The post also highlights the significance of documentation and readable code, aiming to improve both individual and collaborative coding efforts.

  2. 2
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Learn Software Design Basics: Key Phases and Best Practices

    Good software design is essential to avoid inefficiencies and bottlenecks. It involves creating scalable, maintainable, and easy-to-debug systems. Key elements include defining the problem statement, identifying use cases, stating requirements, designing the architecture, and drafting a detailed design. Assumptions and thorough documentation are crucial for clarity and long-term success. A practical example of designing a financial expense categorization system illustrates these principles.

  3. 3
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Learn to Use GitHub Actions: a Step-by-Step Guide

    GitHub Actions allows developers to automate, build, test, and deploy their applications directly from GitHub. This guide provides step-by-step instructions for creating GitHub Actions using either the GitHub UI or locally via an IDE. It covers key concepts like workflows, events, jobs, and runners, and includes examples for setting up Node.js, Deno environments, zipping files, and deploying static websites to GitHub Pages.

  4. 4
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Why Your Code is Slow: Common Performance Mistakes Beginners Make

    Slow code is a common issue for beginners. This guide explores seven frequent performance pitfalls and offers solutions to enhance code efficiency. Key topics include logging, loop optimization, database query handling, understanding hardware, memory management, array traversal, and avoiding unnecessary data copies. Practical examples and tips help developers write faster, more efficient code, and understand the importance of profiling and choosing appropriate data structures.

  5. 5
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Learn API Fundamentals and Architecture – A Beginner-Friendly Guide

    APIs (Application Programming Interfaces) are essential tools that enable communication between different software systems. This guide covers the fundamentals of APIs, including their types (Open, Partner, Internal, Composite) and various architectures (REST, SOAP, GraphQL, gRPC). APIs streamline development by facilitating data exchange and integrating external functionalities securely and efficiently. Understanding these concepts helps developers choose the right API architecture based on performance, scalability, ease of use, and security needs.

  6. 6
    Article
    Avatar of freecodecampfreeCodeCamp·48w

    The Micro-Frontend Architecture Handbook

    A comprehensive guide covering four main approaches to micro frontend architecture: iframes with cross-window messaging, Web Components with Shadow DOM, single-spa for orchestrating multiple SPAs, and Module Federation for runtime code sharing. Each method is explained with practical code examples, pros/cons analysis, and real-world use cases. The guide also covers additional tools like Piral, Luigi, and Import Maps, helping developers choose the right approach based on team structure, technical requirements, and deployment needs.

  7. 7
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Harden Your Node.js APIs – Security Best Practices

    Learn how to enhance the security of your Node.js APIs with practical tips focusing on using environment variables, input validation, rate limiting, enforcing HTTPS, securing HTTP headers with Helmet, data sanitization, and strong authentication and authorization methods. These measures aim to protect against SQL injection, brute force attacks, and data leaks, among other threats.

  8. 8
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Build RAG AI Agents with TypeScript

    Learn how to build a Retrieval-Augmented Generation (RAG) AI agent using TypeScript and Langbase SDK. This comprehensive tutorial covers setting up your project, creating AI memory for storing and retrieving context, uploading documents, adding API keys, and generating responses using LLMs like OpenAI. By the end, you'll have a context-aware AI agent capable of handling complex tasks and queries with precision.

  9. 9
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Essential CLI/TUI Tools for Developers

    Developers extensively using terminals can enhance their productivity through various CLI/TUI tools. This selection includes tools for Kubernetes management, container monitoring, text processing, Git handling, and more. Each tool is presented with an overview, key features, and installation instructions for different operating systems.

  10. 10
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Essential Machine Learning Concepts Animated

    Understanding AI and machine learning is essential for developers. This visually engaging course on freeCodeCamp.org's YouTube channel by Vladimirs from Turing Time Machine simplifies over 100 core ML and AI concepts with animations and real-world analogies. It covers foundational terms, statistical methods, optimization techniques, evaluation metrics, various model types, practical workflow elements, and related disciplines like NLP and object detection.

  11. 11
    Video
    Avatar of freecodecampfreeCodeCamp·1y

    Neetcode 150 Course - All Coding Interview Questions Solved

  12. 12
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Build an Analytical Dashboard with Next.js

    The post provides a comprehensive guide to building an analytical dashboard using Next.js, Flexmonster, and Highcharts. It includes step-by-step instructions on configuring these tools, creating charts, and setting up a functional user interface. Additionally, it explores real-world survey data on passenger flying etiquette to demonstrate the dashboard's capabilities.

  13. 13
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Use Lazygit to Improve Your Git Workflow

    Lazygit is an open-source command-line UI tool that simplifies Git commands with a user-friendly interface and keyboard shortcuts. It allows users to manage Git operations like commit, push, pull, create, and delete branches efficiently. The post provides a tutorial on installing Lazygit on various operating systems, an overview of its UI and panels, essential shortcuts, and a guide to common Git operations using Lazygit.

  14. 14
    Article
    Avatar of freecodecampfreeCodeCamp·27w

    How to Improve Your Programming Skills by Building Games

    Building games teaches essential programming skills that extend beyond game development. Through creating games, developers learn systems thinking, event-driven architecture, performance optimization, and debugging complex states. Games force practical application of math concepts like vectors and trigonometry, while teaching component-based architecture similar to modern frameworks. The hands-on experience with user input handling, reusable code patterns, and creative problem-solving translates directly to building better web applications, backend services, and software systems. Even simple 2D games provide valuable lessons in modular design, UX instincts, and managing code complexity that traditional tutorials rarely offer.

  15. 15
    Article
    Avatar of freecodecampfreeCodeCamp·48w

    The Front-End Monitoring Handbook: Track Performance, Errors, and User Behavior

    A comprehensive guide to building a frontend monitoring SDK from scratch, covering three main areas: performance monitoring (Core Web Vitals like FCP, LCP, CLS, plus API timing and resource loading), error tracking (JavaScript errors, Promise rejections, resource failures), and user behavior analytics (page views, scroll depth, click tracking). The tutorial provides practical code examples for implementing data collection using browser APIs like PerformanceObserver, MutationObserver, and various event listeners, along with reporting mechanisms and optimization techniques for production environments.

  16. 16
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Deploy a Node.js Application on AWS

    Learn to deploy a Node.js/Express application on AWS using an EC2 instance. The guide covers prerequisites such as having an AWS account and knowledge of Node.js, Express, and Linux commands. It details setting up an EC2 instance, installing necessary packages, deploying the application, and configuring security settings. The tutorial also includes steps to use Caddy as a reverse proxy to simplify access to the deployed app.

  17. 17
    Article
    Avatar of freecodecampfreeCodeCamp·49w

    LeetCode Meditations: A Visualized Tour of DSA Concepts (A Handbook)

    A comprehensive handbook covering fundamental data structures and algorithms concepts through visual explanations and code examples. Topics include arrays, hash tables, two pointers technique, sliding window, stacks, binary search, linked lists, trees, heaps, and backtracking. Each concept is explained with practical implementations in JavaScript, TypeScript, and Python, along with time and space complexity analysis. The guide emphasizes understanding core principles rather than memorizing specific problem solutions.

  18. 18
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Optimize Next.js Web Apps for Better Performance

    Learn key techniques to optimize the performance of Next.js web applications, including using the Next.js Image and Script components, removing unused dependencies, caching, Incremental Static Regeneration (ISR), font optimization, lazy loading, and code splitting. These strategies enhance user experience by improving speed, reducing load times, and ensuring efficient resource use.

  19. 19
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Build a Team of AI Agents for Your Website for Free Using Agno and Groq

    Learn how to integrate a team of AI agents into your website for free using Agno and Groq. The tutorial walks through setting up a portfolio website that includes AI agents to handle customer inquiries, create content, analyze user behavior, and provide personalized experiences. This setup can automate part of your business, improving efficiency and engagement without requiring extensive technical expertise or a large budget.

  20. 20
    Article
    Avatar of freecodecampfreeCodeCamp·38w

    How to Design Structured Database Systems Using SQL [Full Book]

    A comprehensive guide covering database fundamentals, from basic data concepts to designing structured database systems. Explores the DIKW pyramid (Data, Information, Knowledge, Wisdom), database management systems architecture, ACID properties, and various data models including relational databases, NoSQL systems, and Big Data approaches. Includes practical examples using PostgreSQL and covers essential topics like data types, domains, database design principles, and the differences between structured, semi-structured, and unstructured data.

  21. 21
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Use Zod for React API Validation

    Zod is a TypeScript-first library that simplifies data validation in React applications by defining schemas to validate incoming API data. This tutorial guides you through setting up Zod, creating and using schemas, and integrating Zod with React for robust API response handling. It demonstrates how to ensure data consistency and early error detection, leading to a smoother and more efficient development experience.

  22. 22
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Write Effective Prompts for AI Agents using Langbase

    Learn how to write effective prompts for AI agents using Langbase. The post covers essential techniques such as defining clear goals, experimenting with prompts, using specific instructions, and applying advanced methods like few-shot training, memory-augmented prompting, and role-based prompting. Practical tips and a step-by-step guide for using Langbase to build serverless AI agents are also included.

  23. 23
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Automate CI/CD with GitHub Actions and Streamline Your Workflow

    Learn how to automate your CI/CD process using GitHub Actions. Discover the key concepts, such as events, jobs, tasks, runners, and workflows, and follow a step-by-step guide to build an example pipeline for deploying a simple website. Understand how GitHub Actions can streamline your development workflow, from building and testing to deploying code changes automatically.

  24. 24
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Build a Reusable useSearch Hook in React

    Learn how to build a reusable useSearch hook in React that improves performance with techniques like debouncing and memoization, supports fuzzy search for handling typos, and implements pagination for managing large datasets. This step-by-step guide is ideal for React developers looking to enhance their search features and optimize user experience.

  25. 25
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    How to Build a Production-Ready DevOps Pipeline with Free Tools

    Learn how to build a production-ready DevOps pipeline using free tools, featuring GitHub Actions for CI/CD, Terraform for infrastructure setup, Docker optimization techniques, K3d for Kubernetes, and various monitoring and security solutions. This guide is ideal for small projects, offering a step-by-step walkthrough of creating, testing, deploying, and securing applications efficiently without spending money.