Skip to content
tezvyn:

Search

Find a bite, explore a topic or look for a role.

Results for React

Bites 747

React Native2 min read

SectionList: Displaying Grouped Data Efficiently

SectionList renders long lists grouped into sections, like a contact list. It virtualizes content, rendering only visible items to save memory. A common footgun: it won't re-render on external state changes unless you pass that state via the extraData prop.

Native Stack Navigator: Native Performance, Less Customization
React Native2 min read

Native Stack Navigator: Native Performance, Less Customization

Native Stack Navigator uses the OS's built-in screen management for smooth, performant transitions. Use it for standard screen stacks where a native look and feel is key.

Nested Navigators: Building Complex UI Flows
React Native2 min read

Nested Navigators: Building Complex UI Flows

Think of nested navigators as UI building blocks, placing one navigator (like tabs) inside a screen of another (a stack). This creates flows like a main tab bar inside a stack for modals.

Drawer Navigator: Your App's Slide-Out Main Menu
React Native2 min read

Drawer Navigator: Your App's Slide-Out Main Menu

A Drawer Navigator is your app's slide-out 'hamburger' menu. Use it for primary navigation between distinct sections like Home, Profile, and Settings. A common footgun is misconfiguring backBehavior, leading to non-intuitive back button actions for users.

Stack Navigator: JavaScript-based Screen Transitions
React Native2 min read

Stack Navigator: JavaScript-based Screen Transitions

Stack Navigator treats your screens like a stack of cards: push a new screen on top, pop it off to go back. It’s ideal for standard navigation flows, but its JavaScript-based implementation means you trade the performance of a native solution for…

React Native2 min read

PanResponder: The Gesture State Machine

PanResponder turns raw touch events into a single, stateful gesture, like dragging an object. It's used to build draggable elements by providing a gestureState object with velocity and distance. The footgun is confusing moveX/Y with dx/dy.

React Native2 min read

Platform.select: Write Once, Adapt Anywhere

Platform.select is a switch statement for your UI, letting you apply styles or components for iOS and Android from one object. It's ideal for tweaking styles in StyleSheet.create or rendering different components. The footgun is forgetting a default key.

React Native2 min read

Pressable: A More Powerful Way to Handle Touches

The Pressable API wraps any component to detect granular press stages like press-in, press-out, and long-press. Use it for custom interactive elements. The main footgun is forgetting to use hitSlop on small targets, making them difficult to tap.

React Native2 min read

Adding Native Code to Expo (The Modern 'Eject')

Adding native code to Expo no longer means 'ejecting'. You create a custom development build with your specific native modules. This is for when a library has native code not in the Expo SDK. The footgun is thinking you must abandon Expo's tools and services.

Python & FastAPI2 min read

CORSMiddleware: Unblocking Your Frontend from Your Backend

CORS is a browser security rule, not a server bug. Use FastAPI's CORSMiddleware to tell browsers which frontends (e.g., localhost:3000) are allowed to fetch data from your API (e.g., localhost:8000).

Python & FastAPI2 min read

CSRF: Double Submit Cookies for Stateless Backends

Double Submit Cookies stop CSRF by requiring a secret in two places: a cookie and a request header. The server just checks if they match. It's useful for stateless APIs where storing server-side tokens is impractical.

CORS Middleware: Unlocking Cross-Origin Requests in Express
Node.js & Express2 min read

CORS Middleware: Unlocking Cross-Origin Requests in Express

The cors middleware tells browsers which external websites can read your Express API's responses. Use it when a frontend on one domain needs to fetch data from your API on another.

Promise.any(): Get the Fastest Successful Result
Node.js & Express2 min read

Promise.any(): Get the Fastest Successful Result

Promise.any() is a race where only finishers count. It returns the value of the first promise to succeed, ignoring any that fail. Use it to query redundant endpoints and take the first successful response.

LLMs & Generative AI2 min read

Reflection: Teaching LLM Agents to Learn from Mistakes

Reflection gives an agent an "inner monologue" to learn from its mistakes. An Actor model attempts a task, an Evaluator scores it, and a Self-Reflection model generates linguistic feedback for the next try.

Multi-Agent Systems: A Team of AIs, Not a Monolith
LLMs & Generative AI2 min read

Multi-Agent Systems: A Team of AIs, Not a Monolith

Instead of one giant AI, a Multi-Agent System is a team of specialized AIs that collaborate on a complex problem. This appears in LLM-powered coding assistants and complex simulations.

iOS Geofencing: Your App's Virtual Fence
iOS & Swift2 min read

iOS Geofencing: Your App's Virtual Fence

Geofencing sets a virtual perimeter and lets iOS wake your app when a user enters or exits, without constant tracking. Use it for location-based reminders or context-aware features.

MapKit: Putting Apple Maps in Your iOS App
iOS & Swift2 min read

MapKit: Putting Apple Maps in Your iOS App

MapKit is the toolkit for embedding Apple's interactive maps directly into your app. Use it to show user location, display points of interest, or provide directions. The footgun is rendering too many pins at once; use clustering to keep the UI responsive.

iOS App States: From Launch to Suspension
iOS & Swift2 min read

iOS App States: From Launch to Suspension

An iOS app is like a person with different states of alertness: focused (Active), distracted (Inactive), or napping (Background/Suspended). This lifecycle dictates how your app behaves during interruptions.

iOS & Swift2 min read

Swift Control Flow: Directing Your Code's Path

Control flow statements are the traffic signals of your code. They use keywords like if, for, and switch to make decisions and repeat actions, rather than just running top-to-bottom. This is how you show a list of items or check if a user is logged.

Go & Rust2 min read

Composable Error Types with `thiserror` in Rust

thiserror generates boilerplate for custom Rust error types, letting you define specific, matchable errors for a library. Use it when callers need to handle different failure modes. The footgun is using it for simple app errors where anyhow would suffice.