Vue3 SSR prod-ready multi-languages template

Overview

vue3-ssr-template

vue 3 prod ready license

About

This template is a prod ready starter for your Vue SSR application where you can do what you want at any level, client or server side. It follows the official Vue SSR Guide and uses officials Vue dependencies needed for a large scale-up project regarding SEO, Internationalization.

Technologies

Vue eco-system Basics Tooling
vue 3 typescript husky
vue-router storybook webpack 5
vue-i18n koa vite
pinia swc stylelint
head sass eslint

Documentation

https://xmimiex.github.io/vue3-ssr-template/

Special thanks 💚

jcfauchet mrzdevcore

Comments
  • fix deploy github pages

    fix deploy github pages

    Depuis mon refacto avec vuepress@next.

    • le workflow github build bien la doc et la dépose correctement sur la branche gh-pages : https://github.com/xmimiex/vue3-ssr-template/actions/runs/1690231665 (contenu de la branche : https://github.com/xmimiex/vue3-ssr-template/tree/gh-pages)
    • par contre le workflow qui écoute les push sur cette branche pour mettre à jour le site est en échec : https://github.com/xmimiex/vue3-ssr-template/actions/runs/1690233352

    Config Pages image

    bug documentation 
    opened by xmimiex 2
  • Add lang switcher

    Add lang switcher

    • Get available COUNTRY / LANGUAGE from the store
    • Should depend of current URL (/FR/fr/about => /UK/en/about)
    • Should not be router-link or client redirection as Country / Language are handled from the server side
    enhancement 
    opened by jcfauchet 2
  • Failed to import tailwindcss

    Failed to import tailwindcss

    Failed to import Tailwindcss got an error: import '@app/assets/css/tailwind.css' @tailwind base; @tailwind components; @tailwind utilities;

    RangeError: Maximum call stack size exceeded at collectCssUrls (/Users/user/vue3-ssr-template/src/server/controllers/render-app-dev-server.ts:18:28) at collectCssUrls (/Users/user/Vue3/vue3-ssr-template/src/server/controllers/render-app-dev-server.ts:26:11) at collectCssUrls (/Users/user/Vue3/vue3-ssr-template/src/server/controllers/render-app-dev-server.ts:26:11) at collectCssUrls (/Users/user/Vue3/vue3-ssr-template/src/server/controllers/render-app-dev-server.ts:26:11) at collectCssUrls (/Users/user/Vue3/vue3-ssr-template/src/server/controllers/render-app-dev-server.ts:26:11) at collectCssUrls (/Users/user/Vue3/vue3-ssr-template/src/server/controllers/render-app-dev-server.ts:26:11)

    opened by sikeat7 1
  • fix(dev-server): move global style in app.vue

    fix(dev-server): move global style in app.vue

    Vite n'interprète pas les scss qui sont importés dans le app.ts, du coup je l'ai déplacé dans le App.vue...

    J'ai également vue que les styles qu'on force côté server en dev-server se retrouvent en doublon avec les styles qui sont chargés normalement côté client. On verra dans un second temps, il faut qu'on suive les évolutions de vite.

    opened by jcfauchet 1
  • feat: add node cluster

    feat: add node cluster

    Ajout de node cluster pour le server Peut-être activer/desactiver à partir de la config

    context:
      environment: production
      port: 8080
      cluster: true | false
    
    opened by mrzdevcore 0
  • feat(ds): add some tokens/mixins/functions for a design system

    feat(ds): add some tokens/mixins/functions for a design system

    • premier jet du DS pour nos pages
    • premier temps dans le projet
    • second temps à externaliser dans autre projet et builder/deploy dans repository github pour récupérer dans ce projet ?

    RAF : afficher dans storybook

    opened by xmimiex 0
  • feat(template): pages templating category and product

    feat(template): pages templating category and product

    Un exemple d'UI sur la page Category & Product. Il n'y a pas de tests et j'ai pas touché à la Home. Dites moi déjà si le format des pages vous plaît ainsi que la manière dont c'est coder. Si ça vous va j'ajouterai les tests et les stories dans une deuxième MR.

    Les changements au niv de l'archi du projet: J'ai mis les types/enums et interfaces sous le folder contracts. J'ai également mis les routes dans les folders pages rattachés.

    Autrement 2 erreurs que j'ai pu relever:

    • duplicata style. je pense que le server puis le client doivent chacun les charger, d'où une duplication.
    • j'ai pas accès aux function/mixin sass, mais aux tokens/variables oui. J'ai garder les valeurs en px en attendant de pvr utiliser rem-calc. Pareil pour le responsive.
    opened by MewenLr 0
  • Is `transpileOnly` is a must in node env

    Is `transpileOnly` is a must in node env

    Dear friend, this template is awesome and helps me a lot. Currently, I meet a problem of my own and I can also reproduce it in your template code. I wish I could also get some help.

    In the file build/webpack.common.js,config.module.rules[2] is ts-loader, and you use transpileOnly: true,

    {
            test: /\.ts$/,
            exclude: /node_modules/,
            use: [
              {
                loader: 'swc-loader',
              },
              {
                loader: 'ts-loader',
                options: {
                  transpileOnly: true,
                  appendTsSuffixTo: [/\.vue$/],
                },
              },
            ],
          },
    

    To my understanding, transpileOnly: true is just used to speed up compile, which has no other side effect. However, if i miss it, I would get an error when run yarn build

    vue3-ssr-template/src/app/App.vue.ts(7,29)
          TS2345: Argument of type 'string | ConcreteComponent<{}, any, any, ComputedOptions, MethodOptions>' is not assignable to parameter of type 'Component<any, any, any, ComputedOptions, MethodOptions>'.
      Type 'string' is not assignable to type 'Component<any, any, any, ComputedOptions, MethodOptions>'.
    

    So I wonder, is this transpileOnly is a must in node env?

    Many thanks

    opened by loveinbox 4
  • Proposer des gabarits de page

    Proposer des gabarits de page

    L'idée serait de proposer quelques gabarits de pages différents pour couvrir un ensemble de pages existantes sur le web, exemple : une page "fiche produit", une page "article de blog", une page "liste articles", etc. permettant de naviguer et d'afficher les spécificités par pays/langue. La donnée proviendrait de stubs dans un premier temps.

    enhancement help wanted 
    opened by xmimiex 3
