Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Modern Svelte 5 UI components lib with powerful theming and API integration capabilities

License

Notifications You must be signed in to change notification settings

Yrrrrrf/rune-lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rune Lab Icon
Rune Lab

JSR NPM Package GitHub License: MIT

Overview

Rune Lab is your modern toolkit for crafting stunning, reactive web applications with Svelte 5. Harnessing the power of Svelte's new Runes system, Rune Lab offers a suite of elegant UI components designed for seamless data handling and beautiful theming.

It's built to integrate effortlessly with your data sources, especially shining when connected to the prism-py and prism-ts ecosystem for end-to-end type-safe API interactions.

Key Features

  • ✨ Svelte 5 Runes Core: Experience fine-grained reactivity and cleaner component logic.
  • 🎨 Dynamic Theming: Powered by DaisyUI & Tailwind CSS for extensive customization and out-of-the-box themes.
  • 🔒 TypeScript First: Robust type-safety for a confident and productive development workflow.
  • 📊 Data-Aware Components: Tools and components built to handle and visualize complex data.
  • 🛰️ Interactive Schema Explorer: A standout feature! Visually explore and interact with database schemas exposed by prism-py APIs directly within your Svelte application. Test CRUD operations, execute functions, and understand your data structure like never before.
  • 🌐 Smart API Integration: Includes apiStore (using prism-ts) for easy and type-safe connection to backend APIs.
  • 📦 Lightweight Core: Designed to be lean, with optional integrations.
  • 🦕 Universal Access: Available on JSR (for Deno) and NPM (for Node.js/Bun/Yarn).

The Prism Ecosystem Advantage

Rune Lab is designed to be a perfect companion to the Prism ecosystem:

  • prism-py: Automatically generates REST APIs from your database schema.
  • prism-ts: A TypeScript client that consumes these APIs with full type-safety.

When used together, Rune Lab's API integration tools (like the apiStore and RLSchemaExplorer) provide a remarkably streamlined and type-safe path from your backend data to your frontend UI.

Installation

Using Deno / JSR

# Add to your Deno project
deno add @yrrrrrf/rune-lab

Using NPM / Bun / Yarn

npm install rune-lab
bun add rune-lab
yarn add rune-lab

Project Configuration

Deno / SSR projects

Because Deno's Vite SSR module runner externalizes node_modules by default, .svelte files from this package would be loaded as raw ES modules, bypassing the Svelte compiler. To prevent this, you need to tell Vite to process rune-lab through its plugin pipeline.

Add the following to your consuming project's vite.config.ts:

export default defineConfig({
  plugins: [sveltekit()],
  ssr: {
    noExternal: ["rune-lab"],
  },
});

This ensures the Svelte plugin transforms the components correctly during SSR, just as it would for your own source files.

License

MIT License - See LICENSE for details.

About

Modern Svelte 5 UI components lib with powerful theming and API integration capabilities

Resources

License

Stars

Watchers

Forks

Packages

No packages published