├── _config.yml
├── public
├── favicon.ico
└── index.html
├── babel.config.js
├── src
├── assets
│ ├── logo.png
│ └── particles.json
├── App.vue
├── components
│ ├── Home.vue
│ ├── HelloWorld.vue
│ ├── Login.vue
│ └── Register.vue
└── main.js
├── __screenshots
├── login.png
└── register.png
├── renovate.json
├── vue.config.js
├── .gitignore
├── package.json
└── README.md
/_config.yml:
--------------------------------------------------------------------------------
1 | theme: jekyll-theme-cayman
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tsparticles/vue3-auth-template/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/cli-plugin-babel/preset'
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tsparticles/vue3-auth-template/HEAD/src/assets/logo.png
--------------------------------------------------------------------------------
/__screenshots/login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tsparticles/vue3-auth-template/HEAD/__screenshots/login.png
--------------------------------------------------------------------------------
/__screenshots/register.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tsparticles/vue3-auth-template/HEAD/__screenshots/register.png
--------------------------------------------------------------------------------
/renovate.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3 | "extends": [
4 | "config:base"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/vue.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | publicPath: process.env.NODE_ENV === 'production'
3 | ? '/vue3-auth-template/'
4 | : '/'
5 | }
6 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 |
6 | # local env files
7 | .env.local
8 | .env.*.local
9 |
10 | # Log files
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 | pnpm-debug.log*
15 |
16 | # Editor directories and files
17 | .idea
18 | .vscode
19 | *.suo
20 | *.ntvs*
21 | *.njsproj
22 | *.sln
23 | *.sw?
24 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
23 |
--------------------------------------------------------------------------------
/src/components/Home.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |

