Stack
The Portability Solution for Your Code! 🚀 Powered By Deno and JavaScript.
Install / Use
/learn @eser/StackREADME
eserstack - The Portability Solution for Your Code! 🚀
<p align="center">
<a href="./">
<img alt="eser stack javascript toolkit" src="./etc/cover.svg" width="849" />
</a>
</p>
Step into a world where you never have to deal with portability and platform issues. Whether you're targeting web browsers, serverless platforms, chatbots, CLI, or multiple platforms simultaneously, eserstack ensures your code runs flawlessly everywhere.
📖 Overview
eserstack is a JavaScript toolkit designed to uphold best practices and
enhance portability across different platforms.
Beyond being a toolkit, eserstack advocates for a philosophy that emphasizes
writing code driven by algorithms, design and patterns, not by platform-specific
implementation details.
While eserstack offers you a layer of abstraction that isolates you from the
platforms, you can focus on your implementation. Don't worry about the rest,
your solution will excel across diverse environments.
Every component of eserstack is designed to work in harmony,
strives to offer you an intuitive and delightful development experience.
🌟 Why choose eserstack?
eserstack is meticulously designed for developers who:
-
Seek Portability: If you've ever felt the need for a JavaScript/TypeScript framework that seamlessly works across web browsers, Deno, Supabase, Netlify, AWS Lambda and Cloudflare Workers,
eserstackis your answer. See the full list of supported platforms -
Love Functional Programming:
eserstacknot only supports but encourages a functional programming approach. This means you can write your code once and run it on various platforms without modifications. Dive into our functional programming tools -
Want Enhanced Testability: With the removal of hard-coded dependencies and the promotion of loose coupling,
eserstackenhances the testability of your codebase, ensuring that your applications run as expected. Explore our dependency injection system -
Desire a Unified Approach: Instead of juggling multiple libraries and tools,
eserstackprovides a unified toolkit where each component works seamlessly with the others, ensuring a smoother development experience. Check out our component set -
Prioritize Best Practices: If you've been struggling with maintaining best practices in your development process,
eserstackis here to guide you. With built-in support for principles like 12factor and dependency injection, you can ensure that your code remains clean, maintainable, and scalable. Learn more about our best practices approach
📂 Components
Component Set
Core
| Component | Description | Latest Version |
| -------------------------------------------- | ------------------------------------------------------------------ | --------------------------------------------------------------------------------- |
| 🧩 @eser/primitives | Result types, Option, and base constructors | |
| 📑 @eser/standards | Cross-runtime standards, formatters, i18n, and runtime abstraction |
|
| ⚡ @eser/functions | Monadic workflows, tasks, trigger adapters (CLI, HTTP, MCP) |
|
| 🧱 @eser/fp | Functional programming combinators |
|
| ⚙️ @eser/di | Dependency injection container |
|
| 📓 @eser/directives | Ground rules adhered to by the ecosystem | - |
Infrastructure
| Component | Description | Latest Version |
| -------------------------------------- | --------------------------------------------------- | --------------------------------------------------------------------------- |
| 🔐 @eser/config | Load configurations from .env files and environment | |
| 📢 @eser/events | Event bus and pub/sub system |
|
| 📝 @eser/logging | Hierarchical logging with OpenTelemetry integration |
|
| 💾 @eser/cache | Caching abstractions |
|
| 🌐 @eser/http | HTTP client and server utilities |
|
| 🐚 @eser/shell | CLI framework, shell execution, and completions |
|
| 🔑 @eser/crypto | Cryptographic hashing via Web Crypto API |
|
Data & Parsing
| Component | Description | Latest Version |
| ------------------------------------------ | --------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| 〰️ @eser/parsing | Parsing tools for strings and streams | |
| 🔄 @eser/formats | Bidirectional format conversion (JSON, YAML, CSV, TOML, JSONL) |
|
| 🌊 @eser/streams | Composable I/O streams with Span-based formatting and renderers |
|
| ⚙️ @eser/collector | Module export collector and manifest generator |
|
| 🗄️ @eser/cs | Config storage — Kubernetes ConfigMap/Secret sync |
|
Web & UI
| Component | Description | Latest Version |
| ---------------------------------------------------- | -------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| ⚛️ @eser/jsx-runtime | JSX runtime for server-side rendering | |
| ⚙️ @eser/app-runtime | Application lifecycle and module management |
|
| 🌐 @eser/laroux | Laroux.js framework-agnostic core |
|
| 🖥️ @eser/laroux-server | Laroux.js HTTP server and SSR runtime |
|
| ⚛️ @eser/laroux-react | Laroux.js React client runtime and hydration |
|
| 📦 @eser/laroux-bundler | Laroux.js build tooling, CSS, and asset processing |
|
| 📦 @eser/bundler | General-purpose bundler utilities |
|
Tooling
| Component | Description | Latest Version | | ------------------------------------------ | -----------------------
