awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectServer MCPDespreCum realizăm clasamentulPresă
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

19 repository-uri

Awesome GitHub RepositoriesScroll Locking

Utilities for disabling document scrolling during modal or overlay display.

Distinct from Scroll Restoration: Distinct from Scroll Restoration: focuses on active scroll locking for UI overlays rather than navigation-based scroll position recovery.

Explore 19 awesome GitHub repositories matching user interface & experience · Scroll Locking. Refine with filters or upvote what's useful.

Awesome Scroll Locking GitHub Repositories

Găsește cele mai bune repo-uri cu AI.Vom căuta cele mai potrivite repository-uri folosind AI.
  • streamich/react-useAvatar streamich

    streamich/react-use

    43,974Vezi pe GitHub↗

    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

    Deno-inspired prevention of the body element from scrolling when modals or overlays are active.

    TypeScript
    Vezi pe GitHub↗43,974
  • alvarotrigo/fullpage.jsAvatar alvarotrigo

    alvarotrigo/fullPage.js

    35,437Vezi pe GitHub↗

    fullPage.js is a JavaScript full-screen scrolling library and layout engine used to create websites composed of vertical sections and horizontal slides that snap to the viewport. It provides a system for organizing web content into full-screen pages with automatic snapping behavior. The library distinguishes itself through a WebGL transition framework and visual storytelling tools, enabling cinematic effects such as 3D rotations, parallax backgrounds, fading, and water distortion during navigation. It also features a responsive adaptation system that can switch from automatic snapping to stan

    Modifies scrolling configurations in real time to switch between automatic snapping and manual scrolling.

    JavaScriptfullpagefullscreenjavascript
    Vezi pe GitHub↗35,437
  • uidotdev/usehooksAvatar uidotdev

    uidotdev/usehooks

    11,394Vezi pe GitHub↗

    This project is a comprehensive library of reusable React hooks designed to simplify browser API integration, state management, and component lifecycle tracking. It provides a declarative interface for managing complex browser interactions, allowing developers to encapsulate imperative logic into modular, composable functions that integrate directly with the component lifecycle. The library distinguishes itself by offering specialized utilities for asynchronous data orchestration, including built-in caching, retry logic, and loading state management. It also features advanced performance opti

    Locks document scroll position during active modal or overlay displays to prevent background movement.

    MDXastrobloghooks
    Vezi pe GitHub↗11,394
  • noah-nuebling/mac-mouse-fixAvatar noah-nuebling

    noah-nuebling/mac-mouse-fix

    9,220Vezi pe GitHub↗

    This project is a macOS input remapper and mouse customizer designed to assign custom actions and system-wide gestures to mouse button presses and movements. It functions as a mouse gesture manager and scroll enhancer, enabling the emulation of multi-finger trackpad motions and providing omnidirectional precision scrolling. The utility distinguishes itself by allowing independent scroll direction settings for a mouse without altering global trackpad configurations. It further implements a momentum-based algorithm to replace discrete scroll steps with smooth, fluid movement. The software cove

    Enables toggling precision scrolling or zooming by holding specific keyboard modifier keys.

    Objective-C3rd-party-mouseinvert-scrollingmac-mouse
    Vezi pe GitHub↗9,220
  • northwoodssoftware/gojsAvatar NorthwoodsSoftware

    NorthwoodsSoftware/GoJS

    8,447Vezi pe GitHub↗

    GoJS is a JavaScript diagramming library and canvas-based visualization engine used to build interactive flowcharts, organizational charts, and network diagrams. It functions as a data-driven framework that binds JavaScript data models to visual elements, enabling bidirectional synchronization between the underlying data and the graphical representation. The library features a comprehensive graph layout engine capable of automatically arranging nodes into trees, grids, circles, or force-directed layouts. It distinguishes itself through a template-based system for generating visual parts and a

    Locks the diagram to prevent scrolling, zooming, or dragging parts outside a fixed area.

    HTMLcanvaschartcharts
    Vezi pe GitHub↗8,447
  • juliencrn/usehooks-tsAvatar juliencrn

    juliencrn/usehooks-ts

    7,834Vezi pe GitHub↗

    usehooks-ts is a comprehensive collection of reusable TypeScript-based hooks designed for managing state, DOM events, and browser API interactions within React applications. It provides a typed library of functions to handle common frontend patterns and side effects. The project distinguishes itself by offering specialized hooks for browser integration, including tools for interacting with the system clipboard, managing local and session storage persistence, and loading external scripts. It also includes utilities for responsive UI development, such as tracking media queries, window dimension

    Implements a utility to disable page scrolling when modal overlays or full-screen menus are active.

    TypeScripthookhooksmdx
    Vezi pe GitHub↗7,834
  • moroshko/react-autosuggestAvatar moroshko

    moroshko/react-autosuggest

    5,940Vezi pe GitHub↗

    React Autosuggest is a fully controlled React component that provides an autocomplete input with a dropdown of suggestions as the user types. It delegates all state management to the parent component through callbacks, making it compatible with state management patterns like Flux or Redux. The component implements WAI-ARIA accessibility patterns, including keyboard navigation with arrow keys, Enter, and Escape, along with live region integration for screen reader announcements. The component offers extensive customization through render-prop functions, allowing developers to replace the defau

    Isolates scroll within the suggestions container to prevent page scrolling at boundaries.

    JavaScript
    Vezi pe GitHub↗5,940
  • aprilnea/openlogiAvatar AprilNEA

    AprilNEA/OpenLogi

    5,314Vezi pe GitHub↗

    OpenLogi este un instrument de configurare hardware local-first și un mapper de input cross-application scris în Rust. Permite personalizarea perifericelor folosind protocolul HID++, permițând utilizatorilor să gestioneze setările dispozitivelor fără a avea nevoie de conturi cloud sau telemetrie. Sistemul se distinge prin abordarea local-first, stocând toate configurațiile dispozitivelor și mapările butoanelor în fișiere text simplu. Acest design suportă editarea manuală și version control-ul, asigurând în același timp că comenzile sunt trimise direct în memoria hardware-ului. Suita acoperă mai multe arii de gestionare hardware, inclusiv remapparea butoanelor fizice și configurarea presetărilor de sensibilitate DPI. Include un sistem pentru crearea de profiluri specifice aplicațiilor care comută automat binding-urile de input în funcție de fereastra activă, precum și controale pentru comportamentul rotiței de scroll și monitorizarea stării bateriei. Este oferită o interfață CLI pentru gestionarea inventarului hardware și preluarea datelor de diagnostic de la dispozitivele conectate.

    Toggles between different scrolling behaviors, such as ratchet and free-flow modes, in real time.

    Rust
    Vezi pe GitHub↗5,314
  • huangyanbin/smarttableAvatar huangyanbin

    huangyanbin/smartTable

    5,226Vezi pe GitHub↗

    smartTable este o componentă de grilă de date și un framework de vizualizare tabelară pentru Android. Funcționează ca o bibliotecă UI bazată pe adnotări care utilizează markere de clasă și câmp pentru a mapa automat modelele de date către coloane vizuale și a defini proprietățile tabelului. Proiectul se distinge prin integrarea profundă cu foile de calcul, oferind instrumente pentru a importa și exporta date către și din fișiere Excel, păstrând în același timp formatarea celulelor, stilurile, culorile și alinierea. De asemenea, dispune de un sistem de randare bazat pe canvas care suportă layout-uri de grilă complexe cu celule îmbinate, antete înghețate și blocarea coloanelor. Biblioteca acoperă o gamă largă de capabilități de gestionare a datelor, inclusiv sortarea, agregarea și calculul statisticilor pe coloane. Gestionează seturi mari de date prin paginare virtuală, controale de zoom și formatare condiționată a celulelor pentru a menține lizibilitatea și performanța. Framework-ul este implementat în Java pentru aplicații Android.

    Enables freezing of row or column indices to maintain header visibility during bidirectional scrolling.

    Javaandroidandroid-libraryandroid-table
    Vezi pe GitHub↗5,226
  • chalarangelo/30-seconds-of-reactAvatar Chalarangelo

    Chalarangelo/30-seconds-of-react

    5,081Vezi pe GitHub↗

    Acest proiect este o colecție cuprinzătoare de fragmente de cod reutilizabile, hook-uri personalizate și tipare de implementare pentru construirea interfețelor utilizator cu React. Servește ca o bibliotecă de exemple scurte concepute pentru a rezolva sarcini comune de dezvoltare, de la gestionarea stării la integrarea DOM. Colecția oferă o gamă largă de utilitare specializate pentru interacțiunea cu API-urile browserului, inclusiv urmărirea dimensiunilor ferestrei, evaluarea media query-urilor și monitorizarea stării online. Include, de asemenea, ghiduri practice și fragmente pentru optimizarea performanței, cum ar fi memoizarea, lazy loading-ul și debouncing-ul schimbărilor de stare. Zonele largi de capabilitate acoperă implementarea componentelor UI interactive precum modale, caruseluri și interfețe cu tab-uri, precum și tipare arhitecturale pentru preluarea datelor, persistența stării și verificarea actualizărilor asincrone. Biblioteca include, de asemenea, utilitare pentru gestionarea formularelor, gestionarea evenimentelor și sincronizarea rutării prin urmărirea stării URL-ului.

    Prevents page body scrolling when modals or overlays are active.

    JavaScripteducationjavascriptlearn-to-code
    Vezi pe GitHub↗5,081
  • jschr/bootstrap-modalAvatar jschr

    jschr/bootstrap-modal

    4,964Vezi pe GitHub↗

    bootstrap-modal este o bibliotecă JavaScript care extinde componenta standard Bootstrap modal pentru a oferi capabilități avansate de redimensionare, stivuire și animație. Acesta funcționează ca un loader modal AJAX, preluând conținut remote și actualizând vizualizările asincron, fără a necesita reîmprospătarea paginii browser-ului. Proiectul oferă un manager de overlay stivuibil pentru a organiza mai multe ferestre suprapuse cu gestionarea sincronizată a evenimentelor și ordonarea corectă a straturilor. Include, de asemenea, o componentă UI responsivă care ajustează automat dimensiunile și constrângerile în funcție de dimensiunea curentă a ferestrei. Biblioteca acoperă domenii funcționale mai largi, inclusiv fluxuri de lucru modale imbricate, blocarea scroll-ului de fundal și animații de tranziție modală. Încorporează, de asemenea, mecanisme de feedback vizual, cum ar fi indicatori de stare de încărcare și animații de interacțiune pentru a semnala procesele de fundal active.

    Disables document scrolling to prevent background page movement while a modal overlay is active.

    JavaScript
    Vezi pe GitHub↗4,964
  • mescroll/mescrollAvatar mescroll

    mescroll/mescroll

    4,459Vezi pe GitHub↗

    mescroll este o bibliotecă JavaScript de infinite scroll și un manager de scroll pentru web mobil, conceput pentru a implementa tipare de pull-to-refresh și pull-up-loading. Oferă un sistem pentru gestionarea scroll-ului tactil, gestionarea stărilor de paginare și integrarea acestor comportamente în aplicații Vue. Biblioteca se distinge prin suport specializat pentru interfețele de chat, permițând încărcarea datelor în ordine inversă și capacitatea de a injecta date într-o direcție inversă pentru a simula istoricul mesajelor. Include, de asemenea, un cache de scroll cu persistență a stării pentru a păstra offset-urile verticale și datele listei atunci când utilizatorii navighează între diferite vizualizări. Proiectul acoperă o gamă largă de capabilități de interacțiune și performanță, inclusiv suprimarea rubber-banding-ului nativ al browserului, lazy loading-ul imaginilor conștient de viewport și poziționarea programatică a scroll-ului. Oferă, de asemenea, utilitare pentru gestionarea stărilor de paginare, personalizarea UI-ului de încărcare și a stării goale, precum și implementarea navigării back-to-top.

    Allows developers to temporarily disable pull-to-refresh or pull-up-loading actions to prevent accidental triggers.

    Vuebouncecss3html5
    Vezi pe GitHub↗4,459
  • oliviertassinari/react-swipeable-viewsAvatar oliviertassinari

    oliviertassinari/react-swipeable-views

    4,473Vezi pe GitHub↗

    Acest proiect este o bibliotecă React pentru crearea de vizualizări glisante (sliding views) tactile și switchere interactive de vizualizare. Oferă componente pentru construirea de caruseluri de conținut și slidere care suportă navigarea orizontală sau verticală prin atingere, gesturi de swipe cu mouse-ul și input-uri de la tastatură. Biblioteca include o componentă de slider virtualizat care redă doar vizualizările vizibile pentru a menține performanța cu seturi mari de conținut. Suportă comportamente vizuale specializate, cum ar fi tranzițiile 3D coverflow, navigarea circulară pentru bucle infinite și efecte de rezistență la margini atunci când se ating limitele unei secvențe. Capabilitățile suplimentare acoperă rotația automată a conținutului pe cronometre setate, animații dinamice ale înălțimii containerului pentru a se potrivi cu dimensiunile slide-urilor active și capacitatea de a imbrica containere swipeable pentru navigare ierarhică. De asemenea, suportă scroll-ul vertical hibrid pentru a permite scroll-ul paginii interne în cadrul unei interfețe swipeable.

    Enables internal vertical page scrolling within a container that is also navigable via horizontal swipe gestures.

    JavaScript
    Vezi pe GitHub↗4,473
  • foobnix/librerareaderAvatar foobnix

    foobnix/LibreraReader

    4,246Vezi pe GitHub↗

    LibreraReader is a multi-format e-book reader and digital library manager designed for mobile and desktop devices. It functions as a customizable document renderer and a text-to-speech document player that converts written text into spoken audio via a configurable speech engine and integrated media player. The project distinguishes itself through a high degree of visual and functional customization, including the ability to inject custom CSS for styling overrides and the use of pluggable rendering engines to balance speed and stability. It includes specialized navigation tools such as a verti

    Restricts document navigation to vertical scrolling only, preventing accidental horizontal movement.

    C
    Vezi pe GitHub↗4,246
  • mikke89/rmluiAvatar mikke89

    mikke89/RmlUi

    4,178Vezi pe GitHub↗

    RmlUi este un renderer UI cross-platform și o bibliotecă middleware care permite crearea de interfețe utilizator folosind un subset de HTML și CSS. Funcționează ca un strat agnostic de randare conceput pentru a integra layout-ul și stilizarea standard web în motoare de jocuri personalizate și aplicații embedded. Framework-ul se distinge prin integrarea Lua pentru logică și control dinamic, precum și printr-un set de instrumente specializat pentru randarea imaginilor SVG și a animațiilor Lottie. Utilizează un backend de randare pluggable care decuplează generarea geometriei de afișarea finală, permițându-i să genereze geometrie texturată pentru diverse pipeline-uri grafice. Sistemul acoperă o gamă largă de capabilități, inclusiv un motor de layout box-model, un motor de stilizare în cascadă și data-binding pentru sincronizarea modelelor cu view-urile. Oferă gestionare completă a input-ului pentru mouse, tastatură și touch, alături de servicii de internaționalizare pentru traducerea textului bazată pe localitate. Caracteristicile suplimentare includ scalare high-DPI, compoziție alfa bazată pe straturi și un set de componente interactive precum range sliders și meniuri drop-down. Sursa poate fi compilată în binare WebAssembly pentru execuție în browserele web.

    Prevents scroll events from propagating beyond a container when its scroll boundary is reached.

    C++
    Vezi pe GitHub↗4,178
  • willmcpo/body-scroll-lockAvatar willmcpo

    willmcpo/body-scroll-lock

    4,099Vezi pe GitHub↗

    body-scroll-lock este o bibliotecă de blocare a scroll-ului DOM și un controler de scroll cross-browser. Aceasta oferă utilitare pentru a dezactiva scroll-ul paginii, menținând în același timp capacitatea de scroll pentru elemente imbricate specifice pe diferite browsere și dispozitive. Proiectul funcționează ca un utilitar de prevenire a deplasării layout-ului și un manager de scroll pentru modalele UI web. Include mecanisme pentru a adăuga padding elementului body atunci când barele de scroll sunt eliminate, pentru a preveni pâlpâirea orizontală și deplasarea conținutului. Biblioteca acoperă gestionarea scroll-ului pentru navigarea mobilă și interacțiunile modale, permițând containerelor specifice să rămână scrollabile în timp ce restul corpului documentului este înghețat.

    Provides utilities for disabling document scrolling specifically during modal or overlay display.

    JavaScriptangularbody-scrollbody-scroll-lock
    Vezi pe GitHub↗4,099
  • manna-harbour/miryokuAvatar manna-harbour

    manna-harbour/miryoku

    3,740Vezi pe GitHub↗

    Miryoku is a universal mapping specification for ergonomic and orthogonal keyboards. It provides a standardized set of key assignments and layers designed to decouple logical input intent from specific physical hardware, ensuring consistent key placement across different firmware and devices. The system focuses on home-row navigation, placing cursor movement, mouse emulation, and system functions on the home row to minimize hand travel. It utilizes a layer-based input strategy with toggleable and modal layers to manage numerals, symbols, and media controls without relying on complex modifier

    Uses toggleable and modal layers to manage numerals, symbols, and numbers without complex modifier chords.

    Makefilemiryoku
    Vezi pe GitHub↗3,740
  • embedpdf/embed-pdf-viewerAvatar embedpdf

    embedpdf/embed-pdf-viewer

    3,343Vezi pe GitHub↗

    Embed PDF Viewer is a browser-based PDF rendering library that uses a WebAssembly port of the PDFium engine to display documents entirely on the client side, with no server-side processing required. It provides a framework-agnostic core engine layer that manages the PDF document lifecycle, memory allocation, and WebAssembly resource cleanup, with dedicated integration hooks for React and Vue 3 that handle initialization, document loading, and reactive state management. The library offers both a pre-built, embeddable viewer that can be inserted into any web page with a single initialization ca

    Configures scroll behavior and page display modes like single page or continuous scroll.

    TypeScriptadobe-acrobatjavascriptpdf
    Vezi pe GitHub↗3,343
  • mewx/light-novel-library_wenku8_androidAvatar MewX

    MewX/light-novel-library_Wenku8_Android

    2,464Vezi pe GitHub↗

    Offers both horizontal page-turn and vertical scroll reading modes, each saving progress automatically.

    Java2014-nowandroidandroid-studio
    Vezi pe GitHub↗2,464
  1. Home
  2. User Interface & Experience
  3. Scroll Interaction Handlers
  4. Scroll State Controllers
  5. Scroll Restoration
  6. Scroll Locking

