Skip to content

SunderJS/kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published