Skip to content

Latest commit

 

History

History
45 lines (31 loc) · 2.29 KB

README.md

File metadata and controls

45 lines (31 loc) · 2.29 KB

kit

CI NPM badge

Kit is a library of building blocks and utilities for Cloudflare Workers (CFW).

Functionality can be individually imported, so you can pick the parts you need without increasing your bundle size too much.

A few of the included modules are Sunder framework-specific, these are marked with 〽️. All others modules should be easy to use in any CFW project.

What's included

👨‍💻 Session management

  • 🍪 A cookie-based authentication system for keeping users logged in securely. By being backed by Workers KV (or any other database) you can associate arbitrary data with a session, so there is little excuse for using JWT instead.

🕵️‍♀️ Crypto & Encoding/Decoding

  • 🔏 Random token generation (cryptographically sound), use this to generate post IDs, user IDs or even secrets such as API tokens.

  • 📦 Base64 encoding and decoding (RFC 3548 compliant)

  • 🏷 Base-X encoding and decoding, which can be used for encoding data or random IDs with a given alphabet. Example alphabets:

    • Base 58 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz (does not contain Il0O for easier human copying)
    • Base 62 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ (base64 without special characters)
    • Base 36 0123456789abcdefghijklmnopqrstuvwxyz (all lowercase, useful for case-insensitive systems)

    Warning: these encodings are not RFC3548 compliant. The padding is different, base-x uses Bitcoin's padding scheme.

🔌 Plug-and-play middlewares

Installation

npm i @sunder/kit

Documentation

👷‍♀️ Guides and long-form docs are to-do, use the Typescript typings as your guide for now.

The docs will live on sunderjs.com.

License

MIT