Session.js is JavaScript library for programmatic usage of Session messenger by OXEN. Supports server and browser environment with built-in proxy network module. Shipped with TypeScript definitions. Tested with bun:test. It's aimed for Bun users — a modern runtime for JavaScript and alternative to Node.js. But it can also be used on most platforms and runtimes thanks to external modules system and platform-agnostic architecture with vanilla noble cryptography instead of WASM-compiled libsodium and bytebuffer.
Session.js allows you to create:
- Highly optimized Session bots (hundreds of bots in a single app)
- Custom Session clients (web-based and native with JS backend)
- Automation tools for Session
Important
I'm looking for a job! Interested in hiring me? Visit cv.hloth.dev to review my resume & CV.
- On-demand polling — you decide when to get new messages and whether instance should poll them (and poll settings like frequency) or work just for sending
- Per-instance storage and network settings — you can attach persistant storage to instance or use in-memory storage for throwaway one-time instances
- Session.js can be used in browser, keeping private keys on client-side and doing network requests on server-side. See this in action with my full-featured Session Web client!
Visit documentation website for guide: https://sessionjs.github.io/docs/
- Noble PRs by li0ard
hloth.dev/donate · Tor: hlothdevzkti6suoksy7lcy7hmpxnr3msu5waokzaslsi2mnx5ouu4qd.onion/donate
PGP-signed list of my crypto wallets: hloth.dev/donate-pgp-signed.txt · Tor: hlothdevzkti6suoksy7lcy7hmpxnr3msu5waokzaslsi2mnx5ouu4qd.onion/donate-pgp-signed.txt