# Serverless Vue.js App mit Vercel

Vercel ist eine cloud Plattform für statische Webseiten und serverless-functions. Dabei ist das deployment sehr einfach und die Plattform skaliert eigenständig.

Und das alles kostenlos (für Solopreneure).

Voraussetzung für unser Vorhaben ist ein installiertes Node.js (https://nodejs.org (opens new window)) und GitHub Account (https://github.com (opens new window)) für die kostenlose Anmeldung bei Vercel. Außerdem benötigen wir die globalen Module Parcel und Vercel:

npm i -g parcel-bundler
npm i -g vercel

Danach erstellst du ein Verzeichnis für deine Vue.js Projekt und öffnest dieses mit der Konsole. Mit folgenden Befehlen installierst du die benötigten Module:

npm init -y
npm i vue

Die package.json sollte so ähnlich aussehen:

{
  "name": "hello",
  "version": "1.0.0",
  "dependencies": {
    "vue": "^2.6.11"
  }
}

Danach erstellst du die Dateien index.html, main.js und App.vue und füllst diese mit folgendem Code:

index.html

<!--index.html-->
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, height=device-height, viewport-fit=cover"/>
  <title>App</title>
</head>
<body>
  <div id="app"></div>
  <script src="main.js"></script>
</body>
<style>
</style>
</html>

main.js

//main.js
import Vue from "vue";
import App from "./App.vue";

Vue.config.productionTip = false;

new Vue({
  render: (h) => h(App)
}).$mount("#app");

App.vue

<!--App.vue-->
<template>
  <v-app>
    Hello World!
  </v-app>
</template>

<script>
export default {
  name: 'App'
}
</script>

<style>
</style>

Mit dem Befehl "parcel index.html" kannst Du das Ergebnis lokal testen (meist http://localhost:1234 (opens new window)).

Für die Produktivnahme bei vercel benötigst du folgende vercel.json Datei.

{
  "version": 2,
    "builds": [
      { "src": "./dist/**", "use": "@vercel/static" }
    ],
    "routes": [
      { "src": "/(.*)", "dest": "dist/$1" }
    ]
}

Mit dem Befehl "vercel" kannst du deine Vue.js App nun produktiv nehmen. Auf der Konsole wird dir deine URL angezeigt. In meinen Fall: https://vue-hello-gray.vercel.app (opens new window)

Last Updated: 9/6/2021, 9:06:41 PM