├── .editorconfig ├── .eslintrc.js ├── .gitignore ├── .npmrc ├── README.md ├── assets ├── README.md └── meetings_and_workshops.png ├── components ├── Features.vue ├── Hero.vue ├── LandingFooter.vue ├── Logo.vue ├── MobileNav.vue ├── NavButton.vue ├── NavContent.vue ├── Navbar.vue ├── README.md └── Remote.vue ├── jsconfig.json ├── layouts ├── README.md └── default.vue ├── nuxt.config.js ├── package.json ├── pages ├── README.md └── index.vue ├── plugins └── README.md ├── static ├── README.md ├── banner-desktop.png ├── favicon.ico └── favicon.png ├── utils └── icons.js └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | browser: true, 5 | node: true 6 | }, 7 | parserOptions: { 8 | parser: 'babel-eslint' 9 | }, 10 | extends: [ 11 | '@nuxtjs', 12 | 'plugin:nuxt/recommended' 13 | ], 14 | plugins: [ 15 | ], 16 | // add your custom rules here 17 | rules: {} 18 | } 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | ### Node template 3 | # Logs 4 | /logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | *.pid.lock 15 | 16 | # Directory for instrumented libs generated by jscoverage/JSCover 17 | lib-cov 18 | 19 | # Coverage directory used by tools like istanbul 20 | coverage 21 | 22 | # nyc test coverage 23 | .nyc_output 24 | 25 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | .grunt 27 | 28 | # Bower dependency directory (https://bower.io/) 29 | bower_components 30 | 31 | # node-waf configuration 32 | .lock-wscript 33 | 34 | # Compiled binary addons (https://nodejs.org/api/addons.html) 35 | build/Release 36 | 37 | # Dependency directories 38 | node_modules/ 39 | jspm_packages/ 40 | 41 | # TypeScript v1 declaration files 42 | typings/ 43 | 44 | # Optional npm cache directory 45 | .npm 46 | 47 | # Optional eslint cache 48 | .eslintcache 49 | 50 | # Optional REPL history 51 | .node_repl_history 52 | 53 | # Output of 'npm pack' 54 | *.tgz 55 | 56 | # Yarn Integrity file 57 | .yarn-integrity 58 | 59 | # dotenv environment variables file 60 | .env 61 | 62 | # parcel-bundler cache (https://parceljs.org/) 63 | .cache 64 | 65 | # next.js build output 66 | .next 67 | 68 | # nuxt.js build output 69 | .nuxt 70 | 71 | # Nuxt generate 72 | dist 73 | 74 | # vuepress build output 75 | .vuepress/dist 76 | 77 | # Serverless directories 78 | .serverless 79 | 80 | # IDE / Editor 81 | .idea 82 | 83 | # Service worker 84 | sw.* 85 | 86 | # macOS 87 | .DS_Store 88 | 89 | # Vim swap files 90 | *.swp 91 | 92 | .vercel -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | @fortawesome:registry=https://npm.fontawesome.com/ 2 | //npm.fontawesome.com/:_authToken=${FA_TOKEN} 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # miro-landing 2 | 3 | ## Build Setup 4 | 5 | ```bash 6 | # install dependencies 7 | $ yarn install 8 | 9 | # serve with hot reload at localhost:3000 10 | $ yarn dev 11 | 12 | # build for production and launch server 13 | $ yarn build 14 | $ yarn start 15 | 16 | # generate static project 17 | $ yarn generate 18 | ``` 19 | 20 | For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). 21 | -------------------------------------------------------------------------------- /assets/README.md: -------------------------------------------------------------------------------- 1 | # ASSETS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your un-compiled assets such as LESS, SASS, or JavaScript. 6 | 7 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/assets#webpacked). 8 | -------------------------------------------------------------------------------- /assets/meetings_and_workshops.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codebender828/miro-landing-chakra/744ed1c0d509782955e1c9c3c4ff5a16621d17a6/assets/meetings_and_workshops.png -------------------------------------------------------------------------------- /components/Features.vue: -------------------------------------------------------------------------------- 1 | 71 | -------------------------------------------------------------------------------- /components/Hero.vue: -------------------------------------------------------------------------------- 1 | 33 | -------------------------------------------------------------------------------- /components/LandingFooter.vue: -------------------------------------------------------------------------------- 1 | 13 | -------------------------------------------------------------------------------- /components/Logo.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /components/MobileNav.vue: -------------------------------------------------------------------------------- 1 | 27 | 28 | 43 | -------------------------------------------------------------------------------- /components/NavButton.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /components/NavContent.vue: -------------------------------------------------------------------------------- 1 | 140 | 141 | 146 | -------------------------------------------------------------------------------- /components/Navbar.vue: -------------------------------------------------------------------------------- 1 | 36 | 37 | 42 | -------------------------------------------------------------------------------- /components/README.md: -------------------------------------------------------------------------------- 1 | # COMPONENTS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | The components directory contains your Vue.js Components. 6 | 7 | _Nuxt.js doesn't supercharge these components._ 8 | -------------------------------------------------------------------------------- /components/Remote.vue: -------------------------------------------------------------------------------- 1 | 92 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "paths": { 5 | "~/*": ["./*"], 6 | "@/*": ["./*"], 7 | "~~/*": ["./*"], 8 | "@@/*": ["./*"] 9 | } 10 | }, 11 | "exclude": ["node_modules", ".nuxt", "dist"] 12 | } 13 | -------------------------------------------------------------------------------- /layouts/README.md: -------------------------------------------------------------------------------- 1 | # LAYOUTS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your Application Layouts. 6 | 7 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/views#layouts). 8 | -------------------------------------------------------------------------------- /layouts/default.vue: -------------------------------------------------------------------------------- 1 | 12 | -------------------------------------------------------------------------------- /nuxt.config.js: -------------------------------------------------------------------------------- 1 | import { ChakraLoaderPlugin } from 'chakra-loader' 2 | import * as iconSet from './utils/icons' 3 | 4 | export default { 5 | /* 6 | ** Nuxt rendering mode 7 | ** See https://nuxtjs.org/api/configuration-mode 8 | */ 9 | mode: 'universal', 10 | /* 11 | ** Nuxt target 12 | ** See https://nuxtjs.org/api/configuration-target 13 | */ 14 | target: 'static', 15 | /* 16 | ** Headers of the page 17 | ** See https://nuxtjs.org/api/configuration-head 18 | */ 19 | head: { 20 | title: 'Miro | Free Online Collaborative Whiteboard Platform', 21 | meta: [ 22 | { charset: 'utf-8' }, 23 | { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 24 | { hid: 'description', name: 'description', content: process.env.npm_package_description || '' } 25 | ], 26 | link: [ 27 | { rel: 'icon', type: 'image/x-icon', href: '/favicon.png' }, 28 | { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css2?family=Sora:wght@300;400;700&display=swap' } 29 | ] 30 | }, 31 | /* 32 | ** Global CSS 33 | */ 34 | css: [ 35 | ], 36 | /* 37 | ** Plugins to load before mounting the App 38 | ** https://nuxtjs.org/guide/plugins 39 | */ 40 | plugins: [ 41 | ], 42 | /* 43 | ** Auto import components 44 | ** See https://nuxtjs.org/api/configuration-components 45 | */ 46 | components: true, 47 | /* 48 | ** Nuxt.js dev-modules 49 | */ 50 | buildModules: [ 51 | // Doc: https://github.com/nuxt-community/eslint-module 52 | '@nuxtjs/eslint-module' 53 | ], 54 | /* 55 | ** Nuxt.js modules 56 | */ 57 | modules: [ 58 | // Doc: https://github.com/chakra-ui/chakra-ui-vue/tree/develop/packages/nuxt-chakra 59 | // Doc: https://github.com/nuxt-community/emotion-module#readme 60 | '@chakra-ui/nuxt', 61 | '@nuxtjs/emotion' 62 | ], 63 | chakra: { 64 | icons: { 65 | iconPack: 'fa', 66 | iconSet 67 | }, 68 | extendTheme: { 69 | shadows: { 70 | outline: '0 0 0 3px rgb(38 48 192 / 44%)' 71 | }, 72 | fonts: { 73 | heading: 'Sora, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"', 74 | body: 'Sora, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"' 75 | }, 76 | colors: { 77 | miro: { 78 | 50: '#e8ebff', 79 | 100: '#bdc6f7', 80 | 200: '#94a0ec', 81 | 300: '#697ae3', 82 | 400: '#3f53d9', 83 | 500: '#263ac0', 84 | 600: '#1c2d96', 85 | 700: '#12206c', 86 | 800: '#091344', 87 | 900: '#02051c' 88 | }, 89 | yellow: { 90 | 50: '#fff9da', 91 | 100: '#ffeead', 92 | 200: '#ffe27d', 93 | 300: '#ffd74b', 94 | 400: '#ffcb1a', 95 | 500: '#e6b200', 96 | 600: '#b38a00', 97 | 700: '#806300', 98 | 800: '#4e3b00', 99 | 900: '#1d1400' 100 | } 101 | } 102 | } 103 | }, 104 | /* 105 | ** Build configuration 106 | ** See https://nuxtjs.org/api/configuration-build/ 107 | */ 108 | build: { 109 | extend (config) { 110 | config.plugins.push( 111 | new ChakraLoaderPlugin() 112 | ) 113 | } 114 | } 115 | } 116 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "miro-landing", 3 | "version": "1.0.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "nuxt", 7 | "build": "nuxt build", 8 | "start": "nuxt start", 9 | "generate": "nuxt generate", 10 | "lint:js": "eslint --ext .js,.vue --ignore-path .gitignore .", 11 | "lint": "yarn lint:js" 12 | }, 13 | "lint-staged": { 14 | "*.{js,vue}": "eslint" 15 | }, 16 | "husky": { 17 | "hooks": { 18 | "pre-commit": "lint-staged" 19 | } 20 | }, 21 | "dependencies": { 22 | "@chakra-ui/nuxt": "^0.0.10", 23 | "@fortawesome/free-solid-svg-icons": "^5.14.0", 24 | "@nuxtjs/emotion": "^0.0.1", 25 | "nuxt": "^2.14.0" 26 | }, 27 | "devDependencies": { 28 | "@nuxtjs/eslint-config": "^3.1.0", 29 | "@nuxtjs/eslint-module": "^2.0.0", 30 | "babel-eslint": "^10.1.0", 31 | "chakra-loader": "^1.0.3", 32 | "eslint": "^7.5.0", 33 | "eslint-plugin-nuxt": "^1.0.0", 34 | "husky": "^4.2.5", 35 | "lint-staged": "^10.2.11" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /pages/README.md: -------------------------------------------------------------------------------- 1 | # PAGES 2 | 3 | This directory contains your Application Views and Routes. 4 | The framework reads all the `*.vue` files inside this directory and creates the router of your application. 5 | 6 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/routing). 7 | -------------------------------------------------------------------------------- /pages/index.vue: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /plugins/README.md: -------------------------------------------------------------------------------- 1 | # PLUGINS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains Javascript plugins that you want to run before mounting the root Vue.js application. 6 | 7 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/plugins). 8 | -------------------------------------------------------------------------------- /static/README.md: -------------------------------------------------------------------------------- 1 | # STATIC 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your static files. 6 | Each file inside this directory is mapped to `/`. 7 | Thus you'd want to delete this README.md before deploying to production. 8 | 9 | Example: `/static/robots.txt` is mapped as `/robots.txt`. 10 | 11 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/assets#static). 12 | -------------------------------------------------------------------------------- /static/banner-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codebender828/miro-landing-chakra/744ed1c0d509782955e1c9c3c4ff5a16621d17a6/static/banner-desktop.png -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codebender828/miro-landing-chakra/744ed1c0d509782955e1c9c3c4ff5a16621d17a6/static/favicon.ico -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codebender828/miro-landing-chakra/744ed1c0d509782955e1c9c3c4ff5a16621d17a6/static/favicon.png -------------------------------------------------------------------------------- /utils/icons.js: -------------------------------------------------------------------------------- 1 | export { faUserSecret, faPlayCircle, faHourglass, faHandsHelping, faScroll, faBars } from '@fortawesome/free-solid-svg-icons' 2 | --------------------------------------------------------------------------------