@x-app/nuxt-layouts

Reusable layout and UI components for Nuxt 3 and Nuxt 4
369
Install
npm install @x-app/nuxt-layouts
Latest Version:0.1.1
Vue:3
License:MIT
Last Updated:Oct 4, 2026
Links: npm
Maintainer: x-app

@x-app/nuxt-layouts

مكونات واجهة قابلة لإعادة الاستخدام في مشاريع Nuxt 3 وNuxt 4.

التثبيت

npm install @x-app/nuxt-layouts @x-app/easy-css @nuxt/icon

تعتمد الحزمة على @x-app/easy-css، لذلك تُثبت تلقائيًا. يجب على المشروع المستهلك تحميل stylesheet الخاص بها في إعداد Nuxt:

export default defineNuxtConfig({
  css: ["@x-app/easy-css/dist/easy-css.css"],
  modules: ["@nuxt/icon", "@x-app/nuxt-layouts"],
});

تحتاج المكونات التي تعرض الأيقونات إلى @nuxt/icon مسجلًا في modules كما في المثال.

الاستخدام

تُسجل المكونات تلقائيًا بالبادئة Layouts:

<template>
  <LayoutsContainer title="المحتوى">
    <LayoutsBtn label="حفظ" />
  </LayoutsContainer>
</template>

المكونات المتاحة: LayoutsBottomDrawer, LayoutsBtn, LayoutsCircularProgress, LayoutsContainer, LayoutsHeader, LayoutsLoader, LayoutsNavBar, LayoutsPagination, LayoutsPopup, LayoutsSiteMenu, وLayoutsTabs.

يمكن استيراد أي مكون يدويًا عند الحاجة:

<script setup>
import LayoutsBtn from "@x-app/nuxt-layouts/components/Btn";
</script>

<template>
  <LayoutsBtn label="متابعة" />
</template>

Header

لا تعتمد LayoutsHeader على Pinia. عند استخدام أيقونة القائمة الافتراضية، يرسل المكون حدث rightIconAction؛ اربطه لفتح القائمة الخاصة بتطبيقك:

<script setup>
function openMenu() {
  // افتح قائمة التطبيق هنا
}
</script>

<template>
  <LayoutsHeader title="الرئيسية" @right-icon-action="openMenu" />
</template>

كما يرسل leftIconAction وtitleAction للأزرار والعنوان المقابلين.

التطوير والبناء

npm install
npm run build

ينشئ البناء ملفات dist التي تتضمنها الحزمة عند تجهيزها للنشر على npm.

تجربة المكونات محليًا

يوجد تطبيق تجريبي في مجلد playground يستهلك هذه الحزمة محليًا ويعرض أمثلة للمكونات والتكامل مع Easy CSS وIconify:

cd ..
npm install
npm run build

cd playground
npm install
npm run dev

يبني الأمر داخل playground الوحدة مجددًا قبل بدء تطبيق Nuxt التجريبي، لتظهر أي تغييرات حديثة على المكونات.

Related Packages

@x-app/nuxt-api

Configurable API composable for Nuxt 3 and Nuxt 4

393
@x-app/nuxt-inputs

Reusable input components for Nuxt 3 and Nuxt 4

351
@x-app/nuxt-toast

Toast notifications for Nuxt 3 and Nuxt 4

184
@x-app/easy-css

A lightweight, customizable SCSS utility library with responsive classes.

368

Version History

Version Released Vue License
0.1.1 ^3.0 MIT
0.1.0 ^3.0 MIT