├── uzir.png ├── .firebaserc ├── vue.config.js ├── public ├── favicon.ico └── index.html ├── src ├── assets │ ├── logo.png │ ├── uzir.png │ ├── finance-logo.png │ ├── baguette-logo.png │ ├── facebook-logo.png │ ├── firebird-logo.png │ ├── food-vision-logo.png │ ├── ss-logo-high-res.png │ ├── logo.svg │ ├── plaid-logo.svg │ └── firebird-logo.svg ├── views │ ├── About.vue │ └── Home.vue ├── store │ └── index.js ├── plugins │ └── vuetify.js ├── main.js ├── components │ ├── PFooter.vue │ ├── PContactInfo.vue │ ├── PToolbar.vue │ ├── PPortfolioApp.vue │ └── HelloWorld.vue ├── App.vue └── router │ └── index.js ├── babel.config.js ├── firebase.json ├── .gitignore ├── README.md ├── package.json └── .firebase └── hosting.ZGlzdA.cache /uzir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/uzir.png -------------------------------------------------------------------------------- /.firebaserc: -------------------------------------------------------------------------------- 1 | { 2 | "projects": { 3 | "default": "personal-website-a0426" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /vue.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "transpileDependencies": [ 3 | "vuetify" 4 | ] 5 | } -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/logo.png -------------------------------------------------------------------------------- /src/assets/uzir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/uzir.png -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /src/assets/finance-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/finance-logo.png -------------------------------------------------------------------------------- /src/assets/baguette-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/baguette-logo.png -------------------------------------------------------------------------------- /src/assets/facebook-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/facebook-logo.png -------------------------------------------------------------------------------- /src/assets/firebird-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/firebird-logo.png -------------------------------------------------------------------------------- /src/assets/food-vision-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/food-vision-logo.png -------------------------------------------------------------------------------- /src/assets/ss-logo-high-res.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uzirthapa/portfolio-website/HEAD/src/assets/ss-logo-high-res.png -------------------------------------------------------------------------------- /src/views/About.vue: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /src/store/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Vuex from 'vuex' 3 | 4 | Vue.use(Vuex) 5 | 6 | export default new Vuex.Store({ 7 | state: { 8 | }, 9 | mutations: { 10 | }, 11 | actions: { 12 | }, 13 | modules: { 14 | } 15 | }) 16 | -------------------------------------------------------------------------------- /src/plugins/vuetify.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | import Vuetify from 'vuetify/lib'; 3 | import '@fortawesome/fontawesome-free/css/all.css' 4 | 5 | Vue.use(Vuetify); 6 | 7 | export default new Vuetify({ 8 | icons: { 9 | iconfont: 'fa' || 'mdi' 10 | } 11 | }); 12 | -------------------------------------------------------------------------------- /firebase.json: -------------------------------------------------------------------------------- 1 | { 2 | "hosting": { 3 | "public": "dist", 4 | "ignore": [ 5 | "firebase.json", 6 | "**/.*", 7 | "**/node_modules/**" 8 | ], 9 | "rewrites": [ 10 | { 11 | "source": "**", 12 | "destination": "/index.html" 13 | } 14 | ] 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | # local env files 6 | .env.local 7 | .env.*.local 8 | 9 | # Log files 10 | npm-debug.log* 11 | yarn-debug.log* 12 | yarn-error.log* 13 | 14 | # Editor directories and files 15 | .idea 16 | .vscode 17 | *.suo 18 | *.ntvs* 19 | *.njsproj 20 | *.sln 21 | *.sw? 22 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import App from './App.vue' 3 | import router from './router' 4 | import store from './store' 5 | import vuetify from './plugins/vuetify'; 6 | 7 | Vue.config.productionTip = false 8 | 9 | new Vue({ 10 | router, 11 | store, 12 | vuetify, 13 | render: h => h(App) 14 | }).$mount('#app') 15 | -------------------------------------------------------------------------------- /src/components/PFooter.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 13 | 14 | -------------------------------------------------------------------------------- /src/assets/logo.svg: -------------------------------------------------------------------------------- 1 | Artboard 46 2 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 31 | -------------------------------------------------------------------------------- /src/components/PContactInfo.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 27 | 28 | -------------------------------------------------------------------------------- /src/router/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueRouter from 'vue-router' 3 | import Home from '../views/Home.vue' 4 | 5 | Vue.use(VueRouter) 6 | 7 | const routes = [ 8 | { 9 | path: '/', 10 | name: 'home', 11 | component: Home 12 | }, 13 | { 14 | path: '/about', 15 | name: 'about', 16 | // route level code-splitting 17 | // this generates a separate chunk (about.[hash].js) for this route 18 | // which is lazy-loaded when the route is visited. 19 | component: () => import(/* webpackChunkName: "about" */ '../views/About.vue') 20 | } 21 | ] 22 | 23 | const router = new VueRouter({ 24 | mode: 'history', 25 | base: process.env.BASE_URL, 26 | routes 27 | }) 28 | 29 | export default router 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Personal Portfolio Website 2 | 3 | ## Description 4 | One Day Build: Portfolio Website in VueJS and Vuetify + Invision Studio 5 | 6 | I recently realized that I did not have a personal portfolio website so I decided to make one! This was the result of a few hours of designing and developing a website with Vuejs and Vuetify. On this page you can see some of the applications I have made and also see some of the code! If you go to https://uzirthapa.com you should be able to see the live webpage! 7 | 8 | The end result is what you see in this project [here](https://uzirthapa.com/) 9 | 10 | Please check out the [YouTube Video] () as well if you would like! 11 | 12 | ## Links to Resources 13 | 14 | [YouTube]() 15 | 16 | [Vuejs](https://vuejs.org/) 17 | 18 | [Vuetify](https://vuetifyjs.com/en/) 19 | 20 | [Invision](https://www.invisionapp.com/studio) 21 | 22 | [Firebase](https://firebase.google.com/) 23 | 24 | [Website](https://www.uzirthapa.com/) 25 | 26 | 27 | 28 | ## Project setup 29 | ``` 30 | yarn install 31 | yarn run serve 32 | yarn run build 33 | yarn run test 34 | yarn run lint 35 | ``` 36 | 37 | 38 | 39 | ### Customize configuration 40 | See [Configuration Reference](https://cli.vuejs.org/config/). 41 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "personal-website", 3 | "version": "0.1.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 | }, 10 | "dependencies": { 11 | "core-js": "^3.4.3", 12 | "vue": "^2.6.10", 13 | "vue-router": "^3.1.3", 14 | "vuetify": "^2.1.0", 15 | "vuex": "^3.1.2" 16 | }, 17 | "devDependencies": { 18 | "@fortawesome/fontawesome-free": "^5.11.2", 19 | "@vue/cli-plugin-babel": "^4.1.0", 20 | "@vue/cli-plugin-eslint": "^4.1.0", 21 | "@vue/cli-service": "^4.1.0", 22 | "babel-eslint": "^10.0.3", 23 | "eslint": "^5.16.0", 24 | "eslint-plugin-vue": "^5.0.0", 25 | "sass": "^1.19.0", 26 | "sass-loader": "^8.0.0", 27 | "vue-cli-plugin-vuetify": "^2.0.2", 28 | "vue-template-compiler": "^2.6.10", 29 | "vuetify-loader": "^1.3.0" 30 | }, 31 | "eslintConfig": { 32 | "root": true, 33 | "env": { 34 | "node": true 35 | }, 36 | "extends": [ 37 | "plugin:vue/essential", 38 | "eslint:recommended" 39 | ], 40 | "rules": {}, 41 | "parserOptions": { 42 | "parser": "babel-eslint" 43 | } 44 | }, 45 | "browserslist": [ 46 | "> 1%", 47 | "last 2 versions" 48 | ] 49 | } 50 | -------------------------------------------------------------------------------- /src/components/PToolbar.vue: -------------------------------------------------------------------------------- 1 | 32 | 33 | 47 | 48 | -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Uzir Thapa | Software Developer 10 | 12 | 14 | 15 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 27 |
28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /src/assets/plaid-logo.svg: -------------------------------------------------------------------------------- 1 | Plaid logo -------------------------------------------------------------------------------- /src/components/PPortfolioApp.vue: -------------------------------------------------------------------------------- 1 | 57 | 58 | 75 | 76 | -------------------------------------------------------------------------------- /.firebase/hosting.ZGlzdA.cache: -------------------------------------------------------------------------------- 1 | index.html,1590194604527,d3c7499f496abcd337efcd4a7085cd7f4e9dc2b58bc5ca532cab39de016729ed 2 | favicon.ico,1590194604533,84b139040b20cdff656960c5c0cb094137159e6389dcaed3c445d3359fc02a30 3 | fonts/fa-regular-400.f5f2566b.woff2,1590194604513,ab7c73554649ea9d7080f02745e58d0acedc5c0dbefc9ecd6fa67e3fef940441 4 | img/facebook-logo.d133b91c.png,1590194604526,7c32172d4ef2a89569e2a68cf7806c10b291156e4f90a7d1b46a6ae6d23fd2eb 5 | img/firebird-logo.e56c7951.svg,1590194604521,fe5d79d270928eea2ce6ceaf0e1e4d0a456f5bafcff9d32b83c1d38064ff2f4e 6 | img/logo.63a7d78d.svg,1590194604520,5efbc7f58835ba5cd0a1643731f4a1e709cb7e080e369a6ffd5b058e5ea90569 7 | img/logo.82b9c7a5.png,1590194604526,18a9d91561f909237fda7b9b9071eb13e6546f71e008c7767361672c015c272c 8 | img/plaid-logo.30ba599e.svg,1590194604520,47122dfdb27484d51e9c3a7fb5ae750076b496449a915e5760e02afd07ba63b6 9 | js/about.abcd174b.js,1590194604525,b4aadea9cca53ee272c93bbd265df23db30985e787b1bb1e4ec914be518b28c5 10 | js/about.abcd174b.js.map,1590194604534,4c0eaa7f86cdc8ecf634591d1e696b1051f95ba07f1473bebb9cedf24b800807 11 | js/app.1f5797ed.js,1590194604526,1a6433313ad3ebb8b88d5fe11cea9c57eb23b6c03aa83333ebdb8deddd21e79e 12 | js/app.1f5797ed.js.map,1590194604533,b8eccb26d3d80e55164bbe76e9108e2c8fa93e6f3cea08bd7b3dfa210bc64f9f 13 | fonts/fa-regular-400.65b286af.ttf,1590194604513,e98086046fa72a02eceef3809e422b4c3c877fc57ce990d262fa9f08ff450c33 14 | fonts/fa-regular-400.c4f508e7.woff,1590194604514,3b99da4549333a8e733cd388f8f581f5065ba32e31b8ed6ae2ac880200ccfe97 15 | fonts/fa-regular-400.c1a866ec.eot,1590194604514,25713b84aff7840ce1e5ccbd122bdc30185c2d8ec16db6047caeb7ca6d48f508 16 | img/finance-logo.b2af66c2.png,1590194604521,c37b3cee899a8ca32d654f6317193fdb632bbb66985cdd2a54751e6a256d748c 17 | img/firebird-logo.c0372fb9.png,1590194604521,04ae479feddb6233a165334355d3a79618fabeed3abee3200f90dac85568e4bb 18 | img/ss-logo-high-res.bce19937.png,1590194604526,0827198aa6ef68b44ba92f1160ea76e3b3453f904b015bf085469daa3e0da59e 19 | img/baguette-logo.70b7a033.png,1590194604520,9d9bfc93af7fe02e13fc8272adf5271316fcda97d02348ab263da9350b015f56 20 | fonts/fa-brands-400.cccc9d29.woff2,1590194604512,94abde4a5937a56e26a6e81a2c4af16f41b3f5dbd1e5d7871a6eb8a2e3690c73 21 | img/fa-regular-400.7b9568e6.svg,1590194604513,64b919901191d525dc1c1615137414aeb335dab6bf7512bcfe792ed5bf5e9728 22 | fonts/fa-solid-900.44d537ab.woff2,1590194604513,1107c2a16d0bc7b71f79b42a2ed837f5a5bba0907f37e765d9824ff930c52714 23 | fonts/fa-brands-400.c5e0f14f.woff,1590194604513,4de3cd271b66465d21020257e842c1f514b0f58e5846f0e4b546436c55213dd7 24 | fonts/fa-brands-400.06147b6c.ttf,1590194604513,138ba20d76f62edb6dc989793bc27446314ac079fc8feb1467dfad416b9340f3 25 | fonts/fa-brands-400.5063b105.eot,1590194604513,30881689630b36d3b2a5b6fd711520be8728638aa309dd682f537a181a692159 26 | fonts/fa-solid-900.333bae20.woff,1590194604513,0d978585f3e899880dcbfea8d68253a0c99c9e90843babcd8e5a057a8084ffa5 27 | fonts/fa-solid-900.8e4a6dcc.eot,1590194604514,38d30817977852f6ee1be8c99d48105a900a7a7ae27d7dc90eb0e4fa5790ac8c 28 | fonts/fa-solid-900.0bff33a5.ttf,1590194604513,98a7cb75b2c81ac1c0e3cb6bd306dbe735a284c75479fb3a140173e89f022fa8 29 | css/chunk-vendors.f5f48b5b.css,1590194604525,f7ff132eb00965e1cd39e919a7ec0b827781b96bef29ecf95910ebec2801eed4 30 | js/chunk-vendors.29dce511.js,1590194604527,d5220a09b10cf68cddc393fdca3fd00731e4365a73174ec135f4f08a84a2a692 31 | img/fa-solid-900.c2801fb4.svg,1590194604514,c31ab2cebc4cbdda0e05aff6349d95f7c85723e5038b4251bd3d6d45236b64f8 32 | img/food-vision-logo.a4357cfc.png,1590194604520,56df5a67fdcaa69ddfe3c5313b45d821e631a81d32939ecb99ce7f03628b6a71 33 | img/uzir.6882648c.png,1590194604515,283be8271c511607cb47987b65cbb93c20cabbea47a07c012f35a8c51ac6e372 34 | img/fa-brands-400.a9c4bb73.svg,1590194604513,e220e6fcaab41dca478521fad6b1587238f73d0959ad64d62d7a7b4003e981f5 35 | js/chunk-vendors.29dce511.js.map,1590194604534,36ccda83ed87da896564a5ac4bf689ee20ab746f544f955cc811dd91dfc57af0 36 | -------------------------------------------------------------------------------- /src/components/HelloWorld.vue: -------------------------------------------------------------------------------- 1 | 86 | 87 | 145 | -------------------------------------------------------------------------------- /src/assets/firebird-logo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/views/Home.vue: -------------------------------------------------------------------------------- 1 | 76 | 77 | 415 | --------------------------------------------------------------------------------