{"id":23038281,"url":"https://github.com/jihyunlab/web-secure-storage","last_synced_at":"2025-06-19T08:10:47.623Z","repository":{"id":94556891,"uuid":"605094595","full_name":"jihyunlab/web-secure-storage","owner":"jihyunlab","description":"JihyunLab Web secure storage.","archived":false,"fork":false,"pushed_at":"2024-07-17T09:34:54.000Z","size":508,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2024-12-01T15:40:37.337Z","etag":null,"topics":["cipher","crypto","local-storage","secure","session-storage","storage","web"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jihyunlab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-22T12:39:17.000Z","updated_at":"2024-07-17T09:34:57.000Z","dependencies_parsed_at":"2024-05-30T18:11:46.957Z","dependency_job_id":"f48d905a-da04-4443-9e79-6c62c214f4b1","html_url":"https://github.com/jihyunlab/web-secure-storage","commit_stats":{"total_commits":15,"total_committers":4,"mean_commits":3.75,"dds":0.4,"last_synced_commit":"36b7ebd2fb2a2b7c9dd77f0a8fafa0ccb4e5c56a"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jihyunlab%2Fweb-secure-storage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jihyunlab%2Fweb-secure-storage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jihyunlab%2Fweb-secure-storage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jihyunlab%2Fweb-secure-storage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jihyunlab","download_url":"https://codeload.github.com/jihyunlab/web-secure-storage/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229856103,"owners_count":18134841,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cipher","crypto","local-storage","secure","session-storage","storage","web"],"created_at":"2024-12-15T18:17:38.371Z","updated_at":"2024-12-15T18:17:38.840Z","avatar_url":"https://github.com/jihyunlab.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @jihyunlab/web-secure-storage\n\n[![Version](https://img.shields.io/npm/v/@jihyunlab/web-secure-storage.svg?style=flat-square)](https://www.npmjs.com/package/@jihyunlab/web-secure-storage?activeTab=versions) [![Downloads](https://img.shields.io/npm/dt/@jihyunlab/web-secure-storage.svg?style=flat-square)](https://www.npmjs.com/package/@jihyunlab/web-secure-storage) [![Last commit](https://img.shields.io/github/last-commit/jihyunlab/web-secure-storage.svg?style=flat-square)](https://github.com/jihyunlab/web-secure-storage/graphs/commit-activity) [![License](https://img.shields.io/github/license/jihyunlab/web-secure-storage.svg?style=flat-square)](https://github.com/jihyunlab/web-secure-storage/blob/master/LICENSE) [![Linter](https://img.shields.io/badge/linter-eslint-blue?style=flat-square)](https://eslint.org) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)\\\n[![Build](https://github.com/jihyunlab/web-secure-storage/actions/workflows/build.yml/badge.svg)](https://github.com/jihyunlab/web-secure-storage/actions/workflows/build.yml) [![Lint](https://github.com/jihyunlab/web-secure-storage/actions/workflows/lint.yml/badge.svg)](https://github.com/jihyunlab/web-secure-storage/actions/workflows/lint.yml) [![Prettier](https://github.com/jihyunlab/web-secure-storage/actions/workflows/prettier.yml/badge.svg)](https://github.com/jihyunlab/web-secure-storage/actions/workflows/prettier.yml) [![codecov](https://codecov.io/gh/jihyunlab/web-secure-storage/graph/badge.svg?token=QJX5G75FXA)](https://codecov.io/gh/jihyunlab/web-secure-storage)\n\n@jihyunlab/web-secure-storage can be used by web applications.\n\n@jihyunlab/web-secure-storage encrypts values and stores them in local or session storage. When retrieving stored values, they are decrypted back to their original values\n\nThe encryption function is implemented with [@jihyunlab/web-crypto](https://www.npmjs.com/package/@jihyunlab/web-crypto) and provides encryption for AES 256 CBC and AES 256 GCM.\n\n## Installation\n\n```bash\nnpm i @jihyunlab/web-secure-storage\n```\n\n## Usage\n\nYou can easily encrypt data and store it in storage, then retrieve it.\n\n```\nimport {\n  CIPHER,\n  STORAGE,\n  WebSecureStorage,\n} from '@jihyunlab/web-secure-storage';\n\nconst storage = await WebSecureStorage.create(\n  STORAGE.LOCAL,\n  CIPHER.AES_256_GCM,\n  'your secret key'\n);\n\nstorage.clear();\n\nawait storage.setItem('item', 'jihyunlab'); // 89b1e3c2996e08d5549ecb9d625faca6db785c7d0f9ba51c3985e80ae1143263273308f5eb\n\nconst value = await storage.getItem('item');\nconsole.log(value); // jihyunlab\n\nstorage.removeItem('item');\n```\n\nYou can configure encryption options such as salt and iteration.\n\n```\nconst storage = await WebSecureStorage.create(\n  STORAGE.LOCAL,\n  CIPHER.AES_256_GCM,\n  'your secret key',\n  {\n    salt: 'salt',\n    iterations: 256,\n  }\n);\n```\n\n## Credits\n\nAuthored and maintained by JihyunLab \u003c\u003cinfo@jihyunlab.com\u003e\u003e\n\n## License\n\nOpen source [licensed as MIT](https://github.com/jihyunlab/web-secure-storage/blob/master/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjihyunlab%2Fweb-secure-storage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjihyunlab%2Fweb-secure-storage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjihyunlab%2Fweb-secure-storage/lists"}