Skip to content

moqod/frontend-nuxt-ssr-kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

frontend-nuxt-ssr-kit

  1. Копируем проект c git
  • rm -r .git -force удаляем .git файлы
  • npm install в папке src
  • npm install в папке functions
  1. Копируем .env файл из .evn.example
  2. Создать проект в firebase https://console.firebase.google.com/u/1/
  • Скопировать доступы в .env файл из firebase
  • Соранить серверные настройки в json файле (детальнее в .env файле)
  1. Создать Realtime Database (НЕ Cloud Firestore!)
  2. Пройти инструкции по настройки флеймлинк https://app.flamelink.io/dashboard
  • Realtime Database
  • Пройти три шага
  • Создать структуру контента или восстановить пример из бекапа flamelink_default_schema.json
  • Вставить расширенные правила для БД
  1. Установка firebase
  • Установить npm install -g firebase-tools
  • firebase login
  • В папке проекта firebase init hosting (choose not SPA, folder public)
  • Файл /firebase.json взять из репозитория
  1. Сбилдить проект npm run build в /src папке
  2. in root folder run commands:
  • rm -r public/*
  • rm -r functions/nuxt/
  • cp -R src/static/* public/
  • cp -R src/.nuxt/dist/client/ public/dist/
  • cp -R src/.nuxt/ functions/nuxt/
  1. (optional) Check on local environment firebase serve --only hosting,functions
  2. Deploy on firebase server firebase deploy

Пример правил Realtime Database которые открывают доступ на чтение flamelink без авторизации без раздела settings

{
  "rules": {
    "users": {
      "$user_id": {
        ".read": "$user_id === auth.uid",
        ".write": "$user_id === auth.uid"
      }
    },
    "flamelink": {
        ".read": "auth != null",
      	".write": "auth != null",
        "$module": {
          ".read": "auth != null || $module == 'environments' || $module == 'media' || $module == 'settings'",
          ".write": "auth != null",
					"$environment": {              
              "content": {
                  "$block": {
                      "$lang": {
                        ".indexOn": ["slug"]
                      }
                  }
              }               
          }
        },
        "users": {
        	".indexOn": ["id", "email"]
        }
      
    }     
  }
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published