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

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
10up avatar

10up/flexibility

0
View on GitHub↗
4,290 stars·461 forks·JavaScript·MIT·11 viewsjonathantneal.github.io/flexibility↗

Flexibility

Flexibility is a JavaScript library and layout engine designed to polyfill CSS Flexbox capabilities. It ensures consistent element alignment and distribution across different browser versions, specifically targeting legacy environments that lack native support for the flexible box specification.

The project provides cross-browser layout compatibility by simulating flexible container behavior. It manages dynamic flexbox properties to maintain a stable and predictable user interface regardless of the visitor's browser version.

The system covers DOM traversal, manual coordinate calculation, and style injection to force visual structures. It includes mechanisms for dynamic layout recalculation and the translation of modern CSS properties into styles compatible with older browsers.

Features

  • Web Browser Layouts - Implements a JavaScript-based layout engine that simulates flexible container behavior for web browser DOM elements.
  • Cross-Browser Layout Consistency - Ensures a stable and predictable user interface layout regardless of the visitor's browser version.
  • Flexbox Layouts - Ensures CSS Flexbox layouts display consistently in older web browsers lacking native support.
  • Legacy Browser Support - Provides fallback mechanisms and modern layout capabilities to prevent broken designs in outdated browsers.
  • CSS Flexbox Polyfills - Acts as a JavaScript library that simulates the CSS Flexbox specification for browsers without native support.
  • CSS Property Polyfills - Translates modern Flexbox properties into fallback styles to ensure visual consistency in older browsers.
  • Dynamic Layout Engines - Allows programmatic adjustment of flexbox properties to dynamically update the user interface.
  • Manual Positioning - Computes absolute coordinates and dimensions for elements when native browser layout engines are unsupported.
  • Layout Recalculation Triggers - Triggers a re-computation of flexible element positions in response to window resize or content changes.
  • Dynamic Management - Provides the ability to update and adjust flexible container properties via JavaScript in real time.
  • Inline Style Injections - Writes computed layout styles directly into element style attributes to force specific visual structures.
  • Polyfills and Compatibility - Polyfill for adding flexbox support to Internet Explorer.

Star history

Star history chart for 10up/flexibilityStar history chart for 10up/flexibility

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Flexibility

Similar open-source projects, ranked by how many features they share with Flexibility.
  • jonathantneal/flexibilityjonathantneal avatar

    jonathantneal/flexibility

    4,291View on GitHub↗

    Flexibility is a JavaScript layout engine and CSS compatibility layer that functions as a polyfill for the CSS Flexbox specification. It simulates flexible box layout behavior in web browsers that do not natively support the specification. The project achieves cross-browser layout consistency by implementing a programmatic system to calculate and apply alignment, direction, and wrapping properties to DOM elements. It provides utilities for both the application and extraction of these layout styles to manage the visual structure of a page. The engine operates through DOM tree traversal and ma

    JavaScript
    View on GitHub↗4,291
  • leaverou/prefixfreeLeaVerou avatar

    LeaVerou/prefixfree

    3,792View on GitHub↗

    prefixfree is a runtime CSS processor and polyfill library designed to ensure cross-browser visual consistency. It functions as a client-side script that automatically detects browser requirements and injects necessary vendor prefixes into CSS properties and values at runtime. The project utilizes a system that intercepts stylesheets and modifies style rules in browser memory. It includes a DOM mutation style monitor that observes the document tree for new elements to apply prefixing logic to dynamic content and attributes. The library provides polyfilling for modern CSS standards in legacy

    JavaScript
    View on GitHub↗3,792
  • afarkas/html5shivaFarkas avatar

    aFarkas/html5shiv

    9,849View on GitHub↗

    html5shiv is a JavaScript compatibility polyfill and legacy browser shim that enables the use of HTML5 sectioning elements in outdated versions of Internet Explorer. It provides a compatibility layer that ensures modern HTML5 tags are recognized and rendered correctly by overriding element creation methods. The library ensures that HTML5 sectioning elements contain their child elements in old web engines by applying basic styles. It specifically addresses layout and styling discrepancies for both screen and print media to prevent layout collapse. The project includes a programmable configura

    JavaScript
    View on GitHub↗9,849
  • scottjehl/respondscottjehl avatar

    scottjehl/Respond

    11,230View on GitHub↗

    Respond is a legacy browser compatibility layer and adaptive asset delivery tool. It functions as a CSS3 media query polyfill and responsive image loader, providing the necessary mechanisms to emulate modern responsive design features in outdated web browsers. The project differentiates itself by combining stylesheet parsing with dynamic style application to emulate minimum and maximum width media queries. It employs a system for selecting and serving the most appropriate image sources based on viewport width, aspect ratio, and resolution. The tool covers broad capability areas including res

    JavaScript
    View on GitHub↗11,230
See all 30 alternatives to Flexibility→

Frequently asked questions

What does 10up/flexibility do?

Flexibility is a JavaScript library and layout engine designed to polyfill CSS Flexbox capabilities. It ensures consistent element alignment and distribution across different browser versions, specifically targeting legacy environments that lack native support for the flexible box specification.

What are the main features of 10up/flexibility?

The main features of 10up/flexibility are: Web Browser Layouts, Cross-Browser Layout Consistency, Flexbox Layouts, Legacy Browser Support, CSS Flexbox Polyfills, CSS Property Polyfills, Dynamic Layout Engines, Manual Positioning.

What are some open-source alternatives to 10up/flexibility?

Open-source alternatives to 10up/flexibility include: jonathantneal/flexibility — Flexibility is a JavaScript layout engine and CSS compatibility layer that functions as a polyfill for the CSS Flexbox… leaverou/prefixfree — prefixfree is a runtime CSS processor and polyfill library designed to ensure cross-browser visual consistency. It… afarkas/html5shiv — html5shiv is a JavaScript compatibility polyfill and legacy browser shim that enables the use of HTML5 sectioning… scottjehl/respond — Respond is a legacy browser compatibility layer and adaptive asset delivery tool. It functions as a CSS3 media query… browserstate/history.js — history.js is a cross-browser URL state manager and HTML5 History API polyfill. It functions as a single page… es-shims/es5-shim — es5-shim is an ECMAScript 5 polyfill library and standard library shim. It serves as a JavaScript compatibility layer…