基于vue3.0-ts-Element集成的简洁/实用后台模板!《带预览地址》vue-admin;vue+admin;vue-element;vue+element;vue后台管理;vue3.0-admin;vue3.0-element。

一、基于vue3.0+ts+Element通用后台admin模板 二、在线预览地址:http://admin.yknba.cn/ 三、下载使用: 1、克隆代码 通过git将代码克隆到本地;或者使用下载安装包模式进行下载。 2、进入目录 进入项目的根目录:vue3.0-ts-admin 3、安装依

null 64 Dec 16, 2022
Vite Svelte plugin to remove console logs in prod.

vite-plugin-svelte-console-remover A Vite plugin that removes all console statements (log, group, dir, error, etc) from Svelte, JS, and TS files durin

Josh Hubbard 29 Oct 13, 2022
⏳ vue3 + electron + ts + vite = mini template

v3-electron ?? Electron16 + Vue3 + Vite2 运行项目 # enter the project directory cd v3-electron # install dependency yarn # develop yarn dev # build exe

UNPany 8 Nov 11, 2022
vue3 + vite + typescript template

Vue 3 + Typescript + Vite This template should help get you started developing with Vue 3 and Typescript in Vite. The template uses Vue 3 <script setu

BrowLi 6 Aug 1, 2022
Veloce: Starter template that uses Vue 3, Vite, TypeScript, SSR, Pinia, Vue Router, Express and Docker

Veloce Lightning-fast cold server start Instant hot module replacement (HMR) and dev SSR True on-demand compilation Tech Stack Vue 3: UI Rendering lib

Alan Morel 10 Oct 7, 2022
🎉🎉使用Vite + Vue3 + TypeScript + Element-plus + Mock开发的后台管理系统🎉🎉