Explorează sub-etichetele

  • Container Scroll IsolationsPreventing scroll events from propagating beyond a container when its scroll boundary is reached. **Distinct from Scroll Locking:** Distinct from Scroll Locking: isolates scroll within a specific container rather than disabling document scroll for overlays.
  • DirectionalRestricts document navigation to a single scroll axis by intercepting and discarding events from other axes. **Distinct from Scroll Locking:** Distinct from Scroll Locking: focuses on restricting to a specific scroll direction rather than disabling scroll during overlays.
  • Directional Scroll LocksRestricts document navigation to vertical scrolling only, preventing accidental horizontal movement. **Distinct from Scroll Locking:** Distinct from Scroll Locking: focuses on locking scroll direction, not disabling scroll for overlays.
  • Frozen Grid ElementsLocks specific rows or columns in a grid to keep headers visible during scrolling. **Distinct from Scroll Locking:** Distinct from Scroll Locking: specifically refers to freezing grid headers/columns rather than disabling the entire page scroll.
  • Interaction Action LocksCapabilities to temporarily disable specific touch-triggered actions like pull-to-refresh or pull-up-loading. **Distinct from Scroll Locking:** Targets the locking of specific refresh/load gestures rather than locking the entire document scroll for overlays.
  • Scroll Mode Toggles2 sub-tag-uriUtilities for switching between different scrolling behaviors, such as snapping versus free-flow, in real time. **Distinct from Scroll Locking:** Distinct from Scroll Locking: focuses on toggling between different scrolling paradigms rather than just disabling scroll.