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.
RyunixJS is managed as a monorepo containing several specialized packages:
| Package | Description |
|---|---|
@unsetsoft/ryunixjs |
The core library containing the reconciler, hooks, and DOM utilities. |
@unsetsoft/ryunix-presets |
Unified tooling and Webpack configurations for different environments. |
@unsetsoft/cra |
The Official CLI to scaffold new Ryunix projects effortlessly. |
@unsetsoft/ryunix-devtools |
Browser extension for debugging and inspecting component trees. |
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 devWe 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 (if available) for more details.
RyunixJS is MIT Licensed.
Built with ❤️ by UnSetSoft
