aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/App.vue29
-rw-r--r--src/assets/logo.pngbin0 -> 6849 bytes
-rw-r--r--src/assets/logo.svg1
-rw-r--r--src/components/MainPage.vue131
-rw-r--r--src/main.js10
-rw-r--r--src/plugins/vuetify.js11
-rw-r--r--src/plugins/webfontloader.js17
7 files changed, 199 insertions, 0 deletions
diff --git a/src/App.vue b/src/App.vue
new file mode 100644
index 0000000..88ad076
--- /dev/null
+++ b/src/App.vue
@@ -0,0 +1,29 @@
+<template>
+ <v-app>
+ <v-main>
+ <v-app-bar>
+ <template v-slot:prepend>
+ <v-app-bar-nav-icon></v-app-bar-nav-icon>
+ </template>
+ <v-app-bar-title>Otonashi</v-app-bar-title>
+ </v-app-bar>
+ <MainPage />
+ </v-main>
+ </v-app>
+</template>
+
+<script>
+import MainPage from "./components/MainPage.vue";
+
+export default {
+ name: "App",
+
+ components: {
+ MainPage,
+ },
+
+ data: () => ({
+ //
+ }),
+};
+</script>
diff --git a/src/assets/logo.png b/src/assets/logo.png
new file mode 100644
index 0000000..f3d2503
--- /dev/null
+++ b/src/assets/logo.png
Binary files differ
diff --git a/src/assets/logo.svg b/src/assets/logo.svg
new file mode 100644
index 0000000..145b6d1
--- /dev/null
+++ b/src/assets/logo.svg
@@ -0,0 +1 @@
+<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 87.5 100"><defs><style>.cls-1{fill:#1697f6;}.cls-2{fill:#7bc6ff;}.cls-3{fill:#1867c0;}.cls-4{fill:#aeddff;}</style></defs><title>Artboard 46</title><polyline class="cls-1" points="43.75 0 23.31 0 43.75 48.32"/><polygon class="cls-2" points="43.75 62.5 43.75 100 0 14.58 22.92 14.58 43.75 62.5"/><polyline class="cls-3" points="43.75 0 64.19 0 43.75 48.32"/><polygon class="cls-4" points="64.58 14.58 87.5 14.58 43.75 100 43.75 62.5 64.58 14.58"/></svg>
diff --git a/src/components/MainPage.vue b/src/components/MainPage.vue
new file mode 100644
index 0000000..4694510
--- /dev/null
+++ b/src/components/MainPage.vue
@@ -0,0 +1,131 @@
+<template>
+ <v-container>
+ <v-row class="text-center">
+ <v-col cols="12">
+ <v-img
+ :src="require('../assets/logo.svg')"
+ class="my-3"
+ contain
+ height="200"
+ />
+ </v-col>
+
+ <v-col class="mb-4">
+ <h1 class="display-2 font-weight-bold mb-3">
+ Welcome to the Vuetify 3 Beta
+ </h1>
+
+ <p class="subheading font-weight-regular">
+ For help and collaboration with other Vuetify developers,
+ <br />please join our online
+ <a href="https://community.vuetifyjs.com" target="_blank"
+ >Discord Community</a
+ >
+ </p>
+ </v-col>
+
+ <v-col class="mb-5" cols="12">
+ <h2 class="headline font-weight-bold mb-5">What's next?</h2>
+
+ <v-row justify="center">
+ <v-btn
+ v-for="(next, i) in whatsNext"
+ :key="i"
+ :href="next.href"
+ class="subheading mx-3"
+ target="_blank"
+ >
+ {{ next.text }}
+ </v-btn>
+ </v-row>
+ </v-col>
+
+ <v-col class="mb-5" cols="12">
+ <h2 class="headline font-weight-bold mb-5">Important Links</h2>
+
+ <v-row justify="center">
+ <a
+ v-for="(link, i) in importantLinks"
+ :key="i"
+ :href="link.href"
+ class="subheading mx-3"
+ target="_blank"
+ >
+ {{ link.text }}
+ </a>
+ </v-row>
+ </v-col>
+
+ <v-col class="mb-5" cols="12">
+ <h2 class="headline font-weight-bold mb-5">Ecosystem</h2>
+
+ <v-row justify="center">
+ <a
+ v-for="(eco, i) in ecosystem"
+ :key="i"
+ :href="eco.href"
+ class="subheading mx-3"
+ target="_blank"
+ >
+ {{ eco.text }}
+ </a>
+ </v-row>
+ </v-col>
+ </v-row>
+ </v-container>
+</template>
+
+<script>
+export default {
+ name: "MainPage",
+
+ data: () => ({
+ ecosystem: [
+ {
+ text: "vuetify-loader",
+ href: "https://github.com/vuetifyjs/vuetify-loader",
+ },
+ {
+ text: "github",
+ href: "https://github.com/vuetifyjs/vuetify",
+ },
+ {
+ text: "awesome-vuetify",
+ href: "https://github.com/vuetifyjs/awesome-vuetify",
+ },
+ ],
+ importantLinks: [
+ {
+ text: "Chat",
+ href: "https://community.vuetifyjs.com",
+ },
+ {
+ text: "Made with Vuetify",
+ href: "https://madewithvuejs.com/vuetify",
+ },
+ {
+ text: "Twitter",
+ href: "https://twitter.com/vuetifyjs",
+ },
+ {
+ text: "Articles",
+ href: "https://medium.com/vuetify",
+ },
+ ],
+ whatsNext: [
+ {
+ text: "Explore components",
+ href: "https://vuetifyjs.com",
+ },
+ {
+ text: "Roadmap",
+ href: "https://vuetifyjs.com/introduction/roadmap/",
+ },
+ {
+ text: "Frequently Asked Questions",
+ href: "https://vuetifyjs.com/getting-started/frequently-asked-questions",
+ },
+ ],
+ }),
+};
+</script>
diff --git a/src/main.js b/src/main.js
new file mode 100644
index 0000000..04189aa
--- /dev/null
+++ b/src/main.js
@@ -0,0 +1,10 @@
+import { createApp } from "vue";
+import App from "./App.vue";
+import vuetify from "./plugins/vuetify";
+import { loadFonts } from "./plugins/webfontloader";
+
+loadFonts();
+
+const app = createApp(App);
+
+app.use(vuetify).mount("#app");
diff --git a/src/plugins/vuetify.js b/src/plugins/vuetify.js
new file mode 100644
index 0000000..2cb3bef
--- /dev/null
+++ b/src/plugins/vuetify.js
@@ -0,0 +1,11 @@
+// Styles
+import "@mdi/font/css/materialdesignicons.css";
+import "vuetify/styles";
+import * as components from "vuetify/components";
+import * as directives from "vuetify/directives";
+
+// Vuetify
+import { createVuetify } from "vuetify";
+
+export default createVuetify({ components, directives });
+// https://vuetifyjs.com/en/introduction/why-vuetify/#feature-guides
diff --git a/src/plugins/webfontloader.js b/src/plugins/webfontloader.js
new file mode 100644
index 0000000..e86aa7d
--- /dev/null
+++ b/src/plugins/webfontloader.js
@@ -0,0 +1,17 @@
+/**
+ * plugins/webfontloader.js
+ *
+ * webfontloader documentation: https://github.com/typekit/webfontloader
+ */
+
+export async function loadFonts() {
+ const webFontLoader = await import(
+ /* webpackChunkName: "webfontloader" */ "webfontloader"
+ );
+
+ webFontLoader.load({
+ google: {
+ families: ["Roboto:100,300,400,500,700,900&display=swap"],
+ },
+ });
+}