A powerful, standalone, and high-performance JavaScript framework for building modern web applications.
RyunixJS is a modern UI framework designed to be completely standalone. While it draws inspiration from popular libraries like React and Preact, it doesn't include them internally. It provides a familiar API (Hooks, Components) but follows its own path to allow for a more manageable and moldable development experience.
Whether you're building a simple static site or a complex Single Page Application (SPA) with Server-Side Rendering (SSR), RyunixJS gives you the tools to do it efficiently.
-
🎯 Zero Dependencies: The core library is lightweight and independent.
-
⚛️ Familiar API: Use
useStore,useEffect,useContext, and more.While similar to React, Ryunix provides its own specialized hooks.
-
🌐 Hybrid Rendering: Built-in support for SSR (Server-Side Rendering)
and SSG (Static Site Generation).
-
🔋 Server-Side Power: Supports Server Components and Server Actions
for modern full-stack workflows.
-
📝 Native MDX: Write documentation or content-rich pages directly in MDX
with seamless integration.
-
📦 Specialized Hooks: Includes powerful built-ins like
usePersistentStore(auto-sync with localStorage),useSwitch(toggle state),useDebounce,useThrottle, and more. -
🛠️ Integrated Tooling: Powerful presets and a dedicated CLI to get you
started in seconds.
-
🔍 DevTools: A dedicated browser extension to debug your Ryunix
applications.
-
💻 VS Code Extension: Syntax highlighting and editor support for
.ryxfiles. Install from the Marketplace.
RyunixJS is managed as a monorepo containing several specialized packages:
| Package | Description |
|---|---|
@unsetsoft/ryunixjs |
Core library: reconciler, hooks, and DOM utilities. |
@unsetsoft/ryunix-presets |
Tooling and Webpack configurations. |
@unsetsoft/cra |
CLI to scaffold new Ryunix projects. |
@unsetsoft/ryunix-devtools |
Browser extension for component tree debugging. |
unsetsoft.ryunixjs |
VS Code extension for .ryx files (Marketplace). |
The quickest way to start a new project is using our CLI:
npx @unsetsoft/cra@latest my-ryunix-appNavigate to your app and start the development server:
cd my-ryunix-app
npm run devInstall the VS Code extension for .ryx syntax highlighting
(optional; the CRA can add workspace recommendations with --vscode).
For maintainers and contributors exploring the monorepo:
-
Internal technical overview — architecture of
core,ryunix-presets, andcra(Virtual DOM, hooks, CLI, routing, SSG, and more). -
Repository guide — what RyunixJS is,
comparison with Next.js, and root folder layout.
We love contributions! If you have ideas, bug reports, or want to add a new feature, please follow these steps:
-
Check Issues: See if there's already an existing issue or create a new
one to propose your change.
-
Branching Strategy:
- Create a branch named
gh/[user]/[feature-name]. - All changes should target the
canarybranch first.
- Create a branch named
-
Commit Messages: Keep them simple and descriptive.
-
Version Management: Do not manually change package versions; this is
handled during the release process.
Check out our Contributing Guide for more details.
If you discover a security vulnerability, do not open a public issue. See our Security Policy for supported versions and how to report responsibly.
RyunixJS is MIT Licensed.
Built with ❤️ by UnSetSoft
