Sign inSign up

pierrebrisorgueil/vue

By pierrebrisorgueil

•Updated 9 months ago

Vue - Boilerplate Front : Vuetify, Vuex, Vuetify, JWT, Jest (Alpha)

Image
1

4.2K

pierrebrisorgueil/vue repository overview

CI Code Climate Dependabot badge Known Vulnerabilities Docker Pulls

⁠:globe_with_meridians: WeAreOpenSource⁠ Vue 3 - Beta

⁠:book: Presentation

This project is a Vue 3 stack that can be ran as a standalone FrontEnd. Or in a fullstack with another repo of your choice (ex: Node⁠, Swift⁠).

Quick links :

Our stack Vue is actually in Beta.

⁠:computer: Vue 3 / Vuetify 3 / Vite / Jwt

⚡ Now powered by Vite! This project has been migrated from Vue CLI to Vite for faster development and better performance.

⁠:package: Technology Overview

SubjectInformations
Available
ArchitectureLayered Architecture : everything is separated in layers, and the upper layers are abstractions of the lower ones, that's why every layer should only reference the immediate lower layer (vertical modules architecture)
SecurityJWT Stateless - have a look on Node⁠ stack for more informations
CIGithub Action⁠
LinterESLint⁠ ecmaVersion 10 (2019)
DeveloperCoveralls⁠ - Code Climate⁠ - Dependency status⁠ - Dependabot⁠ - Snyk⁠
semantic-release⁠ - commitlint⁠ - commitizen⁠ - @weareopensource/conventional-changelog⁠
Dependenciesnpm⁠
DeliverDocker & Docker-compose
Being released
TestingJest⁠ WIP
In reflexion
WIPwip

⁠:tada: Features Overview

⁠Core
  • User : classic register / auth
⁠Examples
  • Tasks : list - add - edit - delete
  • Mails Subscriptions : add

⁠:pushpin: Prerequisites

Make sure you have installed all of the following prerequisites on your development machine:

⁠:boom: Installation

Simple and straightforward:

git clone https://github.com/weareopensource/vue.git && cd Vue
npm install

Note: No need for global CLI tools - everything runs through Vite!

⁠:runner: Running Your Application

⁠Development
npm start
# or
npm run dev

Runs dev server with hot-reload at http://localhost:8080/

CORS Note: When connecting to the Node stack, ensure CORS is configured:

WAOS_NODE_cors_origin=['http://localhost:8080'] npm start
⁠Production
npm run build      # Build for production
npm run preview    # Preview production build locally
⁠Testing
npm test                  # Run tests in watch mode
npm run test:unit         # Run unit tests
npm run test:coverage     # Generate coverage report

Test Structure: Tests are organized per module in src/modules/*/tests/

⁠Code Quality
npm run lint              # Check code quality
npm run lint:fix          # Auto-fix linting issues
npm run format            # Format code with Prettier
⁠Commits & Releases
npm run commit                                    # Commit with commitizen
npm run release -- --first-release                # First release
npm run release -- --release-as 1.1.1             # Release specific version
GITHUB_TOKEN=xxx npm run release:auto             # Semantic release (CI)
⁠Configuration
npm run generateConfig                            # Generate config from environment
npm run check:migration                           # Check Vite migration status
⁠Vite Direct Commands
npm run vite:dev          # Vite dev (bypasses config generation)
npm run vite:build        # Vite build (bypasses config generation)
npm run vite:preview      # Vite preview (bypasses config generation)

⁠:whale: Docker Way

⁠docker
  • docker run --rm -p 8080:80 weareopensource/vue

if you want to build yourself : docker build -t weareopensource/vue . --build-arg WAOS_VUE_api_port=4000

⁠docker-compose (example with Node⁠ stack as api)
  • docker-compose up
⁠Configuration

The default configuration is : src/config/defaults/development.js The other configurations : src/config/defaults/*.js overwrite the default configuration, you can create your own.

We take into account all system environment variables defined under the form WAOSVUE<path_toVariable>. A pre-build npm script turns under the hood those system environment variables into an object, infering paths from the varialbles name, merged to the configuration defined on src/config/defaults to regenerate the file used src/config/index.js.

So configuration avalable on src/config/defaults/development file are overidable. You can for instance define the app name by defining those system environment variables :

WAOS_VUE_app_title='my app =)'

⁠:pencil2: Contribute⁠

⁠:scroll: History

This work is based on MEAN.js⁠ and more precisely on a fork of the developers named Riess.js⁠. The work being stopped we wished to take it back, we want to create updated stack with same mindset "simple", "easy to use". The toolbox needed to start projects, but not only with Node and Angular ...

⁠:globe_with_meridians: We Are Open Source, Who we are ?⁠

We dreams to create stacks Backs / Fronts, aligns on feats & Architecture, in multiple languages. This to allow anyone to create fullstack on demand (VueJS, Node, Swift …) and keep updates. While exploring resilient and scalable deployment, as well as growth hacking via our articles.

Feel free to help us ! :)

⁠:clipboard: Licence

Packagist

Blog Slack Discord Mail

Tag summary

Content type

Image

Digest

sha256:29cb05e62…

Size

26.1 MB

Last updated

9 months ago

docker pull pierrebrisorgueil/vue