moulify 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,73 @@
1
+ # Moulify
2
+
3
+ [![npm version][npm-version-src]][npm-version-href]
4
+ [![npm downloads][npm-downloads-src]][npm-downloads-href]
5
+ [![License][license-src]][license-href]
6
+ [![Nuxt][nuxt-src]][nuxt-href]
7
+
8
+ Nuxt module that provides UI components for your app.
9
+
10
+ - [✨ Release Notes](/CHANGELOG.md)
11
+
12
+ ## Features
13
+
14
+ - **MoulifyButton** – Styled button component with hover/active states
15
+
16
+ ## Quick Setup
17
+
18
+ Install the module in your Nuxt app:
19
+
20
+ ```bash
21
+ npx nuxi module add moulify
22
+ ```
23
+
24
+ Or add the dependency and register the module:
25
+
26
+ ```bash
27
+ npm install moulify
28
+ ```
29
+
30
+ ```ts
31
+ // nuxt.config.ts
32
+ export default defineNuxtConfig({
33
+ modules: ['moulify'],
34
+ })
35
+ ```
36
+
37
+ Use the button in any page or component:
38
+
39
+ ```vue
40
+ <template>
41
+ <MoulifyButton>Click me</MoulifyButton>
42
+ </template>
43
+ ```
44
+
45
+ ## Contribution
46
+
47
+ <details>
48
+ <summary>Local development</summary>
49
+
50
+ ```bash
51
+ npm install
52
+ npm run dev:prepare
53
+ npm run dev
54
+ npm run dev:build
55
+ npm run lint
56
+ npm run test
57
+ npm run release
58
+ ```
59
+
60
+ </details>
61
+
62
+ <!-- Badges -->
63
+ [npm-version-src]: https://img.shields.io/npm/v/moulify/latest.svg?style=flat&colorA=020420&colorB=00DC82
64
+ [npm-version-href]: https://npmjs.com/package/moulify
65
+
66
+ [npm-downloads-src]: https://img.shields.io/npm/dm/moulify.svg?style=flat&colorA=020420&colorB=00DC82
67
+ [npm-downloads-href]: https://npm.chart.dev/moulify
68
+
69
+ [license-src]: https://img.shields.io/npm/l/moulify.svg?style=flat&colorA=020420&colorB=00DC82
70
+ [license-href]: https://npmjs.com/package/moulify
71
+
72
+ [nuxt-src]: https://img.shields.io/badge/Nuxt-020420?logo=nuxt
73
+ [nuxt-href]: https://nuxt.com
@@ -0,0 +1,8 @@
1
+ import * as _nuxt_schema from '@nuxt/schema';
2
+
3
+ interface ModuleOptions {
4
+ }
5
+ declare const _default: _nuxt_schema.NuxtModule<ModuleOptions, ModuleOptions, false>;
6
+
7
+ export { _default as default };
8
+ export type { ModuleOptions };
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "moulify",
3
+ "configKey": "moulify",
4
+ "version": "1.0.0",
5
+ "builder": {
6
+ "@nuxt/module-builder": "1.0.2",
7
+ "unbuild": "unknown"
8
+ }
9
+ }
@@ -0,0 +1,19 @@
1
+ import { defineNuxtModule, createResolver, addComponentsDir, addPlugin } from '@nuxt/kit';
2
+
3
+ const module$1 = defineNuxtModule({
4
+ meta: {
5
+ name: "moulify",
6
+ configKey: "moulify"
7
+ },
8
+ // Default configuration options of the Nuxt module
9
+ defaults: {},
10
+ setup(_options, _nuxt) {
11
+ const resolver = createResolver(import.meta.url);
12
+ addComponentsDir({
13
+ path: resolver.resolve("./runtime/components")
14
+ });
15
+ addPlugin(resolver.resolve("./runtime/plugin"));
16
+ }
17
+ });
18
+
19
+ export { module$1 as default };
@@ -0,0 +1,13 @@
1
+ declare var __VLS_1: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
9
+ type __VLS_WithSlots<T, S> = T & {
10
+ new (): {
11
+ $slots: S;
12
+ };
13
+ };
@@ -0,0 +1,19 @@
1
+ <template>
2
+ <button
3
+ class="moulify-button"
4
+ type="button"
5
+ v-bind="$attrs"
6
+ >
7
+ <slot />
8
+ </button>
9
+ </template>
10
+
11
+ <script setup>
12
+ defineOptions({
13
+ name: "MoulifyButton"
14
+ });
15
+ </script>
16
+
17
+ <style scoped>
18
+ .moulify-button{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);border:1px solid rgba(15,23,42,.15);border-radius:.375rem;color:#f9fafb;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.5rem 1rem;transition:background-color .15s ease,box-shadow .15s ease,transform .05s ease}.moulify-button:hover{background:linear-gradient(135deg,#111827,#1f2937);box-shadow:0 8px 20px rgba(15,23,42,.25)}.moulify-button:active{box-shadow:0 4px 10px rgba(15,23,42,.2);transform:translateY(1px)}.moulify-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}
19
+ </style>
@@ -0,0 +1,13 @@
1
+ declare var __VLS_1: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
9
+ type __VLS_WithSlots<T, S> = T & {
10
+ new (): {
11
+ $slots: S;
12
+ };
13
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
2
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import { defineNuxtPlugin } from "#app";
2
+ export default defineNuxtPlugin(() => {
3
+ });
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "../../../.nuxt/tsconfig.server.json",
3
+ }
@@ -0,0 +1,3 @@
1
+ export { default } from './module.mjs'
2
+
3
+ export { type ModuleOptions } from './module.mjs'
package/package.json ADDED
@@ -0,0 +1,62 @@
1
+ {
2
+ "name": "moulify",
3
+ "version": "1.0.0",
4
+ "description": "Nuxt module with UI components including MoulifyButton",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/moulibheemaneti/moulify.git"
8
+ },
9
+ "license": "MIT",
10
+ "type": "module",
11
+ "exports": {
12
+ ".": {
13
+ "types": "./dist/types.d.mts",
14
+ "import": "./dist/module.mjs"
15
+ }
16
+ },
17
+ "main": "./dist/module.mjs",
18
+ "typesVersions": {
19
+ "*": {
20
+ ".": [
21
+ "./dist/types.d.mts"
22
+ ]
23
+ }
24
+ },
25
+ "files": [
26
+ "dist"
27
+ ],
28
+ "workspaces": [
29
+ "playground"
30
+ ],
31
+ "scripts": {
32
+ "prepack": "nuxt-module-build build",
33
+ "dev": "npm run dev:prepare && nuxt dev playground",
34
+ "dev:build": "nuxt build playground",
35
+ "dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxt prepare playground",
36
+ "release": "npm run lint && npm run test && npm run prepack && changelogen --release && npm publish && git push --follow-tags",
37
+ "lint": "eslint .",
38
+ "test": "vitest run",
39
+ "test:watch": "vitest watch",
40
+ "test:types": "vue-tsc --noEmit && cd playground && vue-tsc --noEmit"
41
+ },
42
+ "dependencies": {
43
+ "@nuxt/kit": "^4.3.1"
44
+ },
45
+ "peerDependencies": {
46
+ "nuxt": ">=3.0.0"
47
+ },
48
+ "devDependencies": {
49
+ "@nuxt/devtools": "^3.2.1",
50
+ "@nuxt/eslint-config": "^1.15.1",
51
+ "@nuxt/module-builder": "^1.0.2",
52
+ "@nuxt/schema": "^4.3.1",
53
+ "@nuxt/test-utils": "^4.0.0",
54
+ "@types/node": "latest",
55
+ "changelogen": "^0.6.2",
56
+ "eslint": "^10.0.0",
57
+ "nuxt": "^4.3.1",
58
+ "typescript": "~5.9.3",
59
+ "vitest": "^4.0.18",
60
+ "vue-tsc": "^3.2.4"
61
+ }
62
+ }