diff --git a/.gitignore b/.gitignore index 421da659..893e9785 100644 --- a/.gitignore +++ b/.gitignore @@ -102,4 +102,5 @@ keyv.iml #website packages/website/site/docs/** !packages/website/site/docs/index.md +!packages/website/site/docs/v4-to-v5.md !packages/website/site/docs/cacheing/** diff --git a/media/github-social-logo.png b/media/github-social-logo.png new file mode 100644 index 00000000..8d7b592a Binary files /dev/null and b/media/github-social-logo.png differ diff --git a/media/keyv-guidelines-1.0.pdf b/media/keyv-guidelines-1.0.pdf new file mode 100644 index 00000000..171e8525 Binary files /dev/null and b/media/keyv-guidelines-1.0.pdf differ diff --git a/media/keyv-logos/black-white/png/keyv-logo-horizontal-black.png b/media/keyv-logos/black-white/png/keyv-logo-horizontal-black.png new file mode 100644 index 00000000..c8cd9419 Binary files /dev/null and b/media/keyv-logos/black-white/png/keyv-logo-horizontal-black.png differ diff --git a/media/keyv-logos/black-white/png/keyv-logo-horizontal-white.png b/media/keyv-logos/black-white/png/keyv-logo-horizontal-white.png new file mode 100644 index 00000000..28b9461f Binary files /dev/null and b/media/keyv-logos/black-white/png/keyv-logo-horizontal-white.png differ diff --git a/media/keyv-logos/black-white/png/keyv-logo-vertical-black.png b/media/keyv-logos/black-white/png/keyv-logo-vertical-black.png new file mode 100644 index 00000000..5ff747fc Binary files /dev/null and b/media/keyv-logos/black-white/png/keyv-logo-vertical-black.png differ diff --git a/media/keyv-logos/black-white/png/keyv-logo-vertical-white.png b/media/keyv-logos/black-white/png/keyv-logo-vertical-white.png new file mode 100644 index 00000000..3b6a7943 Binary files /dev/null and b/media/keyv-logos/black-white/png/keyv-logo-vertical-white.png differ diff --git a/media/keyv-logos/black-white/png/keyv-symbol-black.png b/media/keyv-logos/black-white/png/keyv-symbol-black.png new file mode 100644 index 00000000..a54a7d7e Binary files /dev/null and b/media/keyv-logos/black-white/png/keyv-symbol-black.png differ diff --git a/media/keyv-logos/black-white/png/keyv-symbol-white.png b/media/keyv-logos/black-white/png/keyv-symbol-white.png new file mode 100644 index 00000000..84b7be16 Binary files /dev/null and b/media/keyv-logos/black-white/png/keyv-symbol-white.png differ diff --git a/media/keyv-logos/black-white/svg/keyv-logo-horizontal-black.svg b/media/keyv-logos/black-white/svg/keyv-logo-horizontal-black.svg new file mode 100644 index 00000000..ddbdd28a --- /dev/null +++ b/media/keyv-logos/black-white/svg/keyv-logo-horizontal-black.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/black-white/svg/keyv-logo-horizontal-white.svg b/media/keyv-logos/black-white/svg/keyv-logo-horizontal-white.svg new file mode 100644 index 00000000..b0dc5f54 --- /dev/null +++ b/media/keyv-logos/black-white/svg/keyv-logo-horizontal-white.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/black-white/svg/keyv-logo-vertical-black.svg b/media/keyv-logos/black-white/svg/keyv-logo-vertical-black.svg new file mode 100644 index 00000000..4039d16c --- /dev/null +++ b/media/keyv-logos/black-white/svg/keyv-logo-vertical-black.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/black-white/svg/keyv-logo-vertical-white.svg b/media/keyv-logos/black-white/svg/keyv-logo-vertical-white.svg new file mode 100644 index 00000000..c89265fc --- /dev/null +++ b/media/keyv-logos/black-white/svg/keyv-logo-vertical-white.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/black-white/svg/keyv-symbol-black.svg b/media/keyv-logos/black-white/svg/keyv-symbol-black.svg new file mode 100644 index 00000000..203cfc32 --- /dev/null +++ b/media/keyv-logos/black-white/svg/keyv-symbol-black.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/black-white/svg/keyv-symbol-white.svg b/media/keyv-logos/black-white/svg/keyv-symbol-white.svg new file mode 100644 index 00000000..457c4e73 --- /dev/null +++ b/media/keyv-logos/black-white/svg/keyv-symbol-white.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/color-rgb/png/keyv-logo-horizontal-black.png b/media/keyv-logos/color-rgb/png/keyv-logo-horizontal-black.png new file mode 100644 index 00000000..f4f46209 Binary files /dev/null and b/media/keyv-logos/color-rgb/png/keyv-logo-horizontal-black.png differ diff --git a/media/keyv-logos/color-rgb/png/keyv-logo-horizontal-white.png b/media/keyv-logos/color-rgb/png/keyv-logo-horizontal-white.png new file mode 100644 index 00000000..e91c3f4b Binary files /dev/null and b/media/keyv-logos/color-rgb/png/keyv-logo-horizontal-white.png differ diff --git a/media/keyv-logos/color-rgb/png/keyv-logo-vertical-black.png b/media/keyv-logos/color-rgb/png/keyv-logo-vertical-black.png new file mode 100644 index 00000000..2431e987 Binary files /dev/null and b/media/keyv-logos/color-rgb/png/keyv-logo-vertical-black.png differ diff --git a/media/keyv-logos/color-rgb/png/keyv-logo-vertical-white.png b/media/keyv-logos/color-rgb/png/keyv-logo-vertical-white.png new file mode 100644 index 00000000..b7e26b75 Binary files /dev/null and b/media/keyv-logos/color-rgb/png/keyv-logo-vertical-white.png differ diff --git a/media/keyv-logos/color-rgb/png/keyv-symbol.png b/media/keyv-logos/color-rgb/png/keyv-symbol.png new file mode 100644 index 00000000..6a53cc14 Binary files /dev/null and b/media/keyv-logos/color-rgb/png/keyv-symbol.png differ diff --git a/media/keyv-logos/color-rgb/svg/keyv-logo-horizontal-black.svg b/media/keyv-logos/color-rgb/svg/keyv-logo-horizontal-black.svg new file mode 100644 index 00000000..2c1007d2 --- /dev/null +++ b/media/keyv-logos/color-rgb/svg/keyv-logo-horizontal-black.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/color-rgb/svg/keyv-logo-horizontal-white.svg b/media/keyv-logos/color-rgb/svg/keyv-logo-horizontal-white.svg new file mode 100644 index 00000000..e1aa4ab4 --- /dev/null +++ b/media/keyv-logos/color-rgb/svg/keyv-logo-horizontal-white.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/color-rgb/svg/keyv-logo-vertical-black.svg b/media/keyv-logos/color-rgb/svg/keyv-logo-vertical-black.svg new file mode 100644 index 00000000..c886a0f9 --- /dev/null +++ b/media/keyv-logos/color-rgb/svg/keyv-logo-vertical-black.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/color-rgb/svg/keyv-logo-vertical-white.svg b/media/keyv-logos/color-rgb/svg/keyv-logo-vertical-white.svg new file mode 100644 index 00000000..98653497 --- /dev/null +++ b/media/keyv-logos/color-rgb/svg/keyv-logo-vertical-white.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/keyv-logos/color-rgb/svg/keyv-symbol.svg b/media/keyv-logos/color-rgb/svg/keyv-symbol.svg new file mode 100644 index 00000000..eafa66b5 --- /dev/null +++ b/media/keyv-logos/color-rgb/svg/keyv-symbol.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/media/legacy_logo.svg b/media/legacy_logo.svg new file mode 100644 index 00000000..8089994e --- /dev/null +++ b/media/legacy_logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/media/logo.svg b/media/logo.svg index 8089994e..c886a0f9 100644 --- a/media/logo.svg +++ b/media/logo.svg @@ -1,10 +1 @@ - - - - - - - - - - + \ No newline at end of file diff --git a/packages/website/site/docs/v4-to-v5.md b/packages/website/site/docs/v4-to-v5.md new file mode 100644 index 00000000..d0df0818 --- /dev/null +++ b/packages/website/site/docs/v4-to-v5.md @@ -0,0 +1,43 @@ +--- +title: 'v4 to v5 Migration' +order: 2 +--- + +# v4 to v5 Migration + +Keyv v5 is a major release with breaking changes. The biggest breaking changes are the removal of the URI via the constructor and the support for Nodejs 20+. Below are the new features and breaking changes in Keyv v5. To get past this please use Nodejs 20+ and update your code to use the new features and breaking changes like the following: + +## Before with v4 +```js +import Keyv from 'keyv'; +import KeyvRedis from '@keyv/redis'; +const keyv = new Keyv('redis://user:pass@localhost:6379'); +``` + +In the past this would have worked but now you need to pass in the store either directly to the constructor like below or via the options object parameter called `store`. The constructor will take the storage adapter or the options as the first parameter. + +## Now with v5 +```js +import Keyv from 'keyv'; +import KeyvRedis from '@keyv/redis'; +const keyv = new Keyv(new KeyvRedis({ uri: 'redis://user:pass@localhost:6379' })); +``` + +## An example with options +When passing in options you can do the following using the `store` parameter: +```js +import Keyv from 'keyv'; +import KeyvRedis from '@keyv/redis'; +const keyv = new Keyv({ store: new KeyvRedis({ uri: 'redis://user:pass@localhost:6379' }), namespace: 'my-namespace' }); +``` + +# New Features +Here are a list of new features in Keyv v5: +- **Typescript Support**: Keyv v5 is written in Typescript and has full typescript support. +- **ESM Support**: Keyv v5 is written in ESM and has full ESM support. +- **Event Emitter**: Keyv v5 is now an event emitter and emits events for `set`, `delete`, `clear`, and `error` with no reliance on third party libraries. +- **Built in Statistics**: Keyv v5 has built in statistics for `hits`, `misses`, `sets`, `deletes`, and `errors`. +- **Hooks**: Keyv v5 has hooks for pre and post processing on `set()`, `get()`, `getMany()`, and `delete()`. + +You can learn about any of these features in the Keyv API documentation. + diff --git a/packages/website/site/docula.config.cjs b/packages/website/site/docula.config.cjs index 8b5050eb..f71af66b 100644 --- a/packages/website/site/docula.config.cjs +++ b/packages/website/site/docula.config.cjs @@ -4,8 +4,8 @@ module.exports.options = { siteDescription: 'Simple key-value storage with support for multiple backends', siteUrl: 'https://keyv.org', sections: [ - { name: 'Caching', path: 'caching', order: 5 }, - { name: 'Compression', path: 'compression', order: 4 }, - { name: 'Storage Adapters', path: 'storage-adapters', order: 3 }, + { name: 'Caching', path: 'caching', order: 6 }, + { name: 'Compression', path: 'compression', order: 5 }, + { name: 'Storage Adapters', path: 'storage-adapters', order: 4 }, ], }; diff --git a/packages/website/src/docs.ts b/packages/website/src/docs.ts index 7a7a6e6e..ff7ad7f6 100644 --- a/packages/website/src/docs.ts +++ b/packages/website/src/docs.ts @@ -47,7 +47,7 @@ async function copyKeyvAPI() { const originalFileText = await fs.readFile(`${packagesPath}/keyv/README.md`, "utf8"); let newFileText = "---\n"; newFileText += `title: 'Keyv API'\n`; - newFileText += `order: 2\n`; + newFileText += `order: 3\n`; newFileText += "---\n"; newFileText += "\n"; newFileText += originalFileText;