4 |
5 |
6 |
Go to Login view
7 |
Go to Register view
8 |
9 |
10 |
11 |
21 |
22 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue'
2 | import { createRouter, createWebHashHistory } from 'vue-router';
3 | import App from './App.vue'
4 | import Home from './components/Home';
5 | import Login from './components/Login';
6 | import Register from './components/Register';
7 | import Particles from 'particles.vue3';
8 |
9 | const routes = [
10 | { path: '/', component: Home },
11 | { path: '/login', component: Login },
12 | { path: '/register', component: Register }
13 | ]
14 |
15 | const router = createRouter({
16 | history: createWebHashHistory(),
17 | routes,
18 | });
19 |
20 | createApp(App).use(Particles).use(router).mount('#app');
21 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | <%= htmlWebpackPlugin.options.title %>
10 |
11 |
12 |
13 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vue3-auth-template",
3 | "version": "1.0.0",
4 | "private": true,
5 | "scripts": {
6 | "serve": "vue-cli-service serve",
7 | "build": "vue-cli-service build",
8 | "lint": "vue-cli-service lint",
9 | "predeploy": "yarn build",
10 | "deploy": "gh-pages -d dist"
11 | },
12 | "dependencies": {
13 | "core-js": "^3.8.0",
14 | "particles.vue3": "^2.0.0",
15 | "vue": "^3.0.3",
16 | "vue-router": "^4.0.0-rc.6"
17 | },
18 | "devDependencies": {
19 | "@vue/cli-plugin-babel": "^5.0.0",
20 | "@vue/cli-plugin-eslint": "^5.0.0",
21 | "@vue/cli-service": "^5.0.0",
22 | "@vue/compiler-sfc": "^3.0.3",
23 | "@babel/eslint-parser": "^7.11.0",
24 | "eslint": "^7.14.0",
25 | "eslint-plugin-vue": "^7.1.0",
26 | "gh-pages": "^6.0.0"
27 | },
28 | "eslintConfig": {
29 | "root": true,
30 | "env": {
31 | "node": true
32 | },
33 | "extends": [
34 | "plugin:vue/vue3-essential",
35 | "eslint:recommended"
36 | ],
37 | "parserOptions": {
38 | "parser": "babel-eslint"
39 | },
40 | "rules": {}
41 | },
42 | "browserslist": [
43 | "> 1%",
44 | "last 2 versions",
45 | "not dead"
46 | ]
47 | }
48 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # tsParticles VueJS Authentication Template
2 |
3 | tsParticles Simple Auth HTML Template for VueJS Web Sites/Applications
4 |
5 | ## Login Page Preview
6 | [](https://tsparticles.github.io/vue3-auth-template/#/login)
7 |
8 | See working preview [here](https://tsparticles.github.io/vue3-auth-template/#/login)
9 |
10 | ## Register Page Preview
11 | [](https://tsparticles.github.io/vue3-auth-template/#/register)
12 |
13 | See working preview [here](https://tsparticles.github.io/vue3-auth-template/#/register)
14 |
15 | ## What is tsParticles
16 |
17 | [tsParticles](https://github.com/matteobruni/tsparticles) is a lightweight library for easily creating particles animations in your websites or web applications.
18 |
19 | The [tsParticles](https://github.com/matteobruni/tsparticles) library is ready to be used in standard JavaScript, React, Vue.js, Angular, Svelte, jQuery, Preact, Inferno.
20 |
21 | ### VueJS tsParticles
22 |
23 | The VueJS official [tsParticles](https://github.com/matteobruni/tsparticles) library is `particles.vue`.
24 |
25 | You read more about `particles.vue` [here](https://github.com/matteobruni/tsparticles/blob/master/components/vue/README.md)
26 |
27 | ---
28 |
29 | Want to see more particles demos? [Checkout this collection](https://codepen.io/collection/DPOage)
30 |
31 | Want to see more templates or want to share yours? [Checkout this README](https://github.com/tsparticles/templates)
32 |
--------------------------------------------------------------------------------
/src/assets/particles.json:
--------------------------------------------------------------------------------
1 | {
2 | "fpsLimit": 60,
3 | "background": {
4 | "color": "#fff"
5 | },
6 | "fullScreen": {
7 | "enable": true
8 | },
9 | "particles": {
10 | "number": {
11 | "value": 50
12 | },
13 | "color": {
14 | "value": [
15 | "#3998D0",
16 | "#2EB6AF",
17 | "#A9BD33",
18 | "#FEC73B",
19 | "#F89930",
20 | "#F45623",
21 | "#D62E32",
22 | "#EB586E",
23 | "#9952CF"
24 | ]
25 | },
26 | "shape": {
27 | "type": "circle"
28 | },
29 | "opacity": {
30 | "value": 0.5
31 | },
32 | "size": {
33 | "value": 400,
34 | "random": {
35 | "enable": true,
36 | "minimumValue": 200
37 | }
38 | },
39 | "move": {
40 | "enable": true,
41 | "speed": 10,
42 | "direction": "top",
43 | "outMode": "destroy"
44 | }
45 | },
46 | "interactivity": {
47 | "detectsOn": "canvas",
48 | "events": {
49 | "resize": true
50 | }
51 | },
52 | "detectRetina": true,
53 | "emitters": {
54 | "direction": "top",
55 | "position": {
56 | "x": 50,
57 | "y": 120
58 | },
59 | "rate": {
60 | "delay": 0.2,
61 | "quantity": 2
62 | },
63 | "size": {
64 | "width": 100,
65 | "height": 0
66 | }
67 | }
68 | }
--------------------------------------------------------------------------------
/src/components/HelloWorld.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
{{ msg }}
4 |
5 | For a guide and recipes on how to configure / customize this project,
6 | check out the
7 | vue-cli documentation.
10 |
11 |
Installed CLI Plugins
12 |
30 |
Essential Links
31 |
54 |
Ecosystem
55 |
86 |
87 |
88 |
89 |
97 |
98 |
99 |
115 |
--------------------------------------------------------------------------------
/src/components/Login.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Login
7 |
35 |
36 |
37 |
38 |
39 |
40 |
52 |
53 |
--------------------------------------------------------------------------------
/src/components/Register.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Register
7 |
43 |
44 |
45 |
46 |
47 |
48 |
60 |
61 |
--------------------------------------------------------------------------------