From 190259bb0f512d881a1dc852ff0c68dd41aeb434 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Sat, 12 Nov 2022 11:37:43 +0100 Subject: Init --- app/src/App.vue | 22 ++++++++++++ app/src/components/Footer.vue | 76 +++++++++++++++++++++++++++++++++++++++++ app/src/components/Header.vue | 17 ++++++++++ app/src/main.ts | 32 ++++++++++++++++++ app/src/router/index.ts | 18 ++++++++++ app/src/sass/main.sass | 36 ++++++++++++++++++++ app/src/shims-vue.d.ts | 6 ++++ app/src/theme/variables.css | 78 +++++++++++++++++++++++++++++++++++++++++++ app/src/views/HomePage.vue | 26 +++++++++++++++ 9 files changed, 311 insertions(+) create mode 100644 app/src/App.vue create mode 100644 app/src/components/Footer.vue create mode 100644 app/src/components/Header.vue create mode 100644 app/src/main.ts create mode 100644 app/src/router/index.ts create mode 100644 app/src/sass/main.sass create mode 100644 app/src/shims-vue.d.ts create mode 100644 app/src/theme/variables.css create mode 100644 app/src/views/HomePage.vue (limited to 'app/src') diff --git a/app/src/App.vue b/app/src/App.vue new file mode 100644 index 0000000..9f44f85 --- /dev/null +++ b/app/src/App.vue @@ -0,0 +1,22 @@ + + + + + diff --git a/app/src/components/Footer.vue b/app/src/components/Footer.vue new file mode 100644 index 0000000..9ca60cb --- /dev/null +++ b/app/src/components/Footer.vue @@ -0,0 +1,76 @@ + + + diff --git a/app/src/components/Header.vue b/app/src/components/Header.vue new file mode 100644 index 0000000..d5de19c --- /dev/null +++ b/app/src/components/Header.vue @@ -0,0 +1,17 @@ + + + diff --git a/app/src/main.ts b/app/src/main.ts new file mode 100644 index 0000000..ce30a3f --- /dev/null +++ b/app/src/main.ts @@ -0,0 +1,32 @@ +import { createApp } from 'vue' +import App from './App.vue' +import router from './router'; + +import { IonicVue } from '@ionic/vue'; + +/* Core CSS required for Ionic components to work properly */ +import '@ionic/vue/css/core.css'; + +/* Basic CSS for apps built with Ionic */ +import '@ionic/vue/css/normalize.css'; +import '@ionic/vue/css/structure.css'; +import '@ionic/vue/css/typography.css'; + +/* Optional CSS utils that can be commented out */ +import '@ionic/vue/css/padding.css'; +import '@ionic/vue/css/float-elements.css'; +import '@ionic/vue/css/text-alignment.css'; +import '@ionic/vue/css/text-transformation.css'; +import '@ionic/vue/css/flex-utils.css'; +import '@ionic/vue/css/display.css'; + +/* Theme variables */ +import './theme/variables.css'; + +const app = createApp(App) + .use(IonicVue) + .use(router); + +router.isReady().then(() => { + app.mount('#app'); +}); \ No newline at end of file diff --git a/app/src/router/index.ts b/app/src/router/index.ts new file mode 100644 index 0000000..86cf89f --- /dev/null +++ b/app/src/router/index.ts @@ -0,0 +1,18 @@ +import { createRouter, createWebHistory } from "@ionic/vue-router"; +import { RouteRecordRaw } from "vue-router"; +import HomePage from "../views/HomePage.vue"; + +const routes: Array = [ + { + path: "/", + component: HomePage, + name: "HomePage", + }, +]; + +const router = createRouter({ + history: createWebHistory(process.env.BASE_URL), + routes, +}); + +export default router; diff --git a/app/src/sass/main.sass b/app/src/sass/main.sass new file mode 100644 index 0000000..84bab38 --- /dev/null +++ b/app/src/sass/main.sass @@ -0,0 +1,36 @@ +#container + text-align: center + position: absolute + left: 0 + right: 0 + top: 50% + transform: translateY(-50%) + +#container strong + font-size: 20px + line-height: 26px + +#container p + font-size: 16px + line-height: 22px + color: #8c8c8c + margin: 0 + +#container a + text-decoration: none + + +ion-tab-bar + background-color: #4bd786 + +ion-tab-button + background-color: #4bd786 + color: #19703e + &.tab-selected + color: #fff + +.t + width: 30px + +ion-page + margin: 10px diff --git a/app/src/shims-vue.d.ts b/app/src/shims-vue.d.ts new file mode 100644 index 0000000..3804a43 --- /dev/null +++ b/app/src/shims-vue.d.ts @@ -0,0 +1,6 @@ +/* eslint-disable */ +declare module '*.vue' { + import type { DefineComponent } from 'vue' + const component: DefineComponent<{}, {}, any> + export default component +} diff --git a/app/src/theme/variables.css b/app/src/theme/variables.css new file mode 100644 index 0000000..e807a80 --- /dev/null +++ b/app/src/theme/variables.css @@ -0,0 +1,78 @@ +/* Ionic Variables and Theming. For more info, please see: +http://ionicframework.com/docs/theming/ */ + +/** Ionic CSS Variables **/ +:root { + /** primary **/ + --ion-color-primary: #3880ff; + --ion-color-primary-rgb: 56, 128, 255; + --ion-color-primary-contrast: #ffffff; + --ion-color-primary-contrast-rgb: 255, 255, 255; + --ion-color-primary-shade: #3171e0; + --ion-color-primary-tint: #4c8dff; + + /** secondary **/ + --ion-color-secondary: #3dc2ff; + --ion-color-secondary-rgb: 61, 194, 255; + --ion-color-secondary-contrast: #ffffff; + --ion-color-secondary-contrast-rgb: 255, 255, 255; + --ion-color-secondary-shade: #36abe0; + --ion-color-secondary-tint: #50c8ff; + + /** tertiary **/ + --ion-color-tertiary: #5260ff; + --ion-color-tertiary-rgb: 82, 96, 255; + --ion-color-tertiary-contrast: #ffffff; + --ion-color-tertiary-contrast-rgb: 255, 255, 255; + --ion-color-tertiary-shade: #4854e0; + --ion-color-tertiary-tint: #6370ff; + + /** success **/ + --ion-color-success: #2dd36f; + --ion-color-success-rgb: 45, 211, 111; + --ion-color-success-contrast: #ffffff; + --ion-color-success-contrast-rgb: 255, 255, 255; + --ion-color-success-shade: #28ba62; + --ion-color-success-tint: #42d77d; + + /** warning **/ + --ion-color-warning: #ffc409; + --ion-color-warning-rgb: 255, 196, 9; + --ion-color-warning-contrast: #000000; + --ion-color-warning-contrast-rgb: 0, 0, 0; + --ion-color-warning-shade: #e0ac08; + --ion-color-warning-tint: #ffca22; + + /** danger **/ + --ion-color-danger: #eb445a; + --ion-color-danger-rgb: 235, 68, 90; + --ion-color-danger-contrast: #ffffff; + --ion-color-danger-contrast-rgb: 255, 255, 255; + --ion-color-danger-shade: #cf3c4f; + --ion-color-danger-tint: #ed576b; + + /** dark **/ + --ion-color-dark: #222428; + --ion-color-dark-rgb: 34, 36, 40; + --ion-color-dark-contrast: #ffffff; + --ion-color-dark-contrast-rgb: 255, 255, 255; + --ion-color-dark-shade: #1e2023; + --ion-color-dark-tint: #383a3e; + + /** medium **/ + --ion-color-medium: #92949c; + --ion-color-medium-rgb: 146, 148, 156; + --ion-color-medium-contrast: #ffffff; + --ion-color-medium-contrast-rgb: 255, 255, 255; + --ion-color-medium-shade: #808289; + --ion-color-medium-tint: #9d9fa6; + + /** light **/ + --ion-color-light: #f4f5f8; + --ion-color-light-rgb: 244, 245, 248; + --ion-color-light-contrast: #000000; + --ion-color-light-contrast-rgb: 0, 0, 0; + --ion-color-light-shade: #d7d8da; + --ion-color-light-tint: #f5f6f9; +} + diff --git a/app/src/views/HomePage.vue b/app/src/views/HomePage.vue new file mode 100644 index 0000000..e952dd2 --- /dev/null +++ b/app/src/views/HomePage.vue @@ -0,0 +1,26 @@ + + + -- cgit v1.2.3-18-g5258