Vite-Vue-Admin 介绍 Cli 配置 vue3.X vuex@4 vue-router@4 vite@2 typescript mock 内置 element-plus 二开封装 upload-file (文件上传,支持指定文件格式,文件大小) powerful-table (多功能表格

PengXiaoShuai 103 Dec 17, 2022
A simple, customization star rating component for your vue3 projects

vue3-star-ratings A simple, customizable component for star ratings Documentation Features Uses svg for the stars, so it can scale without quality los

Abiodun Olunu 14 Oct 7, 2022
使用 vue3 来实现俄罗斯方块

Tetris-vue3 使用 vue3 实现俄罗斯方块 单机版本实现 联机版本实现 实现原理 采用了 Functional Core, Imperative Shell 模式来实现 提高了可测试性 业务核心逻辑和视图逻辑拆分 可以移植到任意 UI 库 todo 游戏重来 收获 应用程序从 0 到 1

阿崔cxr 29 Mar 25, 2022
vite2.7 + vue3.2 + ts + eslint + prettier

vite-vue-template 一个vue3项目模板 主要依赖 vite 2.7.2 vue 3.2.25 typescript eslint prettier 准备 Windows系统下将编辑器 行尾(eol) 设置为 LF('\n') vscode配置: { "files.eol":

shaaaaaaaa 5 Sep 13, 2022
A text replacer component for vue3.

A text replacer component for Vue 3. Requires Vue 3 as peer-dependency. Installation Install it from npm. npm install vue3-replacer pnpm add vue3-rep

Kadir Yazıcı 4 Feb 19, 2022
vite+vue3.2+setup+elementPlus+eslint+js+stylelint

前期准备工作,npm包和vscode配置 !!!很重要,关乎整个Vue3开发阶段的代码提示 Volar使用 使用Vue3开发需要禁用vscode插件Vetur 然后安装 Volar(Vue Language Features),这样Vue3代码提示即使是使用js开发也非常友好 如果volar没有任何

null 2 Feb 8, 2022
A API documentation generator for Vue3 single file component.

doc-vue A API documentation generator for Vue3 single file component. Table of Contents Installation Write API Description Command Line Usage Programm

annnhan 36 Oct 20, 2022
Manage HTML metadata in Vue.js components with SSR support

✌️ ?? Check the next branch for Vue3 support Manage HTML metadata in Vue.js components with SSR support <template> ... </template> <script> expor

Nuxt 4k Jan 1, 2023
Vue-cursor-fx - 🖱 An animated custom cursor effects for interactive elements like navigation - w/ VueJS - SSR Compatible

?? Vue Cursor Fx An animated custom cursor effects for interactive elements like navigation - w/ VueJS - SSR Compatible Installation This package is a

Luca Iaconelli 56 Aug 18, 2022
A tiny, SSR-safe directive for binding random data to an element.

1️⃣ vue-bind-once A tiny, SSR-safe directive for binding random data to an element. A tiny, SSR-safe directive for binding random data to an element.

Daniel Roe 113 Jan 8, 2023
Matteo Bruni 4.7k Jan 4, 2023
This repo contains a fully configured nuxt 3 instance supporting TypeScript and several considered as useful libraries, fully configured and ready to use in real world projects!

Nuxt 3 Starter This repo contains a fully configured nuxt 3 instance supporting TypeScript and several considered as useful libraries, fully configure

Ali Soueidan 26 Dec 27, 2022
Production-ready fullstack Nuxt 3 starter with a well-working, opinionated configuration

sidebase sidebase is a modern, best-practice, batteries-included fullstack-app starter based on Nuxt 3 and TypeScript. With this nuxt 3 starter you ge

sidestream 392 Jan 1, 2023
Admin UI Template is a modern, responsive, and customizable admin UI template for your business.

Admin UI Template is a modern, responsive, and customizable admin UI template for your business. It contains reusable components, theme color, and design support along with dark theme support.

Open Template Hub 7 Dec 18, 2022