{"id":47705,"library":"form-storage","title":"FormStorage","description":"A JavaScript library that stores form data to localStorage and re-applies it on page load, preventing users from having to re-enter form input. Version 1.3.5 is the current stable release. Development is minimal; no major updates in recent years. Differentiators: simplicity (no dependencies), support for ignore/include selectors, and automatic save/apply cycle.","status":"maintenance","version":"1.3.5","language":"javascript","source_language":"en","source_url":null,"tags":["javascript"],"install":[{"cmd":"npm install form-storage","lang":"bash","label":"npm"},{"cmd":"yarn add form-storage","lang":"bash","label":"yarn"},{"cmd":"pnpm add form-storage","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"Package is ESM only from version 1.0.0 onward; CommonJS require may fail or require a default import wrapper.","wrong":"const FormStorage = require('form-storage')","symbol":"FormStorage","correct":"import FormStorage from 'form-storage'"},{"note":"CDN version exposes a global FormStorage constructor, not a namespace.","wrong":"const formStorage = new formStorage.FormStorage(selector, options);","symbol":"FormStorage (CDN global)","correct":"const formStorage = new FormStorage(selector, options);"},{"note":"Package does not ship TypeScript definitions; use @types/form-storage or declare module manually.","wrong":"import { FormStorage } from 'form-storage'","symbol":"FormStorage (TypeScript)","correct":"import FormStorage from 'form-storage'"}],"quickstart":{"code":"import FormStorage from 'form-storage';\n\nconst form = new FormStorage('#my-form', {\n  name: 'my-form-data',\n  includes: ['[name=\"email\"]', '[name=\"message\"]']\n});\n\n// Restore saved data on page load\nform.apply();\n\n// Save form data on submit\ndocument.querySelector('#my-form').addEventListener('submit', () => form.save());","lang":"javascript","description":"Shows how to create a FormStorage instance with include selectors, apply stored data, and save on form submit."},"warnings":[{"fix":"Always provide a unique 'name' per form to avoid data collisions.","message":"The 'name' option defaults to a fixed key in localStorage; if not specified, all forms with the same default name will share data.","severity":"gotcha","affected_versions":"all"},{"fix":"Ensure the selector points to a valid HTML <form> element.","message":"FormStorage only works with form elements; it does not support arbitrary containers or non-form inputs outside a <form>.","severity":"gotcha","affected_versions":"all"},{"fix":"Consider migrating to a maintained alternative like 'formdata-polyfill' or custom solution.","message":"The package has not been updated in over 5 years; no support for modern browser features like FormData or shadow DOM.","severity":"deprecated","affected_versions":"<=1.3.5"}],"env_vars":null,"search_vec":"'1.3.5':30 'appli':14 'automat':54 'current':33 'cycl':56 'data':8 'depend':48 'develop':36 'differenti':45 'enter':26 'form':7,27 'formstorag':1 'ignore/include':51 'input':28 'javascript':3,57 'librari':4 'load':18 'localstorag':10 'major':40 'minim':38 'page':17 'prevent':19 're':13,25 're-appli':12 're-ent':24 'recent':43 'releas':35 'save/apply':55 'selector':52 'simplic':46 'stabl':34 'store':6 'support':49 'updat':41 'user':20 'version':29 'year':44","created_at":"2026-06-07T16:52:53.370941+00:00","updated_at":"2026-06-07T16:52:53.370941+00:00","problems":[{"fix":"Update to version 1.0.0 or later, or use the old API: formStorage.saveAll()","cause":"Package version < 1.0.0 used a different API (e.g., saveAll).","error":"TypeError: formStorage.save is not a function"},{"fix":"Ensure <script src=\"https://unpkg.com/form-storage@1.2.0/build/form-storage.js\"></script> is included before your code.","cause":"CDN script not loaded or loaded after use.","error":"Uncaught ReferenceError: FormStorage is not defined"},{"fix":"Run 'npm install form-storage' and ensure your bundler (webpack/browserify) is configured correctly.","cause":"Package not installed or module resolution failure.","error":"No such module 'form-storage'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"form-storage","openapi_spec":null,"status_page":null,"smithery":null,"categories":["storage"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}