grlt-hub/app-compose
grlt-hub/app-compose has 27 GitHub stars and 1 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-14 08:53 UTC. Last push 2026-10-29.
What you can do
- Simplicity — lightweight, no containers/providers/decorators, zero dependencies. Framework-agnostic.
- Clarity — no magic, no globals; context flows through typed wiring.
- Reusability — same code, different context per compose.
- Testability — missing context, duplicates, unused wires fail in CI.
Measured star growth
- in 24h
- 0
- in 7 days
- 0
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
About
App Compose helps you build front-end applications from isolated tasks with explicit dependencies and predictable execution order—without containers, decorators, or framework-specific APIs.
Web & AppsREADME.md
OriginalApp Compose
App Compose helps you build front-end applications from isolated tasks with explicit dependencies and predictable execution order—without containers, decorators, or framework-specific APIs.
[!NOTE] Beta: This project is currently in beta. The API may change before the stable release.
@app-compose/[email protected]@app-compose/[email protected]@app-compose/[email protected]
Features
- Simplicity — lightweight, no containers/providers/decorators, zero dependencies. Framework-agnostic.
- Clarity — no magic, no globals; context flows through typed wiring.
- Reusability — same code, different context per compose.
- Testability — missing context, duplicates, unused wires fail in CI.
- Observability — your app as plain JSON; hooks for start, complete, fail.
Adopt it gradually
If you want to use App-Compose for a part of your existing app, you don't have to rewrite the rest. Add it to your stack, and bring in more when you're ready.
See it run
A minimal example built on the three key pieces: Task, Tag, and Wire (how they connect). Two features share data without knowing about each other.
import { compose, createTask, createWire, tag } from "@app-compose/core"
const name = tag<string>("name")
const user = createTask({
name: "user",
run: { fn: () => ({ name: "World" }) },
})
const greeting = createTask({
name: "greeting",
run: {
context: name.value,
fn: (name) => console.log(`Hello, ${name}!`),
},
})
await compose()
.step(user)
.step(createWire({ from: user.result.name, to: name }))
.step(greeting)
.run() // Hello, World!
Get started
Try App Compose in the online sandbox without installing anything, or add @app-compose/core with your package manager:
- npm:
npm install --save-exact @app-compose/core - pnpm:
pnpm add --save-exact @app-compose/core - Yarn:
yarn add --exact @app-compose/core - Bun:
bun add --exact @app-compose/core
Continue with the Quick Start.
AI tools
Give your coding assistant the documentation index to find the pages relevant to your task.
DeepWiki
Open deepwiki and ask anything about the codebase.
License
App Compose is available under the MIT License.
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
459,117 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
377,840 starsreact/react
The library for web and native user interfaces.
252,596 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,524 stars