From 3eb0860a3de438d82b84b69e47ac85cb57603ba7 Mon Sep 17 00:00:00 2001 From: Davide Grilli Date: Tue, 24 Mar 2026 23:13:49 +0100 Subject: [PATCH] Scaffold iniziale Vue 3 + Vite Aggiunge struttura base del progetto: package.json, vite.config.js, index.html con viewport mobile, main.js, CSS globale mobile-first e .gitignore. Co-Authored-By: Claude Sonnet 4.6 --- .gitignore | 3 ++ index.html | 12 ++++++++ package.json | 17 ++++++++++++ src/main.js | 5 ++++ src/style.css | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++ vite.config.js | 6 ++++ 6 files changed, 117 insertions(+) create mode 100644 .gitignore create mode 100644 index.html create mode 100644 package.json create mode 100644 src/main.js create mode 100644 src/style.css create mode 100644 vite.config.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3bdd52e --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +dist/ +.DS_Store diff --git a/index.html b/index.html new file mode 100644 index 0000000..6faa4bb --- /dev/null +++ b/index.html @@ -0,0 +1,12 @@ + + + + + + BitePlan + + +
+ + + diff --git a/package.json b/package.json new file mode 100644 index 0000000..ae0b0d3 --- /dev/null +++ b/package.json @@ -0,0 +1,17 @@ +{ + "name": "biteplan", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "dependencies": { + "vue": "^3.4.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.0.0", + "vite": "^5.0.0" + } +} diff --git a/src/main.js b/src/main.js new file mode 100644 index 0000000..fe5bae3 --- /dev/null +++ b/src/main.js @@ -0,0 +1,5 @@ +import { createApp } from 'vue' +import App from './App.vue' +import './style.css' + +createApp(App).mount('#app') diff --git a/src/style.css b/src/style.css new file mode 100644 index 0000000..b67d5c8 --- /dev/null +++ b/src/style.css @@ -0,0 +1,74 @@ +*, *::before, *::after { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +:root { + --color-bg: #f5f5f5; + --color-surface: #ffffff; + --color-primary: #2d6a4f; + --color-primary-light: #52b788; + --color-text: #1a1a1a; + --color-muted: #6b7280; + --color-border: #e5e7eb; + --color-danger: #dc2626; + --radius: 8px; + --nav-height: 60px; +} + +html, body { + height: 100%; + font-family: system-ui, -apple-system, sans-serif; + font-size: 16px; + background: var(--color-bg); + color: var(--color-text); +} + +#app { + height: 100%; + display: flex; + flex-direction: column; + max-width: 480px; + margin: 0 auto; + background: var(--color-bg); +} + +.page { + flex: 1; + overflow-y: auto; + padding: 16px; + padding-bottom: calc(var(--nav-height) + 16px); +} + +.page-title { + font-size: 1.25rem; + font-weight: 700; + margin-bottom: 16px; +} + +button { + font-size: 1rem; + cursor: pointer; + border: none; + border-radius: var(--radius); + min-height: 44px; + padding: 0 16px; +} + +input[type="text"], +input[type="number"] { + font-size: 1rem; + border: 1px solid var(--color-border); + border-radius: var(--radius); + padding: 10px 12px; + min-height: 44px; + width: 100%; + background: var(--color-surface); + color: var(--color-text); +} + +input:focus { + outline: 2px solid var(--color-primary); + outline-offset: 1px; +} diff --git a/vite.config.js b/vite.config.js new file mode 100644 index 0000000..2e3d257 --- /dev/null +++ b/vite.config.js @@ -0,0 +1,6 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +export default defineConfig({ + plugins: [vue()] +})