A lightweight, framework-agnostic JavaScript library for persistent two-way data binding with minimal code.
Way.js is a lightweight JavaScript library that provides two-way data binding between HTML elements and JavaScript data models. It allows developers to bind form inputs, spans, and other elements to data paths, with automatic synchronization and persistence via localStorage. The library requires minimal JavaScript code, using HTML attributes for configuration.
Frontend developers building interactive web applications who want simple, persistent data binding without heavy frameworks. It's ideal for projects where minimal JavaScript overhead and quick setup are priorities.
Way.js stands out for its simplicity, zero dependencies, and built-in persistence. Unlike larger frameworks, it focuses solely on data binding, offering a straightforward HTML-centric approach that reduces boilerplate code and integrates easily into any stack.
Simple, lightweight, persistent two-way databinding
Works with any JavaScript environment without external libraries, as highlighted in the README's 'framework-agnostic' and 'no dependencies' claims, making integration effortless.
Automatically syncs data to localStorage via attributes like way-persistent, preserving state across page reloads with minimal configuration, shown in the quick start example.
Uses custom HTML attributes such as way-data for binding, reducing JavaScript boilerplate and enabling quick prototyping directly in markup.
Small library size focused solely on data binding, with an API for custom transforms and watchers, allowing tailored enhancements without bloat.
Offers only basic transforms and marks filters as experimental with bugs, requiring manual code for advanced data manipulation or validation.
Relies on DOM scanning with configurable timeouts (e.g., way.options.timeoutDOM), which can introduce lag in dynamic or large applications.
The project appears stagnant since 2014, with incomplete documentation and testing noted in the 'To do' section, raising reliability issues for long-term use.
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
Deliver web apps with confidence 🚀
web development for the rest of us
AngularJS - HTML enhanced for web apps!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.