44 repositorios
Mechanisms for storing and reusing computed results or data to minimize redundant processing and latency.
Explore 44 awesome GitHub repositories matching software engineering & architecture · Caching and Memoization. Refine with filters or upvote what's useful.
React es una biblioteca de JavaScript para crear interfaces de usuario basadas en una arquitectura orientada a componentes y un flujo de datos unidireccional.
Caches expensive calculations and function definitions to optimize performance during re-renders.
Axios is an isomorphic, promise-based HTTP client designed for making asynchronous network requests across different JavaScript execution environments, including the browser and Node.js. It functions as a JSON API client that serializes JavaScript objects into JSON and parses server responses into structured data. The project features a system for managing reusable client instances with shared configurations, such as base URLs and default settings. It includes a mechanism for intercepting outgoing requests and incoming responses globally, allowing data to be transformed before it reaches the
Implements caching for GET requests to reduce network latency and server load.
Bun is a high-performance runtime environment designed to execute JavaScript and TypeScript applications with minimal latency and high throughput. Built on a native core implemented in Zig, it provides a unified execution engine that leverages JavaScriptCore for efficient memory management and low-latency startup. The project functions as an all-in-one toolchain, integrating a native bundler, transpiler, package manager, and test runner into a single command-line interface. What distinguishes Bun is its focus on native system integration and developer productivity. It features a high-performa
Generates cached bytecode files during the build process to eliminate runtime parsing overhead and accelerate application startup times.
Django is a full-stack web framework designed for rapid backend development. It provides an integrated environment for building data-driven applications by combining an object-relational mapping layer for database management with a modular request-response pipeline for handling HTTP traffic. The framework emphasizes security and maintainability, offering a suite of tools to protect against common web vulnerabilities while decoupling site structure from implementation through a centralized URL routing system. A defining characteristic of the framework is its ability to generate production-read
Supports high-performance data retrieval through a unified interface for various backend storage systems.
This project is a curated educational resource and solution repository for algorithmic challenges, specifically focused on LeetCode problems. It serves as a technical reference for common data structures and algorithmic patterns, providing verified code implementations across multiple programming languages alongside detailed logic and complexity analysis. The repository functions as a comprehensive study guide for competitive programming and technical interview preparation. It includes specialized learning tools such as an Anki flashcard dataset for spaced repetition and a browser extension t
Stores the results of expensive recursive calls in a lookup table to reduce exponential time complexity.
Requests is a high-level HTTP client library designed to simplify web communication and API integration. It provides an intuitive, human-readable interface for performing standard network operations, including request execution, connection pooling, and stateful session management. By encapsulating raw network data into structured objects, the library automates the complexities of headers, cookies, and payload transmission. The library distinguishes itself through a modular transport adapter layer that allows for custom protocol handling and extensible authentication hooks. It supports a wide
Boosts efficiency by storing and reusing responses from frequent operations to avoid redundant data transfers.
OkHttp is an HTTP client for the JVM and Android that enables network communication via synchronous and asynchronous requests. It provides a core identity as a comprehensive networking toolkit featuring a WebSocket client for bidirectional data synchronization, a TLS security toolkit for encrypted communication, and a programmable HTTP mock server for simulating backend responses. The project distinguishes itself through a specialized security and performance architecture. It implements mutual TLS, certificate pinning, and DNS over HTTPS to secure data in transit, while utilizing connection p
Provides a local disk cache for HTTP responses based on standard cache headers.
react-use is a collection of reusable state and effect hooks for managing common logic in React applications. It serves as a comprehensive library for implementing state management patterns and wrapping various browser APIs into consistent hook interfaces. The project provides a specialized toolkit for DOM interaction and browser API integration, allowing components to track element dimensions, manage cookies, and monitor hardware sensors. It includes a suite of animation and timing utilities for physics-based numeric interpolation and frame-synced state updates. Beyond basic state managemen
Ships hooks that cache the results of expensive calculations to optimize frontend performance.
Redisson is a Java library and Redis client that functions as a distributed Java object mapper, caching provider, and locking framework. It maps Java collections and concurrency primitives to distributed implementations backed by Redis and Valkey, providing synchronous, asynchronous, and reactive APIs for interacting with these data stores. The project distinguishes itself by providing a comprehensive suite of distributed coordination tools, including a locking framework for managing semaphores and countdown latches across multiple application nodes. It also serves as a distributed messaging
Connects to external caching frameworks to provide a distributed backend for application-level data storage.
This project is a cross-platform development framework and managed runtime environment designed for building high-performance applications. It provides a comprehensive toolkit for constructing web services, cloud-native microservices, and desktop applications, utilizing a unified runtime that handles memory management and execution across diverse operating systems. The framework distinguishes itself through a native ahead-of-time compilation toolchain that transforms source code into optimized, self-contained machine code binaries. This capability enables fast startup times and reduced memory
Provides a unified interface for hybrid caching that combines local and distributed storage with automated serialization.
Joi is a JavaScript data validation library used to define schemas that validate, cast, and sanitize data objects. It functions as an object schema validator and parser, ensuring that input data matches specific types and formats before it is processed by an application. The library features a conditional validation engine capable of dynamic schema enforcement, where validation logic and dependencies change based on the values of other keys within an object. It also serves as a data casting and sanitization tool, transforming input values into target types and removing sensitive keys from the
Caches the results of expensive validation operations to optimize performance and reduce redundant processing.
Wasmer is a high-performance runtime engine designed to execute sandboxed WebAssembly modules across server-side, edge, and browser environments. It functions as a comprehensive platform for building, distributing, and running isolated applications, providing a secure and portable execution layer that maintains consistency across diverse hardware architectures and operating systems. The platform distinguishes itself through a robust toolchain that enables cross-language interoperability and the transformation of code into portable binary packages. It supports ahead-of-time binary generation t
Optimizes and caches compiled code to reduce processing overhead and improve execution throughput.
This project is a package manager and configuration framework for Neovim, designed to orchestrate the lifecycle of editor extensions. It provides a centralized system for installing, updating, and tracking plugins while ensuring consistent dependency resolution across different environments through the use of lockfiles. The framework distinguishes itself by prioritizing startup performance and modularity. It employs event-based lazy loading to defer the initialization of extensions until specific user interactions, commands, or file types trigger their activation. To further accelerate the ed
Compiles plugin source code into bytecode to eliminate runtime parsing overhead and accelerate startup.
Reselect is a state management optimization tool and memoization utility designed to minimize redundant calculations and UI re-renders. It functions as a library for creating memoized selectors that derive specific data from a state store. The library implements input-based memoization and recursive selector composition to create a hierarchy of derived data dependencies. It ensures reference-stable result caching and provides custom equality checking to determine when a cache should be invalidated. The project covers capabilities for derived data computation, frontend performance optimizatio
Allows developers to define custom equality functions to control when memoized values are invalidated.
Reselect is a memoized selector framework and state selector library designed to optimize performance in Redux applications. It provides a system for computing derived data from a state store and caching the results to prevent unnecessary user interface re-renders. The library functions as a state transformation pipeline, allowing multiple selectors to be composed into chains. This enables the creation of complex data transformation pipelines where the output of one memoized selector serves as the input for another. The framework focuses on input-based memoization and referential equality ch
Controls how arguments and results are cached by replacing default equality checks with custom functions.
This project is a tool for integrating existing HTTP APIs with AI agents by translating standard web endpoints into the Model Context Protocol. It provides a framework for constructing and managing libraries of functions that allow large language models to execute tasks and retrieve data. The system functions as an AI gateway that manages tool hosting, authentication, and routing. It includes capabilities for monetizing tool access through usage-based billing and payment processor integration, as well as the ability to publish service definitions to a gateway for commercial productization. T
Implements distributed edge caching of HTTP responses to reduce backend load and latency for AI tools.
React Bits is a comprehensive collection of architectural patterns, design strategies, and coding standards for building maintainable user interfaces. It functions as a guide for structuring complex applications through modular component composition, declarative state management, and consistent data flow techniques. The project distinguishes itself by providing a library of established design patterns and optimization techniques that address common development challenges. It emphasizes the identification and resolution of suboptimal coding practices, offering reliable alternatives to improve
Utilizes memoization hooks to prevent unnecessary component re-renders and optimize performance.
This project is an educational framework designed to teach the fundamentals of building core distributed systems and web services from scratch in Go. It provides a collection of modular implementations that demonstrate how to construct essential infrastructure components, including web servers, remote procedure call systems, distributed caches, and database abstraction layers. The framework distinguishes itself by focusing on the internal mechanics of these systems rather than providing a high-level abstraction for production use. It covers the implementation of complex architectural patterns
Orchestrates data retrieval by checking local storage, executing fallback functions, and populating the cache.
Grav is a flat-file content management system that eliminates the need for a traditional database by storing site content and configuration in human-readable Markdown and YAML files. Built as a modular PHP web framework, it uses a hierarchical page routing system where the physical directory structure directly determines the site's URL paths. The platform is distinguished by its event-driven plugin architecture and a command-line interface that prioritizes system administration, deployment, and maintenance tasks. It utilizes a blueprint-driven system to generate administrative forms from stru
Enables server-side opcode caching to store precompiled script bytecode and reduce execution time.
Got is a promise-based HTTP request library for Node.js that supports HTTP/2 and streaming. It provides a system for making network requests with a focus on asynchronous control flow and type-safe API client development. The library is distinguished by its middleware-based request lifecycle, which uses interceptors and plugins to modify request options and response data. It includes a configurable automatic retry mechanism with backoff strategies, a built-in HTTP response cache, and a cookie-jar system for maintaining persistent sessions. Broad capabilities cover data handling through duplex
Implements an HTTP response caching system to reduce redundant network requests.