├── .gitignore ├── README.md ├── package-lock.json ├── package.json ├── public ├── css │ ├── default.css │ ├── font-awesome │ │ ├── css │ │ │ ├── font-awesome.css │ │ │ └── font-awesome.min.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ └── fontawesome-webfont.woff │ │ ├── less │ │ │ ├── bordered-pulled.less │ │ │ ├── core.less │ │ │ ├── fixed-width.less │ │ │ ├── font-awesome.less │ │ │ ├── icons.less │ │ │ ├── larger.less │ │ │ ├── list.less │ │ │ ├── mixins.less │ │ │ ├── path.less │ │ │ ├── rotated-flipped.less │ │ │ ├── spinning.less │ │ │ ├── stacked.less │ │ │ └── variables.less │ │ └── scss │ │ │ ├── _bordered-pulled.scss │ │ │ ├── _core.scss │ │ │ ├── _fixed-width.scss │ │ │ ├── _icons.scss │ │ │ ├── _larger.scss │ │ │ ├── _list.scss │ │ │ ├── _mixins.scss │ │ │ ├── _path.scss │ │ │ ├── _rotated-flipped.scss │ │ │ ├── _spinning.scss │ │ │ ├── _stacked.scss │ │ │ ├── _variables.scss │ │ │ └── font-awesome.scss │ ├── fontello │ │ ├── css │ │ │ ├── animation.css │ │ │ ├── fontello-codes.css │ │ │ ├── fontello-embedded.css │ │ │ ├── fontello-ie7-codes.css │ │ │ ├── fontello-ie7.css │ │ │ └── fontello.css │ │ └── font │ │ │ ├── fontello.eot │ │ │ ├── fontello.svg │ │ │ ├── fontello.ttf │ │ │ └── fontello.woff │ ├── fonts.css │ ├── fonts │ │ ├── librebaskerville │ │ │ ├── librebaskerville-bold-webfont.eot │ │ │ ├── librebaskerville-bold-webfont.svg │ │ │ ├── librebaskerville-bold-webfont.ttf │ │ │ ├── librebaskerville-bold-webfont.woff │ │ │ ├── librebaskerville-italic-webfont.eot │ │ │ ├── librebaskerville-italic-webfont.svg │ │ │ ├── librebaskerville-italic-webfont.ttf │ │ │ ├── librebaskerville-italic-webfont.woff │ │ │ ├── librebaskerville-regular-webfont.eot │ │ │ ├── librebaskerville-regular-webfont.svg │ │ │ ├── librebaskerville-regular-webfont.ttf │ │ │ └── librebaskerville-regular-webfont.woff │ │ └── opensans │ │ │ ├── OpenSans-Bold-webfont.eot │ │ │ ├── OpenSans-Bold-webfont.svg │ │ │ ├── OpenSans-Bold-webfont.ttf │ │ │ ├── OpenSans-Bold-webfont.woff │ │ │ ├── OpenSans-BoldItalic-webfont.eot │ │ │ ├── OpenSans-BoldItalic-webfont.svg │ │ │ ├── OpenSans-BoldItalic-webfont.ttf │ │ │ ├── OpenSans-BoldItalic-webfont.woff │ │ │ ├── OpenSans-ExtraBold-webfont.eot │ │ │ ├── OpenSans-ExtraBold-webfont.svg │ │ │ ├── OpenSans-ExtraBold-webfont.ttf │ │ │ ├── OpenSans-ExtraBold-webfont.woff │ │ │ ├── OpenSans-ExtraBoldItalic-webfont.eot │ │ │ ├── OpenSans-ExtraBoldItalic-webfont.svg │ │ │ ├── OpenSans-ExtraBoldItalic-webfont.ttf │ │ │ ├── OpenSans-ExtraBoldItalic-webfont.woff │ │ │ ├── OpenSans-Italic-webfont.eot │ │ │ ├── OpenSans-Italic-webfont.svg │ │ │ ├── OpenSans-Italic-webfont.ttf │ │ │ ├── OpenSans-Italic-webfont.woff │ │ │ ├── OpenSans-Light-webfont.eot │ │ │ ├── OpenSans-Light-webfont.svg │ │ │ ├── OpenSans-Light-webfont.ttf │ │ │ ├── OpenSans-Light-webfont.woff │ │ │ ├── OpenSans-LightItalic-webfont.eot │ │ │ ├── OpenSans-LightItalic-webfont.svg │ │ │ ├── OpenSans-LightItalic-webfont.ttf │ │ │ ├── OpenSans-LightItalic-webfont.woff │ │ │ ├── OpenSans-Regular-webfont.eot │ │ │ ├── OpenSans-Regular-webfont.svg │ │ │ ├── OpenSans-Regular-webfont.ttf │ │ │ ├── OpenSans-Regular-webfont.woff │ │ │ ├── OpenSans-Semibold-webfont.eot │ │ │ ├── OpenSans-Semibold-webfont.svg │ │ │ ├── OpenSans-Semibold-webfont.ttf │ │ │ ├── OpenSans-Semibold-webfont.woff │ │ │ ├── OpenSans-SemiboldItalic-webfont.eot │ │ │ ├── OpenSans-SemiboldItalic-webfont.svg │ │ │ ├── OpenSans-SemiboldItalic-webfont.ttf │ │ │ └── OpenSans-SemiboldItalic-webfont.woff │ ├── layout.css │ ├── magnific-popup.css │ └── media-queries.css ├── favicon.ico ├── images │ ├── header-background.jpg │ ├── loader.gif │ ├── overlay-bg.png │ ├── overlay-zoom.png │ ├── portfolio │ │ ├── coffee.jpg │ │ ├── console.jpg │ │ ├── farmerboy.jpg │ │ ├── girl.jpg │ │ ├── into-the-light.jpg │ │ ├── judah.jpg │ │ ├── modals │ │ │ ├── m-coffee.jpg │ │ │ ├── m-console.jpg │ │ │ ├── m-farmerboy.jpg │ │ │ ├── m-girl.jpg │ │ │ ├── m-intothelight.jpg │ │ │ ├── m-judah.jpg │ │ │ ├── m-origami.jpg │ │ │ └── m-retrocam.jpg │ │ ├── origami.jpg │ │ └── retrocam.jpg │ ├── profilepic.jpg │ ├── sample-image.jpg │ └── testimonials-bg.jpg ├── index.html ├── js │ ├── init.js │ ├── jquery-1.10.2.min.js │ ├── jquery-migrate-1.2.1.min.js │ ├── jquery.fittext.js │ ├── jquery.flexslider.js │ ├── magnific-popup.js │ ├── modernizr.js │ └── waypoints.js └── manifest.json └── src ├── App.css ├── App.js ├── App.test.js ├── components ├── About.js ├── ContactUs.js ├── Footer.js ├── Header.js ├── Portfolio.js ├── Resume.js └── Testimonials.js ├── index.css ├── index.js ├── logo.svg ├── resumeData.js └── serviceWorker.js /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![HitCount](http://hits.dwyl.io/rbhatia46/React-Portfolio.svg)](http://hits.dwyl.io/rbhatia46/React-Portfolio) 2 | ![Star this repository](https://img.shields.io/github/stars/rbhatia46/React-Portfolio?style=social) 3 | 4 | 5 | A simple SPA Portfolio template for developer/designers built with React. Use it to showcase your work, testimonials and other information to clients. 6 | 7 | ## Preview 8 | ![Preview](https://image.ibb.co/e5uBf0/Capture.png) 9 | 10 | ## How to use 11 | 1. Clone/Download the repo. 12 | 2. Run ``` npm install ```. 13 | 3. Change the values in ```src/resumeData.js``` to suit your use-case. 14 | 4. Run ```npm start``` to spin the up the local dev server port 3000.(http://localhost:3000). 15 | 5. Make required changes in ```src/resumeData.js``` to suit your needs. 16 | 17 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "resume", 3 | "version": "0.1.0", 4 | "private": true, 5 | "dependencies": { 6 | "react": "^16.6.0", 7 | "react-dom": "^16.6.0", 8 | "react-scripts": "2.1.1" 9 | }, 10 | "scripts": { 11 | "start": "react-scripts start", 12 | "build": "react-scripts build", 13 | "test": "react-scripts test", 14 | "eject": "react-scripts eject" 15 | }, 16 | "eslintConfig": { 17 | "extends": "react-app" 18 | }, 19 | "browserslist": [ 20 | ">0.2%", 21 | "not dead", 22 | "not ie <= 11", 23 | "not op_mini all" 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /public/css/font-awesome/css/font-awesome.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.0.3');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.3333333333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857142858em;text-align:center}.fa-ul{padding-left:0;margin-left:2.142857142857143em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;top:.14285714285714285em;text-align:center}.fa-li.fa-lg{left:-1.8571428571428572em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0,mirror=1);-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2,mirror=1);-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-asc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-desc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-reply-all:before{content:"\f122"}.fa-mail-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"} -------------------------------------------------------------------------------- /public/css/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /public/css/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /public/css/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /public/css/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /public/css/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .pull-right { float: right; } 11 | .pull-left { float: left; } 12 | 13 | .@{fa-css-prefix} { 14 | &.pull-left { margin-right: .3em; } 15 | &.pull-right { margin-left: .3em; } 16 | } 17 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font-family: FontAwesome; 7 | font-style: normal; 8 | font-weight: normal; 9 | line-height: 1; 10 | -webkit-font-smoothing: antialiased; 11 | -moz-osx-font-smoothing: grayscale; 12 | } 13 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "spinning"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: -@fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon-rotate(@degrees, @rotation) { 5 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); 6 | -webkit-transform: rotate(@degrees); 7 | -moz-transform: rotate(@degrees); 8 | -ms-transform: rotate(@degrees); 9 | -o-transform: rotate(@degrees); 10 | transform: rotate(@degrees); 11 | } 12 | 13 | .fa-icon-flip(@horiz, @vert, @rotation) { 14 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); 15 | -webkit-transform: scale(@horiz, @vert); 16 | -moz-transform: scale(@horiz, @vert); 17 | -ms-transform: scale(@horiz, @vert); 18 | -o-transform: scale(@horiz, @vert); 19 | transform: scale(@horiz, @vert); 20 | } 21 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 9 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 10 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 11 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 12 | font-weight: normal; 13 | font-style: normal; 14 | } 15 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: spin 2s infinite linear; 6 | -moz-animation: spin 2s infinite linear; 7 | -o-animation: spin 2s infinite linear; 8 | animation: spin 2s infinite linear; 9 | } 10 | 11 | @-moz-keyframes spin { 12 | 0% { -moz-transform: rotate(0deg); } 13 | 100% { -moz-transform: rotate(359deg); } 14 | } 15 | @-webkit-keyframes spin { 16 | 0% { -webkit-transform: rotate(0deg); } 17 | 100% { -webkit-transform: rotate(359deg); } 18 | } 19 | @-o-keyframes spin { 20 | 0% { -o-transform: rotate(0deg); } 21 | 100% { -o-transform: rotate(359deg); } 22 | } 23 | @-ms-keyframes spin { 24 | 0% { -ms-transform: rotate(0deg); } 25 | 100% { -ms-transform: rotate(359deg); } 26 | } 27 | @keyframes spin { 28 | 0% { transform: rotate(0deg); } 29 | 100% { transform: rotate(359deg); } 30 | } 31 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /public/css/font-awesome/less/variables.less: -------------------------------------------------------------------------------- 1 | // Variables 2 | // -------------------------- 3 | 4 | @fa-font-path: "../fonts"; 5 | //@fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.0.3/fonts"; // for referencing Bootstrap CDN font files directly 6 | @fa-css-prefix: fa; 7 | @fa-version: "4.0.3"; 8 | @fa-border-color: #eee; 9 | @fa-inverse: #fff; 10 | @fa-li-width: (30em / 14); 11 | 12 | @fa-var-glass: "\f000"; 13 | @fa-var-music: "\f001"; 14 | @fa-var-search: "\f002"; 15 | @fa-var-envelope-o: "\f003"; 16 | @fa-var-heart: "\f004"; 17 | @fa-var-star: "\f005"; 18 | @fa-var-star-o: "\f006"; 19 | @fa-var-user: "\f007"; 20 | @fa-var-film: "\f008"; 21 | @fa-var-th-large: "\f009"; 22 | @fa-var-th: "\f00a"; 23 | @fa-var-th-list: "\f00b"; 24 | @fa-var-check: "\f00c"; 25 | @fa-var-times: "\f00d"; 26 | @fa-var-search-plus: "\f00e"; 27 | @fa-var-search-minus: "\f010"; 28 | @fa-var-power-off: "\f011"; 29 | @fa-var-signal: "\f012"; 30 | @fa-var-cog: "\f013"; 31 | @fa-var-trash-o: "\f014"; 32 | @fa-var-home: "\f015"; 33 | @fa-var-file-o: "\f016"; 34 | @fa-var-clock-o: "\f017"; 35 | @fa-var-road: "\f018"; 36 | @fa-var-download: "\f019"; 37 | @fa-var-arrow-circle-o-down: "\f01a"; 38 | @fa-var-arrow-circle-o-up: "\f01b"; 39 | @fa-var-inbox: "\f01c"; 40 | @fa-var-play-circle-o: "\f01d"; 41 | @fa-var-repeat: "\f01e"; 42 | @fa-var-refresh: "\f021"; 43 | @fa-var-list-alt: "\f022"; 44 | @fa-var-lock: "\f023"; 45 | @fa-var-flag: "\f024"; 46 | @fa-var-headphones: "\f025"; 47 | @fa-var-volume-off: "\f026"; 48 | @fa-var-volume-down: "\f027"; 49 | @fa-var-volume-up: "\f028"; 50 | @fa-var-qrcode: "\f029"; 51 | @fa-var-barcode: "\f02a"; 52 | @fa-var-tag: "\f02b"; 53 | @fa-var-tags: "\f02c"; 54 | @fa-var-book: "\f02d"; 55 | @fa-var-bookmark: "\f02e"; 56 | @fa-var-print: "\f02f"; 57 | @fa-var-camera: "\f030"; 58 | @fa-var-font: "\f031"; 59 | @fa-var-bold: "\f032"; 60 | @fa-var-italic: "\f033"; 61 | @fa-var-text-height: "\f034"; 62 | @fa-var-text-width: "\f035"; 63 | @fa-var-align-left: "\f036"; 64 | @fa-var-align-center: "\f037"; 65 | @fa-var-align-right: "\f038"; 66 | @fa-var-align-justify: "\f039"; 67 | @fa-var-list: "\f03a"; 68 | @fa-var-outdent: "\f03b"; 69 | @fa-var-indent: "\f03c"; 70 | @fa-var-video-camera: "\f03d"; 71 | @fa-var-picture-o: "\f03e"; 72 | @fa-var-pencil: "\f040"; 73 | @fa-var-map-marker: "\f041"; 74 | @fa-var-adjust: "\f042"; 75 | @fa-var-tint: "\f043"; 76 | @fa-var-pencil-square-o: "\f044"; 77 | @fa-var-share-square-o: "\f045"; 78 | @fa-var-check-square-o: "\f046"; 79 | @fa-var-arrows: "\f047"; 80 | @fa-var-step-backward: "\f048"; 81 | @fa-var-fast-backward: "\f049"; 82 | @fa-var-backward: "\f04a"; 83 | @fa-var-play: "\f04b"; 84 | @fa-var-pause: "\f04c"; 85 | @fa-var-stop: "\f04d"; 86 | @fa-var-forward: "\f04e"; 87 | @fa-var-fast-forward: "\f050"; 88 | @fa-var-step-forward: "\f051"; 89 | @fa-var-eject: "\f052"; 90 | @fa-var-chevron-left: "\f053"; 91 | @fa-var-chevron-right: "\f054"; 92 | @fa-var-plus-circle: "\f055"; 93 | @fa-var-minus-circle: "\f056"; 94 | @fa-var-times-circle: "\f057"; 95 | @fa-var-check-circle: "\f058"; 96 | @fa-var-question-circle: "\f059"; 97 | @fa-var-info-circle: "\f05a"; 98 | @fa-var-crosshairs: "\f05b"; 99 | @fa-var-times-circle-o: "\f05c"; 100 | @fa-var-check-circle-o: "\f05d"; 101 | @fa-var-ban: "\f05e"; 102 | @fa-var-arrow-left: "\f060"; 103 | @fa-var-arrow-right: "\f061"; 104 | @fa-var-arrow-up: "\f062"; 105 | @fa-var-arrow-down: "\f063"; 106 | @fa-var-share: "\f064"; 107 | @fa-var-expand: "\f065"; 108 | @fa-var-compress: "\f066"; 109 | @fa-var-plus: "\f067"; 110 | @fa-var-minus: "\f068"; 111 | @fa-var-asterisk: "\f069"; 112 | @fa-var-exclamation-circle: "\f06a"; 113 | @fa-var-gift: "\f06b"; 114 | @fa-var-leaf: "\f06c"; 115 | @fa-var-fire: "\f06d"; 116 | @fa-var-eye: "\f06e"; 117 | @fa-var-eye-slash: "\f070"; 118 | @fa-var-exclamation-triangle: "\f071"; 119 | @fa-var-plane: "\f072"; 120 | @fa-var-calendar: "\f073"; 121 | @fa-var-random: "\f074"; 122 | @fa-var-comment: "\f075"; 123 | @fa-var-magnet: "\f076"; 124 | @fa-var-chevron-up: "\f077"; 125 | @fa-var-chevron-down: "\f078"; 126 | @fa-var-retweet: "\f079"; 127 | @fa-var-shopping-cart: "\f07a"; 128 | @fa-var-folder: "\f07b"; 129 | @fa-var-folder-open: "\f07c"; 130 | @fa-var-arrows-v: "\f07d"; 131 | @fa-var-arrows-h: "\f07e"; 132 | @fa-var-bar-chart-o: "\f080"; 133 | @fa-var-twitter-square: "\f081"; 134 | @fa-var-facebook-square: "\f082"; 135 | @fa-var-camera-retro: "\f083"; 136 | @fa-var-key: "\f084"; 137 | @fa-var-cogs: "\f085"; 138 | @fa-var-comments: "\f086"; 139 | @fa-var-thumbs-o-up: "\f087"; 140 | @fa-var-thumbs-o-down: "\f088"; 141 | @fa-var-star-half: "\f089"; 142 | @fa-var-heart-o: "\f08a"; 143 | @fa-var-sign-out: "\f08b"; 144 | @fa-var-linkedin-square: "\f08c"; 145 | @fa-var-thumb-tack: "\f08d"; 146 | @fa-var-external-link: "\f08e"; 147 | @fa-var-sign-in: "\f090"; 148 | @fa-var-trophy: "\f091"; 149 | @fa-var-github-square: "\f092"; 150 | @fa-var-upload: "\f093"; 151 | @fa-var-lemon-o: "\f094"; 152 | @fa-var-phone: "\f095"; 153 | @fa-var-square-o: "\f096"; 154 | @fa-var-bookmark-o: "\f097"; 155 | @fa-var-phone-square: "\f098"; 156 | @fa-var-twitter: "\f099"; 157 | @fa-var-facebook: "\f09a"; 158 | @fa-var-github: "\f09b"; 159 | @fa-var-unlock: "\f09c"; 160 | @fa-var-credit-card: "\f09d"; 161 | @fa-var-rss: "\f09e"; 162 | @fa-var-hdd-o: "\f0a0"; 163 | @fa-var-bullhorn: "\f0a1"; 164 | @fa-var-bell: "\f0f3"; 165 | @fa-var-certificate: "\f0a3"; 166 | @fa-var-hand-o-right: "\f0a4"; 167 | @fa-var-hand-o-left: "\f0a5"; 168 | @fa-var-hand-o-up: "\f0a6"; 169 | @fa-var-hand-o-down: "\f0a7"; 170 | @fa-var-arrow-circle-left: "\f0a8"; 171 | @fa-var-arrow-circle-right: "\f0a9"; 172 | @fa-var-arrow-circle-up: "\f0aa"; 173 | @fa-var-arrow-circle-down: "\f0ab"; 174 | @fa-var-globe: "\f0ac"; 175 | @fa-var-wrench: "\f0ad"; 176 | @fa-var-tasks: "\f0ae"; 177 | @fa-var-filter: "\f0b0"; 178 | @fa-var-briefcase: "\f0b1"; 179 | @fa-var-arrows-alt: "\f0b2"; 180 | @fa-var-users: "\f0c0"; 181 | @fa-var-link: "\f0c1"; 182 | @fa-var-cloud: "\f0c2"; 183 | @fa-var-flask: "\f0c3"; 184 | @fa-var-scissors: "\f0c4"; 185 | @fa-var-files-o: "\f0c5"; 186 | @fa-var-paperclip: "\f0c6"; 187 | @fa-var-floppy-o: "\f0c7"; 188 | @fa-var-square: "\f0c8"; 189 | @fa-var-bars: "\f0c9"; 190 | @fa-var-list-ul: "\f0ca"; 191 | @fa-var-list-ol: "\f0cb"; 192 | @fa-var-strikethrough: "\f0cc"; 193 | @fa-var-underline: "\f0cd"; 194 | @fa-var-table: "\f0ce"; 195 | @fa-var-magic: "\f0d0"; 196 | @fa-var-truck: "\f0d1"; 197 | @fa-var-pinterest: "\f0d2"; 198 | @fa-var-pinterest-square: "\f0d3"; 199 | @fa-var-google-plus-square: "\f0d4"; 200 | @fa-var-google-plus: "\f0d5"; 201 | @fa-var-money: "\f0d6"; 202 | @fa-var-caret-down: "\f0d7"; 203 | @fa-var-caret-up: "\f0d8"; 204 | @fa-var-caret-left: "\f0d9"; 205 | @fa-var-caret-right: "\f0da"; 206 | @fa-var-columns: "\f0db"; 207 | @fa-var-sort: "\f0dc"; 208 | @fa-var-sort-asc: "\f0dd"; 209 | @fa-var-sort-desc: "\f0de"; 210 | @fa-var-envelope: "\f0e0"; 211 | @fa-var-linkedin: "\f0e1"; 212 | @fa-var-undo: "\f0e2"; 213 | @fa-var-gavel: "\f0e3"; 214 | @fa-var-tachometer: "\f0e4"; 215 | @fa-var-comment-o: "\f0e5"; 216 | @fa-var-comments-o: "\f0e6"; 217 | @fa-var-bolt: "\f0e7"; 218 | @fa-var-sitemap: "\f0e8"; 219 | @fa-var-umbrella: "\f0e9"; 220 | @fa-var-clipboard: "\f0ea"; 221 | @fa-var-lightbulb-o: "\f0eb"; 222 | @fa-var-exchange: "\f0ec"; 223 | @fa-var-cloud-download: "\f0ed"; 224 | @fa-var-cloud-upload: "\f0ee"; 225 | @fa-var-user-md: "\f0f0"; 226 | @fa-var-stethoscope: "\f0f1"; 227 | @fa-var-suitcase: "\f0f2"; 228 | @fa-var-bell-o: "\f0a2"; 229 | @fa-var-coffee: "\f0f4"; 230 | @fa-var-cutlery: "\f0f5"; 231 | @fa-var-file-text-o: "\f0f6"; 232 | @fa-var-building-o: "\f0f7"; 233 | @fa-var-hospital-o: "\f0f8"; 234 | @fa-var-ambulance: "\f0f9"; 235 | @fa-var-medkit: "\f0fa"; 236 | @fa-var-fighter-jet: "\f0fb"; 237 | @fa-var-beer: "\f0fc"; 238 | @fa-var-h-square: "\f0fd"; 239 | @fa-var-plus-square: "\f0fe"; 240 | @fa-var-angle-double-left: "\f100"; 241 | @fa-var-angle-double-right: "\f101"; 242 | @fa-var-angle-double-up: "\f102"; 243 | @fa-var-angle-double-down: "\f103"; 244 | @fa-var-angle-left: "\f104"; 245 | @fa-var-angle-right: "\f105"; 246 | @fa-var-angle-up: "\f106"; 247 | @fa-var-angle-down: "\f107"; 248 | @fa-var-desktop: "\f108"; 249 | @fa-var-laptop: "\f109"; 250 | @fa-var-tablet: "\f10a"; 251 | @fa-var-mobile: "\f10b"; 252 | @fa-var-circle-o: "\f10c"; 253 | @fa-var-quote-left: "\f10d"; 254 | @fa-var-quote-right: "\f10e"; 255 | @fa-var-spinner: "\f110"; 256 | @fa-var-circle: "\f111"; 257 | @fa-var-reply: "\f112"; 258 | @fa-var-github-alt: "\f113"; 259 | @fa-var-folder-o: "\f114"; 260 | @fa-var-folder-open-o: "\f115"; 261 | @fa-var-smile-o: "\f118"; 262 | @fa-var-frown-o: "\f119"; 263 | @fa-var-meh-o: "\f11a"; 264 | @fa-var-gamepad: "\f11b"; 265 | @fa-var-keyboard-o: "\f11c"; 266 | @fa-var-flag-o: "\f11d"; 267 | @fa-var-flag-checkered: "\f11e"; 268 | @fa-var-terminal: "\f120"; 269 | @fa-var-code: "\f121"; 270 | @fa-var-reply-all: "\f122"; 271 | @fa-var-mail-reply-all: "\f122"; 272 | @fa-var-star-half-o: "\f123"; 273 | @fa-var-location-arrow: "\f124"; 274 | @fa-var-crop: "\f125"; 275 | @fa-var-code-fork: "\f126"; 276 | @fa-var-chain-broken: "\f127"; 277 | @fa-var-question: "\f128"; 278 | @fa-var-info: "\f129"; 279 | @fa-var-exclamation: "\f12a"; 280 | @fa-var-superscript: "\f12b"; 281 | @fa-var-subscript: "\f12c"; 282 | @fa-var-eraser: "\f12d"; 283 | @fa-var-puzzle-piece: "\f12e"; 284 | @fa-var-microphone: "\f130"; 285 | @fa-var-microphone-slash: "\f131"; 286 | @fa-var-shield: "\f132"; 287 | @fa-var-calendar-o: "\f133"; 288 | @fa-var-fire-extinguisher: "\f134"; 289 | @fa-var-rocket: "\f135"; 290 | @fa-var-maxcdn: "\f136"; 291 | @fa-var-chevron-circle-left: "\f137"; 292 | @fa-var-chevron-circle-right: "\f138"; 293 | @fa-var-chevron-circle-up: "\f139"; 294 | @fa-var-chevron-circle-down: "\f13a"; 295 | @fa-var-html5: "\f13b"; 296 | @fa-var-css3: "\f13c"; 297 | @fa-var-anchor: "\f13d"; 298 | @fa-var-unlock-alt: "\f13e"; 299 | @fa-var-bullseye: "\f140"; 300 | @fa-var-ellipsis-h: "\f141"; 301 | @fa-var-ellipsis-v: "\f142"; 302 | @fa-var-rss-square: "\f143"; 303 | @fa-var-play-circle: "\f144"; 304 | @fa-var-ticket: "\f145"; 305 | @fa-var-minus-square: "\f146"; 306 | @fa-var-minus-square-o: "\f147"; 307 | @fa-var-level-up: "\f148"; 308 | @fa-var-level-down: "\f149"; 309 | @fa-var-check-square: "\f14a"; 310 | @fa-var-pencil-square: "\f14b"; 311 | @fa-var-external-link-square: "\f14c"; 312 | @fa-var-share-square: "\f14d"; 313 | @fa-var-compass: "\f14e"; 314 | @fa-var-caret-square-o-down: "\f150"; 315 | @fa-var-caret-square-o-up: "\f151"; 316 | @fa-var-caret-square-o-right: "\f152"; 317 | @fa-var-eur: "\f153"; 318 | @fa-var-gbp: "\f154"; 319 | @fa-var-usd: "\f155"; 320 | @fa-var-inr: "\f156"; 321 | @fa-var-jpy: "\f157"; 322 | @fa-var-rub: "\f158"; 323 | @fa-var-krw: "\f159"; 324 | @fa-var-btc: "\f15a"; 325 | @fa-var-file: "\f15b"; 326 | @fa-var-file-text: "\f15c"; 327 | @fa-var-sort-alpha-asc: "\f15d"; 328 | @fa-var-sort-alpha-desc: "\f15e"; 329 | @fa-var-sort-amount-asc: "\f160"; 330 | @fa-var-sort-amount-desc: "\f161"; 331 | @fa-var-sort-numeric-asc: "\f162"; 332 | @fa-var-sort-numeric-desc: "\f163"; 333 | @fa-var-thumbs-up: "\f164"; 334 | @fa-var-thumbs-down: "\f165"; 335 | @fa-var-youtube-square: "\f166"; 336 | @fa-var-youtube: "\f167"; 337 | @fa-var-xing: "\f168"; 338 | @fa-var-xing-square: "\f169"; 339 | @fa-var-youtube-play: "\f16a"; 340 | @fa-var-dropbox: "\f16b"; 341 | @fa-var-stack-overflow: "\f16c"; 342 | @fa-var-instagram: "\f16d"; 343 | @fa-var-flickr: "\f16e"; 344 | @fa-var-adn: "\f170"; 345 | @fa-var-bitbucket: "\f171"; 346 | @fa-var-bitbucket-square: "\f172"; 347 | @fa-var-tumblr: "\f173"; 348 | @fa-var-tumblr-square: "\f174"; 349 | @fa-var-long-arrow-down: "\f175"; 350 | @fa-var-long-arrow-up: "\f176"; 351 | @fa-var-long-arrow-left: "\f177"; 352 | @fa-var-long-arrow-right: "\f178"; 353 | @fa-var-apple: "\f179"; 354 | @fa-var-windows: "\f17a"; 355 | @fa-var-android: "\f17b"; 356 | @fa-var-linux: "\f17c"; 357 | @fa-var-dribbble: "\f17d"; 358 | @fa-var-skype: "\f17e"; 359 | @fa-var-foursquare: "\f180"; 360 | @fa-var-trello: "\f181"; 361 | @fa-var-female: "\f182"; 362 | @fa-var-male: "\f183"; 363 | @fa-var-gittip: "\f184"; 364 | @fa-var-sun-o: "\f185"; 365 | @fa-var-moon-o: "\f186"; 366 | @fa-var-archive: "\f187"; 367 | @fa-var-bug: "\f188"; 368 | @fa-var-vk: "\f189"; 369 | @fa-var-weibo: "\f18a"; 370 | @fa-var-renren: "\f18b"; 371 | @fa-var-pagelines: "\f18c"; 372 | @fa-var-stack-exchange: "\f18d"; 373 | @fa-var-arrow-circle-o-right: "\f18e"; 374 | @fa-var-arrow-circle-o-left: "\f190"; 375 | @fa-var-caret-square-o-left: "\f191"; 376 | @fa-var-dot-circle-o: "\f192"; 377 | @fa-var-wheelchair: "\f193"; 378 | @fa-var-vimeo-square: "\f194"; 379 | @fa-var-try: "\f195"; 380 | @fa-var-plus-square-o: "\f196"; 381 | 382 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .pull-right { float: right; } 11 | .pull-left { float: left; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.pull-left { margin-right: .3em; } 15 | &.pull-right { margin-left: .3em; } 16 | } 17 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font-family: FontAwesome; 7 | font-style: normal; 8 | font-weight: normal; 9 | line-height: 1; 10 | -webkit-font-smoothing: antialiased; 11 | -moz-osx-font-smoothing: grayscale; 12 | } 13 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon-rotate($degrees, $rotation) { 5 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation); 6 | -webkit-transform: rotate($degrees); 7 | -moz-transform: rotate($degrees); 8 | -ms-transform: rotate($degrees); 9 | -o-transform: rotate($degrees); 10 | transform: rotate($degrees); 11 | } 12 | 13 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 14 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation); 15 | -webkit-transform: scale($horiz, $vert); 16 | -moz-transform: scale($horiz, $vert); 17 | -ms-transform: scale($horiz, $vert); 18 | -o-transform: scale($horiz, $vert); 19 | transform: scale($horiz, $vert); 20 | } 21 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 9 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 10 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 11 | //src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 12 | font-weight: normal; 13 | font-style: normal; 14 | } 15 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: spin 2s infinite linear; 6 | -moz-animation: spin 2s infinite linear; 7 | -o-animation: spin 2s infinite linear; 8 | animation: spin 2s infinite linear; 9 | } 10 | 11 | @-moz-keyframes spin { 12 | 0% { -moz-transform: rotate(0deg); } 13 | 100% { -moz-transform: rotate(359deg); } 14 | } 15 | @-webkit-keyframes spin { 16 | 0% { -webkit-transform: rotate(0deg); } 17 | 100% { -webkit-transform: rotate(359deg); } 18 | } 19 | @-o-keyframes spin { 20 | 0% { -o-transform: rotate(0deg); } 21 | 100% { -o-transform: rotate(359deg); } 22 | } 23 | @-ms-keyframes spin { 24 | 0% { -ms-transform: rotate(0deg); } 25 | 100% { -ms-transform: rotate(359deg); } 26 | } 27 | @keyframes spin { 28 | 0% { transform: rotate(0deg); } 29 | 100% { transform: rotate(359deg); } 30 | } 31 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/_variables.scss: -------------------------------------------------------------------------------- 1 | // Variables 2 | // -------------------------- 3 | 4 | $fa-font-path: "../fonts" !default; 5 | //$fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.0.3/fonts" !default; // for referencing Bootstrap CDN font files directly 6 | $fa-css-prefix: fa !default; 7 | $fa-version: "4.0.3" !default; 8 | $fa-border-color: #eee !default; 9 | $fa-inverse: #fff !default; 10 | $fa-li-width: (30em / 14) !default; 11 | 12 | $fa-var-glass: "\f000"; 13 | $fa-var-music: "\f001"; 14 | $fa-var-search: "\f002"; 15 | $fa-var-envelope-o: "\f003"; 16 | $fa-var-heart: "\f004"; 17 | $fa-var-star: "\f005"; 18 | $fa-var-star-o: "\f006"; 19 | $fa-var-user: "\f007"; 20 | $fa-var-film: "\f008"; 21 | $fa-var-th-large: "\f009"; 22 | $fa-var-th: "\f00a"; 23 | $fa-var-th-list: "\f00b"; 24 | $fa-var-check: "\f00c"; 25 | $fa-var-times: "\f00d"; 26 | $fa-var-search-plus: "\f00e"; 27 | $fa-var-search-minus: "\f010"; 28 | $fa-var-power-off: "\f011"; 29 | $fa-var-signal: "\f012"; 30 | $fa-var-cog: "\f013"; 31 | $fa-var-trash-o: "\f014"; 32 | $fa-var-home: "\f015"; 33 | $fa-var-file-o: "\f016"; 34 | $fa-var-clock-o: "\f017"; 35 | $fa-var-road: "\f018"; 36 | $fa-var-download: "\f019"; 37 | $fa-var-arrow-circle-o-down: "\f01a"; 38 | $fa-var-arrow-circle-o-up: "\f01b"; 39 | $fa-var-inbox: "\f01c"; 40 | $fa-var-play-circle-o: "\f01d"; 41 | $fa-var-repeat: "\f01e"; 42 | $fa-var-refresh: "\f021"; 43 | $fa-var-list-alt: "\f022"; 44 | $fa-var-lock: "\f023"; 45 | $fa-var-flag: "\f024"; 46 | $fa-var-headphones: "\f025"; 47 | $fa-var-volume-off: "\f026"; 48 | $fa-var-volume-down: "\f027"; 49 | $fa-var-volume-up: "\f028"; 50 | $fa-var-qrcode: "\f029"; 51 | $fa-var-barcode: "\f02a"; 52 | $fa-var-tag: "\f02b"; 53 | $fa-var-tags: "\f02c"; 54 | $fa-var-book: "\f02d"; 55 | $fa-var-bookmark: "\f02e"; 56 | $fa-var-print: "\f02f"; 57 | $fa-var-camera: "\f030"; 58 | $fa-var-font: "\f031"; 59 | $fa-var-bold: "\f032"; 60 | $fa-var-italic: "\f033"; 61 | $fa-var-text-height: "\f034"; 62 | $fa-var-text-width: "\f035"; 63 | $fa-var-align-left: "\f036"; 64 | $fa-var-align-center: "\f037"; 65 | $fa-var-align-right: "\f038"; 66 | $fa-var-align-justify: "\f039"; 67 | $fa-var-list: "\f03a"; 68 | $fa-var-outdent: "\f03b"; 69 | $fa-var-indent: "\f03c"; 70 | $fa-var-video-camera: "\f03d"; 71 | $fa-var-picture-o: "\f03e"; 72 | $fa-var-pencil: "\f040"; 73 | $fa-var-map-marker: "\f041"; 74 | $fa-var-adjust: "\f042"; 75 | $fa-var-tint: "\f043"; 76 | $fa-var-pencil-square-o: "\f044"; 77 | $fa-var-share-square-o: "\f045"; 78 | $fa-var-check-square-o: "\f046"; 79 | $fa-var-arrows: "\f047"; 80 | $fa-var-step-backward: "\f048"; 81 | $fa-var-fast-backward: "\f049"; 82 | $fa-var-backward: "\f04a"; 83 | $fa-var-play: "\f04b"; 84 | $fa-var-pause: "\f04c"; 85 | $fa-var-stop: "\f04d"; 86 | $fa-var-forward: "\f04e"; 87 | $fa-var-fast-forward: "\f050"; 88 | $fa-var-step-forward: "\f051"; 89 | $fa-var-eject: "\f052"; 90 | $fa-var-chevron-left: "\f053"; 91 | $fa-var-chevron-right: "\f054"; 92 | $fa-var-plus-circle: "\f055"; 93 | $fa-var-minus-circle: "\f056"; 94 | $fa-var-times-circle: "\f057"; 95 | $fa-var-check-circle: "\f058"; 96 | $fa-var-question-circle: "\f059"; 97 | $fa-var-info-circle: "\f05a"; 98 | $fa-var-crosshairs: "\f05b"; 99 | $fa-var-times-circle-o: "\f05c"; 100 | $fa-var-check-circle-o: "\f05d"; 101 | $fa-var-ban: "\f05e"; 102 | $fa-var-arrow-left: "\f060"; 103 | $fa-var-arrow-right: "\f061"; 104 | $fa-var-arrow-up: "\f062"; 105 | $fa-var-arrow-down: "\f063"; 106 | $fa-var-share: "\f064"; 107 | $fa-var-expand: "\f065"; 108 | $fa-var-compress: "\f066"; 109 | $fa-var-plus: "\f067"; 110 | $fa-var-minus: "\f068"; 111 | $fa-var-asterisk: "\f069"; 112 | $fa-var-exclamation-circle: "\f06a"; 113 | $fa-var-gift: "\f06b"; 114 | $fa-var-leaf: "\f06c"; 115 | $fa-var-fire: "\f06d"; 116 | $fa-var-eye: "\f06e"; 117 | $fa-var-eye-slash: "\f070"; 118 | $fa-var-exclamation-triangle: "\f071"; 119 | $fa-var-plane: "\f072"; 120 | $fa-var-calendar: "\f073"; 121 | $fa-var-random: "\f074"; 122 | $fa-var-comment: "\f075"; 123 | $fa-var-magnet: "\f076"; 124 | $fa-var-chevron-up: "\f077"; 125 | $fa-var-chevron-down: "\f078"; 126 | $fa-var-retweet: "\f079"; 127 | $fa-var-shopping-cart: "\f07a"; 128 | $fa-var-folder: "\f07b"; 129 | $fa-var-folder-open: "\f07c"; 130 | $fa-var-arrows-v: "\f07d"; 131 | $fa-var-arrows-h: "\f07e"; 132 | $fa-var-bar-chart-o: "\f080"; 133 | $fa-var-twitter-square: "\f081"; 134 | $fa-var-facebook-square: "\f082"; 135 | $fa-var-camera-retro: "\f083"; 136 | $fa-var-key: "\f084"; 137 | $fa-var-cogs: "\f085"; 138 | $fa-var-comments: "\f086"; 139 | $fa-var-thumbs-o-up: "\f087"; 140 | $fa-var-thumbs-o-down: "\f088"; 141 | $fa-var-star-half: "\f089"; 142 | $fa-var-heart-o: "\f08a"; 143 | $fa-var-sign-out: "\f08b"; 144 | $fa-var-linkedin-square: "\f08c"; 145 | $fa-var-thumb-tack: "\f08d"; 146 | $fa-var-external-link: "\f08e"; 147 | $fa-var-sign-in: "\f090"; 148 | $fa-var-trophy: "\f091"; 149 | $fa-var-github-square: "\f092"; 150 | $fa-var-upload: "\f093"; 151 | $fa-var-lemon-o: "\f094"; 152 | $fa-var-phone: "\f095"; 153 | $fa-var-square-o: "\f096"; 154 | $fa-var-bookmark-o: "\f097"; 155 | $fa-var-phone-square: "\f098"; 156 | $fa-var-twitter: "\f099"; 157 | $fa-var-facebook: "\f09a"; 158 | $fa-var-github: "\f09b"; 159 | $fa-var-unlock: "\f09c"; 160 | $fa-var-credit-card: "\f09d"; 161 | $fa-var-rss: "\f09e"; 162 | $fa-var-hdd-o: "\f0a0"; 163 | $fa-var-bullhorn: "\f0a1"; 164 | $fa-var-bell: "\f0f3"; 165 | $fa-var-certificate: "\f0a3"; 166 | $fa-var-hand-o-right: "\f0a4"; 167 | $fa-var-hand-o-left: "\f0a5"; 168 | $fa-var-hand-o-up: "\f0a6"; 169 | $fa-var-hand-o-down: "\f0a7"; 170 | $fa-var-arrow-circle-left: "\f0a8"; 171 | $fa-var-arrow-circle-right: "\f0a9"; 172 | $fa-var-arrow-circle-up: "\f0aa"; 173 | $fa-var-arrow-circle-down: "\f0ab"; 174 | $fa-var-globe: "\f0ac"; 175 | $fa-var-wrench: "\f0ad"; 176 | $fa-var-tasks: "\f0ae"; 177 | $fa-var-filter: "\f0b0"; 178 | $fa-var-briefcase: "\f0b1"; 179 | $fa-var-arrows-alt: "\f0b2"; 180 | $fa-var-users: "\f0c0"; 181 | $fa-var-link: "\f0c1"; 182 | $fa-var-cloud: "\f0c2"; 183 | $fa-var-flask: "\f0c3"; 184 | $fa-var-scissors: "\f0c4"; 185 | $fa-var-files-o: "\f0c5"; 186 | $fa-var-paperclip: "\f0c6"; 187 | $fa-var-floppy-o: "\f0c7"; 188 | $fa-var-square: "\f0c8"; 189 | $fa-var-bars: "\f0c9"; 190 | $fa-var-list-ul: "\f0ca"; 191 | $fa-var-list-ol: "\f0cb"; 192 | $fa-var-strikethrough: "\f0cc"; 193 | $fa-var-underline: "\f0cd"; 194 | $fa-var-table: "\f0ce"; 195 | $fa-var-magic: "\f0d0"; 196 | $fa-var-truck: "\f0d1"; 197 | $fa-var-pinterest: "\f0d2"; 198 | $fa-var-pinterest-square: "\f0d3"; 199 | $fa-var-google-plus-square: "\f0d4"; 200 | $fa-var-google-plus: "\f0d5"; 201 | $fa-var-money: "\f0d6"; 202 | $fa-var-caret-down: "\f0d7"; 203 | $fa-var-caret-up: "\f0d8"; 204 | $fa-var-caret-left: "\f0d9"; 205 | $fa-var-caret-right: "\f0da"; 206 | $fa-var-columns: "\f0db"; 207 | $fa-var-sort: "\f0dc"; 208 | $fa-var-sort-asc: "\f0dd"; 209 | $fa-var-sort-desc: "\f0de"; 210 | $fa-var-envelope: "\f0e0"; 211 | $fa-var-linkedin: "\f0e1"; 212 | $fa-var-undo: "\f0e2"; 213 | $fa-var-gavel: "\f0e3"; 214 | $fa-var-tachometer: "\f0e4"; 215 | $fa-var-comment-o: "\f0e5"; 216 | $fa-var-comments-o: "\f0e6"; 217 | $fa-var-bolt: "\f0e7"; 218 | $fa-var-sitemap: "\f0e8"; 219 | $fa-var-umbrella: "\f0e9"; 220 | $fa-var-clipboard: "\f0ea"; 221 | $fa-var-lightbulb-o: "\f0eb"; 222 | $fa-var-exchange: "\f0ec"; 223 | $fa-var-cloud-download: "\f0ed"; 224 | $fa-var-cloud-upload: "\f0ee"; 225 | $fa-var-user-md: "\f0f0"; 226 | $fa-var-stethoscope: "\f0f1"; 227 | $fa-var-suitcase: "\f0f2"; 228 | $fa-var-bell-o: "\f0a2"; 229 | $fa-var-coffee: "\f0f4"; 230 | $fa-var-cutlery: "\f0f5"; 231 | $fa-var-file-text-o: "\f0f6"; 232 | $fa-var-building-o: "\f0f7"; 233 | $fa-var-hospital-o: "\f0f8"; 234 | $fa-var-ambulance: "\f0f9"; 235 | $fa-var-medkit: "\f0fa"; 236 | $fa-var-fighter-jet: "\f0fb"; 237 | $fa-var-beer: "\f0fc"; 238 | $fa-var-h-square: "\f0fd"; 239 | $fa-var-plus-square: "\f0fe"; 240 | $fa-var-angle-double-left: "\f100"; 241 | $fa-var-angle-double-right: "\f101"; 242 | $fa-var-angle-double-up: "\f102"; 243 | $fa-var-angle-double-down: "\f103"; 244 | $fa-var-angle-left: "\f104"; 245 | $fa-var-angle-right: "\f105"; 246 | $fa-var-angle-up: "\f106"; 247 | $fa-var-angle-down: "\f107"; 248 | $fa-var-desktop: "\f108"; 249 | $fa-var-laptop: "\f109"; 250 | $fa-var-tablet: "\f10a"; 251 | $fa-var-mobile: "\f10b"; 252 | $fa-var-circle-o: "\f10c"; 253 | $fa-var-quote-left: "\f10d"; 254 | $fa-var-quote-right: "\f10e"; 255 | $fa-var-spinner: "\f110"; 256 | $fa-var-circle: "\f111"; 257 | $fa-var-reply: "\f112"; 258 | $fa-var-github-alt: "\f113"; 259 | $fa-var-folder-o: "\f114"; 260 | $fa-var-folder-open-o: "\f115"; 261 | $fa-var-smile-o: "\f118"; 262 | $fa-var-frown-o: "\f119"; 263 | $fa-var-meh-o: "\f11a"; 264 | $fa-var-gamepad: "\f11b"; 265 | $fa-var-keyboard-o: "\f11c"; 266 | $fa-var-flag-o: "\f11d"; 267 | $fa-var-flag-checkered: "\f11e"; 268 | $fa-var-terminal: "\f120"; 269 | $fa-var-code: "\f121"; 270 | $fa-var-reply-all: "\f122"; 271 | $fa-var-mail-reply-all: "\f122"; 272 | $fa-var-star-half-o: "\f123"; 273 | $fa-var-location-arrow: "\f124"; 274 | $fa-var-crop: "\f125"; 275 | $fa-var-code-fork: "\f126"; 276 | $fa-var-chain-broken: "\f127"; 277 | $fa-var-question: "\f128"; 278 | $fa-var-info: "\f129"; 279 | $fa-var-exclamation: "\f12a"; 280 | $fa-var-superscript: "\f12b"; 281 | $fa-var-subscript: "\f12c"; 282 | $fa-var-eraser: "\f12d"; 283 | $fa-var-puzzle-piece: "\f12e"; 284 | $fa-var-microphone: "\f130"; 285 | $fa-var-microphone-slash: "\f131"; 286 | $fa-var-shield: "\f132"; 287 | $fa-var-calendar-o: "\f133"; 288 | $fa-var-fire-extinguisher: "\f134"; 289 | $fa-var-rocket: "\f135"; 290 | $fa-var-maxcdn: "\f136"; 291 | $fa-var-chevron-circle-left: "\f137"; 292 | $fa-var-chevron-circle-right: "\f138"; 293 | $fa-var-chevron-circle-up: "\f139"; 294 | $fa-var-chevron-circle-down: "\f13a"; 295 | $fa-var-html5: "\f13b"; 296 | $fa-var-css3: "\f13c"; 297 | $fa-var-anchor: "\f13d"; 298 | $fa-var-unlock-alt: "\f13e"; 299 | $fa-var-bullseye: "\f140"; 300 | $fa-var-ellipsis-h: "\f141"; 301 | $fa-var-ellipsis-v: "\f142"; 302 | $fa-var-rss-square: "\f143"; 303 | $fa-var-play-circle: "\f144"; 304 | $fa-var-ticket: "\f145"; 305 | $fa-var-minus-square: "\f146"; 306 | $fa-var-minus-square-o: "\f147"; 307 | $fa-var-level-up: "\f148"; 308 | $fa-var-level-down: "\f149"; 309 | $fa-var-check-square: "\f14a"; 310 | $fa-var-pencil-square: "\f14b"; 311 | $fa-var-external-link-square: "\f14c"; 312 | $fa-var-share-square: "\f14d"; 313 | $fa-var-compass: "\f14e"; 314 | $fa-var-caret-square-o-down: "\f150"; 315 | $fa-var-caret-square-o-up: "\f151"; 316 | $fa-var-caret-square-o-right: "\f152"; 317 | $fa-var-eur: "\f153"; 318 | $fa-var-gbp: "\f154"; 319 | $fa-var-usd: "\f155"; 320 | $fa-var-inr: "\f156"; 321 | $fa-var-jpy: "\f157"; 322 | $fa-var-rub: "\f158"; 323 | $fa-var-krw: "\f159"; 324 | $fa-var-btc: "\f15a"; 325 | $fa-var-file: "\f15b"; 326 | $fa-var-file-text: "\f15c"; 327 | $fa-var-sort-alpha-asc: "\f15d"; 328 | $fa-var-sort-alpha-desc: "\f15e"; 329 | $fa-var-sort-amount-asc: "\f160"; 330 | $fa-var-sort-amount-desc: "\f161"; 331 | $fa-var-sort-numeric-asc: "\f162"; 332 | $fa-var-sort-numeric-desc: "\f163"; 333 | $fa-var-thumbs-up: "\f164"; 334 | $fa-var-thumbs-down: "\f165"; 335 | $fa-var-youtube-square: "\f166"; 336 | $fa-var-youtube: "\f167"; 337 | $fa-var-xing: "\f168"; 338 | $fa-var-xing-square: "\f169"; 339 | $fa-var-youtube-play: "\f16a"; 340 | $fa-var-dropbox: "\f16b"; 341 | $fa-var-stack-overflow: "\f16c"; 342 | $fa-var-instagram: "\f16d"; 343 | $fa-var-flickr: "\f16e"; 344 | $fa-var-adn: "\f170"; 345 | $fa-var-bitbucket: "\f171"; 346 | $fa-var-bitbucket-square: "\f172"; 347 | $fa-var-tumblr: "\f173"; 348 | $fa-var-tumblr-square: "\f174"; 349 | $fa-var-long-arrow-down: "\f175"; 350 | $fa-var-long-arrow-up: "\f176"; 351 | $fa-var-long-arrow-left: "\f177"; 352 | $fa-var-long-arrow-right: "\f178"; 353 | $fa-var-apple: "\f179"; 354 | $fa-var-windows: "\f17a"; 355 | $fa-var-android: "\f17b"; 356 | $fa-var-linux: "\f17c"; 357 | $fa-var-dribbble: "\f17d"; 358 | $fa-var-skype: "\f17e"; 359 | $fa-var-foursquare: "\f180"; 360 | $fa-var-trello: "\f181"; 361 | $fa-var-female: "\f182"; 362 | $fa-var-male: "\f183"; 363 | $fa-var-gittip: "\f184"; 364 | $fa-var-sun-o: "\f185"; 365 | $fa-var-moon-o: "\f186"; 366 | $fa-var-archive: "\f187"; 367 | $fa-var-bug: "\f188"; 368 | $fa-var-vk: "\f189"; 369 | $fa-var-weibo: "\f18a"; 370 | $fa-var-renren: "\f18b"; 371 | $fa-var-pagelines: "\f18c"; 372 | $fa-var-stack-exchange: "\f18d"; 373 | $fa-var-arrow-circle-o-right: "\f18e"; 374 | $fa-var-arrow-circle-o-left: "\f190"; 375 | $fa-var-caret-square-o-left: "\f191"; 376 | $fa-var-dot-circle-o: "\f192"; 377 | $fa-var-wheelchair: "\f193"; 378 | $fa-var-vimeo-square: "\f194"; 379 | $fa-var-try: "\f195"; 380 | $fa-var-plus-square-o: "\f196"; 381 | 382 | -------------------------------------------------------------------------------- /public/css/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "spinning"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /public/css/fontello/css/animation.css: -------------------------------------------------------------------------------- 1 | /* 2 | Animation example, for spinners 3 | */ 4 | .animate-spin { 5 | -moz-animation: spin 2s infinite linear; 6 | -o-animation: spin 2s infinite linear; 7 | -webkit-animation: spin 2s infinite linear; 8 | animation: spin 2s infinite linear; 9 | display: inline-block; 10 | } 11 | @-moz-keyframes spin { 12 | 0% { 13 | -moz-transform: rotate(0deg); 14 | -o-transform: rotate(0deg); 15 | -webkit-transform: rotate(0deg); 16 | transform: rotate(0deg); 17 | } 18 | 19 | 100% { 20 | -moz-transform: rotate(359deg); 21 | -o-transform: rotate(359deg); 22 | -webkit-transform: rotate(359deg); 23 | transform: rotate(359deg); 24 | } 25 | } 26 | @-webkit-keyframes spin { 27 | 0% { 28 | -moz-transform: rotate(0deg); 29 | -o-transform: rotate(0deg); 30 | -webkit-transform: rotate(0deg); 31 | transform: rotate(0deg); 32 | } 33 | 34 | 100% { 35 | -moz-transform: rotate(359deg); 36 | -o-transform: rotate(359deg); 37 | -webkit-transform: rotate(359deg); 38 | transform: rotate(359deg); 39 | } 40 | } 41 | @-o-keyframes spin { 42 | 0% { 43 | -moz-transform: rotate(0deg); 44 | -o-transform: rotate(0deg); 45 | -webkit-transform: rotate(0deg); 46 | transform: rotate(0deg); 47 | } 48 | 49 | 100% { 50 | -moz-transform: rotate(359deg); 51 | -o-transform: rotate(359deg); 52 | -webkit-transform: rotate(359deg); 53 | transform: rotate(359deg); 54 | } 55 | } 56 | @-ms-keyframes spin { 57 | 0% { 58 | -moz-transform: rotate(0deg); 59 | -o-transform: rotate(0deg); 60 | -webkit-transform: rotate(0deg); 61 | transform: rotate(0deg); 62 | } 63 | 64 | 100% { 65 | -moz-transform: rotate(359deg); 66 | -o-transform: rotate(359deg); 67 | -webkit-transform: rotate(359deg); 68 | transform: rotate(359deg); 69 | } 70 | } 71 | @keyframes spin { 72 | 0% { 73 | -moz-transform: rotate(0deg); 74 | -o-transform: rotate(0deg); 75 | -webkit-transform: rotate(0deg); 76 | transform: rotate(0deg); 77 | } 78 | 79 | 100% { 80 | -moz-transform: rotate(359deg); 81 | -o-transform: rotate(359deg); 82 | -webkit-transform: rotate(359deg); 83 | transform: rotate(359deg); 84 | } 85 | } 86 | -------------------------------------------------------------------------------- /public/css/fontello/css/fontello-codes.css: -------------------------------------------------------------------------------- 1 | 2 | .icon-mail-1:before { content: '\e807'; } /* '' */ 3 | .icon-up-circle:before { content: '\e80c'; } /* '' */ 4 | .icon-down-circle-1:before { content: '\e80d'; } /* '' */ 5 | .icon-left-circle-1:before { content: '\e80e'; } /* '' */ 6 | .icon-right-circle-1:before { content: '\e80f'; } /* '' */ 7 | .icon-up-circle-1:before { content: '\e810'; } /* '' */ 8 | .icon-mail-2:before { content: '\e805'; } /* '' */ 9 | .icon-mail:before { content: '\e806'; } /* '' */ 10 | .icon-plus:before { content: '\e808'; } /* '' */ 11 | .icon-left-open:before { content: '\e801'; } /* '' */ 12 | .icon-right-open:before { content: '\e802'; } /* '' */ 13 | .icon-up-open:before { content: '\e803'; } /* '' */ 14 | .icon-down-circle:before { content: '\e809'; } /* '' */ 15 | .icon-left-circle:before { content: '\e80a'; } /* '' */ 16 | .icon-right-circle:before { content: '\e80b'; } /* '' */ 17 | .icon-down-open:before { content: '\e800'; } /* '' */ -------------------------------------------------------------------------------- /public/css/fontello/css/fontello-embedded.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'fontello'; 3 | src: url('../font/fontello.eot?74200426'); 4 | src: url('../font/fontello.eot?74200426#iefix') format('embedded-opentype'), 5 | url('../font/fontello.svg?74200426#fontello') format('svg'); 6 | font-weight: normal; 7 | font-style: normal; 8 | } 9 | @font-face { 10 | font-family: 'fontello'; 11 | src: url('data:application/octet-stream;base64,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') format('woff'), 12 | url('data:application/octet-stream;base64,AAEAAAAOAIAAAwBgT1MvMj4pST0AAADsAAAAVmNtYXDoGencAAABRAAAAVJjdnQgBtf/BAAADTwAAAAcZnBnbYoKeDsAAA1YAAAJkWdhc3AAAAAQAAANNAAAAAhnbHlmB31BQwAAApgAAAX8aGVhZAGQMuQAAAiUAAAANmhoZWEHlgNkAAAIzAAAACRobXR4PYYAAAAACPAAAABEbG9jYQo0C7YAAAk0AAAAJG1heHAA2wnBAAAJWAAAACBuYW1lzJ0aHAAACXgAAALNcG9zdPibk+YAAAxIAAAA63ByZXCSoZr/AAAW7AAAAFYAAQOeAZAABQAIAnoCvAAAAIwCegK8AAAB4AAxAQIAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABA6ADoEANS/2oAWgNSAJcAAAABAAAAAAAAAAAAAwAAAAMAAAAcAAEAAAAAAEwAAwABAAAAHAAEADAAAAAIAAgAAgAAAADoA+gQ//8AAAAA6ADoBf//AAAYARgAAAEAAAAAAAAAAAAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAPoAqIABgAGswUBASgrETcJARcBJ5QBYAFglP4MlAIOlP6hAV+U/gyUAAABAAD/agKIA1IABwAGswYCASgrETcBFwkBBwGUAWCU/qEBX5T+oAFelQFflP6g/qCUAWAAAQAA/2oCiANSAAYABrMGAwEoKxUJATcBFwEBYP6glAFglP4MAgFgAWCU/qGV/gwAAQAAAAAD6AKiAAYABrMEAgEoKzUBNwEHCQEBYJQB9JT+oP6grgFglP4MlAFf/qEABAAAAAADdgKVAAQABwAKAA0AJkAjDQwLCgkIBwQDAAoAAQFCAAEAAAFNAAEBAFEAAAEARRMRAhErCQEhARcBIQE3JREhEQUCRAEC/OsBA4f+hAL4/oS6AQH8igEDATL+9QEIfwHl/pY18v4EAfzzAAQAAP/jA+gC2QAEAAcADAAPAC9ALA8ODQwLCAcGBQMCAQwAAQFCAAEAAAFNAAEBAFECAQABAEUAAAoJAAQABAMPKxUBFzcBJREXJzUhFQE/AREBRLCwAUT8GP7+A+j+DPb+HQFWZGT+qnIBnpPsjY3+4zGT/mIAAAIAAAAAA48CrQAEAAkAIkAfCQYFBAEABgEAAUIAAAEBAE0AAAABUQABAAFFFBICESsBJTUhFQElESERAdP+PwN9/kQBvPyDAW7SbW3+s9L+SwG2AAEAAP+fA48DHQALACtAKAAEAwEETQYFAgMCAQABAwBZAAQEAVEAAQQBRQAAAAsACxERERERBxQrARUhESMRITUhETMRA4/+sd/+sQFP3wHO3/6wAVDfAU/+sQAAAgAA/2kD6ANRAAwAEgAdQBoSERAPDg0GAAEBQgABAQpDAAAACwBEFRMCESsBFA4BIC4BED4BIB4BATcnBycHA+iG5v7w5oaG5gEQ5ob+DOhHoaFHAV2I5oaG5gEQ5oaG5v6+6UehoUcAAAAAAgAA/2kD6ANRAAwAEgAdQBoSERAPDg0GAAEBQgABAQpDAAAACwBEFRMCESsBFA4BIC4BED4BIB4BATcnNycHA+iG5v7w5oaG5gEQ5ob+O0ehoUfpAV2I5oaG5gEQ5oaG5v6QR6GhR+gAAAAAAgAA/2kD6ANRAAwAEgAdQBoSERAPDg0GAAEBQgABAQpDAAAACwBEFRMCESsBFA4BIC4BED4BIB4BATcnBxcHA+iG5v7w5oaG5gEQ5ob93enpR6GhAV2I5oaG5gEQ5oaG5v6Q6OhHoaEAAAAAAgAA/2kD6ANRAAwAEgAdQBoSERAPDg0GAAEBQgABAQpDAAAACwBEFRMCESsBFA4BIC4BED4BIB4BBTcnBxc3A+iG5v7w5oaG5gEQ5ob+rUfo6EehAV2I5oaG5gEQ5oaG5v5H6elHoQACAAD/ngOPAyAACAAPADNAMAoBAAIBQgUEAgIDAAMCAGgAAABpAAEDAwFPAAEBA1EAAwEDRQkJCQ8JDxEUExIGEysBFAAEABIABAAFFzcjNSMVA4/++v6Q/vgCAQQBdAEC/WTf3qVwAV64/voCAQoBbAEMBv8Avd7e4eEAAgAA/58DkAMfAAgADwA4QDUJAQMBCgECAwsBAAIDQgABAAMCAQNZAAIAAAJNAAICAFMEAQACAEcBAA8ODQwFBAAIAQgFDysFIgAQAAQAEgADBxc1MzUjAdG5/voBBgFyAQQC/vi53t7h4WEBCAFuAQoE/v7+iv8AApvf3qZwAAACAAD/nQOPAyEACAAPADhANQsBAgAKAQMCCQEBAwNCBAEAAAIDAAJZAAMBAQNNAAMDAVMAAQMBRwEADw4NDAUEAAgBCAUPKwEyABAABAASABM3JxUjFTMB0bgBBv76/pD++AIBBLve3uHhAx3++v6O/vwEAQwBagEO/V7g3qZwAAIAAP+dA48DHQAIAA8AMUAuCgECAAFCAAACAGoFBAICAwJqAAMBAQNNAAMDAVQAAQMBSAkJCQ8JDxEUExIGEysTNAAgABAABAAlJwczFTM1EgEEAXMBBv76/pD++AKf4N6ncAFeuQEG/vr+jv78BAEMt97e4eEAAAEAAAABAAAzaCO7Xw889QALA+gAAAAAz0STwgAAAADPRFuCAAD/aQPoA1IAAAAIAAIAAAAAAAAAAQAAA1L/agBaA+gAAAAAA+gAAQAAAAAAAAAAAAAAAAAAABED6AAAA+gAAAKIAAACiAAAA+gAAAN2AAAD6AAAA6AAAAOgAAAD6AAAA+gAAAPoAAAD6AAAA6AAAAOgAAADoAAAA6AAAAAAAAAAGAAyAEoAYgCaANYBAAEuAWQBmgHQAgQCQgKCAsIC/gABAAAAEQATAAQAAAAAAAIADgAbAG4AAABJCZEAAAAAAAAAEgDeAAEAAAAAAAAANQAAAAEAAAAAAAEACAA1AAEAAAAAAAIABwA9AAEAAAAAAAMACABEAAEAAAAAAAQACABMAAEAAAAAAAUACwBUAAEAAAAAAAYACABfAAEAAAAAAAoAKwBnAAEAAAAAAAsAEwCSAAMAAQQJAAAAagClAAMAAQQJAAEAEAEPAAMAAQQJAAIADgEfAAMAAQQJAAMAEAEtAAMAAQQJAAQAEAE9AAMAAQQJAAUAFgFNAAMAAQQJAAYAEAFjAAMAAQQJAAoAVgFzAAMAAQQJAAsAJgHJQ29weXJpZ2h0IChDKSAyMDE0IGJ5IG9yaWdpbmFsIGF1dGhvcnMgQCBmb250ZWxsby5jb21mb250ZWxsb1JlZ3VsYXJmb250ZWxsb2ZvbnRlbGxvVmVyc2lvbiAxLjBmb250ZWxsb0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAEMAbwBwAHkAcgBpAGcAaAB0ACAAKABDACkAIAAyADAAMQA0ACAAYgB5ACAAbwByAGkAZwBpAG4AYQBsACAAYQB1AHQAaABvAHIAcwAgAEAAIABmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQBmAG8AbgB0AGUAbABsAG8AUgBlAGcAdQBsAGEAcgBmAG8AbgB0AGUAbABsAG8AZgBvAG4AdABlAGwAbABvAFYAZQByAHMAaQBvAG4AIAAxAC4AMABmAG8AbgB0AGUAbABsAG8ARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREJZG93bi1vcGVuCWxlZnQtb3BlbgpyaWdodC1vcGVuB3VwLW9wZW4GbWFpbC0yBG1haWwGbWFpbC0xBHBsdXMLZG93bi1jaXJjbGULbGVmdC1jaXJjbGUMcmlnaHQtY2lyY2xlCXVwLWNpcmNsZQ1kb3duLWNpcmNsZS0xDWxlZnQtY2lyY2xlLTEOcmlnaHQtY2lyY2xlLTELdXAtY2lyY2xlLTEAAAAAAQAB//8ADwAAAAAAAAAAAAAAAAAAAAAAMgAyA1L/aQNS/2mwACywIGBmLbABLCBkILDAULAEJlqwBEVbWCEjIRuKWCCwUFBYIbBAWRsgsDhQWCGwOFlZILAKRWFksChQWCGwCkUgsDBQWCGwMFkbILDAUFggZiCKimEgsApQWGAbILAgUFghsApgGyCwNlBYIbA2YBtgWVlZG7AAK1lZI7AAUFhlWVktsAIsIEUgsAQlYWQgsAVDUFiwBSNCsAYjQhshIVmwAWAtsAMsIyEjISBksQViQiCwBiNCsgoAAiohILAGQyCKIIqwACuxMAUlilFYYFAbYVJZWCNZISCwQFNYsAArGyGwQFkjsABQWGVZLbAELLAHQyuyAAIAQ2BCLbAFLLAHI0IjILAAI0JhsIBisAFgsAQqLbAGLCAgRSCwAkVjsAFFYmBEsAFgLbAHLCAgRSCwACsjsQIEJWAgRYojYSBkILAgUFghsAAbsDBQWLAgG7BAWVkjsABQWGVZsAMlI2FERLABYC2wCCyxBQVFsAFhRC2wCSywAWAgILAJQ0qwAFBYILAJI0JZsApDSrAAUlggsAojQlktsAosILgEAGIguAQAY4ojYbALQ2AgimAgsAsjQiMtsAssS1RYsQcBRFkksA1lI3gtsAwsS1FYS1NYsQcBRFkbIVkksBNlI3gtsA0ssQAMQ1VYsQwMQ7ABYUKwCitZsABDsAIlQrEJAiVCsQoCJUKwARYjILADJVBYsQEAQ2CwBCVCioogiiNhsAkqISOwAWEgiiNhsAkqIRuxAQBDYLACJUKwAiVhsAkqIVmwCUNHsApDR2CwgGIgsAJFY7ABRWJgsQAAEyNEsAFDsAA+sgEBAUNgQi2wDiyxAAVFVFgAsAwjQiBgsAFhtQ0NAQALAEJCimCxDQUrsG0rGyJZLbAPLLEADistsBAssQEOKy2wESyxAg4rLbASLLEDDistsBMssQQOKy2wFCyxBQ4rLbAVLLEGDistsBYssQcOKy2wFyyxCA4rLbAYLLEJDistsBkssAgrsQAFRVRYALAMI0IgYLABYbUNDQEACwBCQopgsQ0FK7BtKxsiWS2wGiyxABkrLbAbLLEBGSstsBwssQIZKy2wHSyxAxkrLbAeLLEEGSstsB8ssQUZKy2wICyxBhkrLbAhLLEHGSstsCIssQgZKy2wIyyxCRkrLbAkLCA8sAFgLbAlLCBgsA1gIEMjsAFgQ7ACJWGwAWCwJCohLbAmLLAlK7AlKi2wJywgIEcgILACRWOwAUViYCNhOCMgilVYIEcgILACRWOwAUViYCNhOBshWS2wKCyxAAVFVFgAsAEWsCcqsAEVMBsiWS2wKSywCCuxAAVFVFgAsAEWsCcqsAEVMBsiWS2wKiwgNbABYC2wKywAsANFY7ABRWKwACuwAkVjsAFFYrAAK7AAFrQAAAAAAEQ+IzixKgEVKi2wLCwgPCBHILACRWOwAUViYLAAQ2E4LbAtLC4XPC2wLiwgPCBHILACRWOwAUViYLAAQ2GwAUNjOC2wLyyxAgAWJSAuIEewACNCsAIlSYqKRyNHI2EgWGIbIVmwASNCsi4BARUUKi2wMCywABawBCWwBCVHI0cjYbAGRStlii4jICA8ijgtsDEssAAWsAQlsAQlIC5HI0cjYSCwBCNCsAZFKyCwYFBYILBAUVizAiADIBuzAiYDGllCQiMgsAhDIIojRyNHI2EjRmCwBEOwgGJgILAAKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwgGJhIyAgsAQmI0ZhOBsjsAhDRrACJbAIQ0cjRyNhYCCwBEOwgGJgIyCwACsjsARDYLAAK7AFJWGwBSWwgGKwBCZhILAEJWBkI7ADJWBkUFghGyMhWSMgILAEJiNGYThZLbAyLLAAFiAgILAFJiAuRyNHI2EjPDgtsDMssAAWILAII0IgICBGI0ewACsjYTgtsDQssAAWsAMlsAIlRyNHI2GwAFRYLiA8IyEbsAIlsAIlRyNHI2EgsAUlsAQlRyNHI2GwBiWwBSVJsAIlYbABRWMjIFhiGyFZY7ABRWJgIy4jICA8ijgjIVktsDUssAAWILAIQyAuRyNHI2EgYLAgYGawgGIjICA8ijgtsDYsIyAuRrACJUZSWCA8WS6xJgEUKy2wNywjIC5GsAIlRlBYIDxZLrEmARQrLbA4LCMgLkawAiVGUlggPFkjIC5GsAIlRlBYIDxZLrEmARQrLbA5LLAwKyMgLkawAiVGUlggPFkusSYBFCstsDossDEriiAgPLAEI0KKOCMgLkawAiVGUlggPFkusSYBFCuwBEMusCYrLbA7LLAAFrAEJbAEJiAuRyNHI2GwBkUrIyA8IC4jOLEmARQrLbA8LLEIBCVCsAAWsAQlsAQlIC5HI0cjYSCwBCNCsAZFKyCwYFBYILBAUVizAiADIBuzAiYDGllCQiMgR7AEQ7CAYmAgsAArIIqKYSCwAkNgZCOwA0NhZFBYsAJDYRuwA0NgWbADJbCAYmGwAiVGYTgjIDwjOBshICBGI0ewACsjYTghWbEmARQrLbA9LLAwKy6xJgEUKy2wPiywMSshIyAgPLAEI0IjOLEmARQrsARDLrAmKy2wPyywABUgR7AAI0KyAAEBFRQTLrAsKi2wQCywABUgR7AAI0KyAAEBFRQTLrAsKi2wQSyxAAEUE7AtKi2wQiywLyotsEMssAAWRSMgLiBGiiNhOLEmARQrLbBELLAII0KwQystsEUssgAAPCstsEYssgABPCstsEcssgEAPCstsEgssgEBPCstsEkssgAAPSstsEossgABPSstsEsssgEAPSstsEwssgEBPSstsE0ssgAAOSstsE4ssgABOSstsE8ssgEAOSstsFAssgEBOSstsFEssgAAOystsFIssgABOystsFMssgEAOystsFQssgEBOystsFUssgAAPistsFYssgABPistsFcssgEAPistsFgssgEBPistsFkssgAAOistsFossgABOistsFsssgEAOistsFwssgEBOistsF0ssDIrLrEmARQrLbBeLLAyK7A2Ky2wXyywMiuwNystsGAssAAWsDIrsDgrLbBhLLAzKy6xJgEUKy2wYiywMyuwNistsGMssDMrsDcrLbBkLLAzK7A4Ky2wZSywNCsusSYBFCstsGYssDQrsDYrLbBnLLA0K7A3Ky2waCywNCuwOCstsGkssDUrLrEmARQrLbBqLLA1K7A2Ky2wayywNSuwNystsGwssDUrsDgrLbBtLCuwCGWwAyRQeLABFTAtAAAAS7gAyFJYsQEBjlm5CAAIAGMgsAEjRLADI3CyBCgJRVJEsgoCByqxBgFEsSQBiFFYsECIWLEGA0SxJgGIUVi4BACIWLEGAURZWVlZuAH/hbAEjbEFAEQAAA==') format('truetype'); 13 | } 14 | /* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ 15 | /* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ 16 | /* 17 | @media screen and (-webkit-min-device-pixel-ratio:0) { 18 | @font-face { 19 | font-family: 'fontello'; 20 | src: url('../font/fontello.svg?74200426#fontello') format('svg'); 21 | } 22 | } 23 | */ 24 | 25 | [class^="icon-"]:before, [class*=" icon-"]:before { 26 | font-family: "fontello"; 27 | font-style: normal; 28 | font-weight: normal; 29 | speak: none; 30 | 31 | display: inline-block; 32 | text-decoration: inherit; 33 | width: 1em; 34 | margin-right: .2em; 35 | text-align: center; 36 | /* opacity: .8; */ 37 | 38 | /* For safety - reset parent styles, that can break glyph codes*/ 39 | font-variant: normal; 40 | text-transform: none; 41 | 42 | /* fix buttons height, for twitter bootstrap */ 43 | line-height: 1em; 44 | 45 | /* Animation center compensation - margins should be symmetric */ 46 | /* remove if not needed */ 47 | margin-left: .2em; 48 | 49 | /* you can be more comfortable with increased icons size */ 50 | /* font-size: 120%; */ 51 | 52 | /* Uncomment for 3D effect */ 53 | /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ 54 | } 55 | .icon-mail-1:before { content: '\e807'; } /* '' */ 56 | .icon-up-circle:before { content: '\e80c'; } /* '' */ 57 | .icon-down-circle-1:before { content: '\e80d'; } /* '' */ 58 | .icon-left-circle-1:before { content: '\e80e'; } /* '' */ 59 | .icon-right-circle-1:before { content: '\e80f'; } /* '' */ 60 | .icon-up-circle-1:before { content: '\e810'; } /* '' */ 61 | .icon-mail-2:before { content: '\e805'; } /* '' */ 62 | .icon-mail:before { content: '\e806'; } /* '' */ 63 | .icon-plus:before { content: '\e808'; } /* '' */ 64 | .icon-left-open:before { content: '\e801'; } /* '' */ 65 | .icon-right-open:before { content: '\e802'; } /* '' */ 66 | .icon-up-open:before { content: '\e803'; } /* '' */ 67 | .icon-down-circle:before { content: '\e809'; } /* '' */ 68 | .icon-left-circle:before { content: '\e80a'; } /* '' */ 69 | .icon-right-circle:before { content: '\e80b'; } /* '' */ 70 | .icon-down-open:before { content: '\e800'; } /* '' */ -------------------------------------------------------------------------------- /public/css/fontello/css/fontello-ie7-codes.css: -------------------------------------------------------------------------------- 1 | 2 | .icon-mail-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 3 | .icon-up-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 4 | .icon-down-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 5 | .icon-left-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 6 | .icon-right-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 7 | .icon-up-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 8 | .icon-mail-2 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 9 | .icon-mail { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 10 | .icon-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 11 | .icon-left-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 12 | .icon-right-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 13 | .icon-up-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 14 | .icon-down-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 15 | .icon-left-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 16 | .icon-right-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 17 | .icon-down-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -------------------------------------------------------------------------------- /public/css/fontello/css/fontello-ie7.css: -------------------------------------------------------------------------------- 1 | [class^="icon-"], [class*=" icon-"] { 2 | font-family: 'fontello'; 3 | font-style: normal; 4 | font-weight: normal; 5 | 6 | /* fix buttons height */ 7 | line-height: 1em; 8 | 9 | /* you can be more comfortable with increased icons size */ 10 | /* font-size: 120%; */ 11 | } 12 | 13 | .icon-mail-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 14 | .icon-up-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 15 | .icon-down-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 16 | .icon-left-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 17 | .icon-right-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 18 | .icon-up-circle-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 19 | .icon-mail-2 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 20 | .icon-mail { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 21 | .icon-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 22 | .icon-left-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 23 | .icon-right-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 24 | .icon-up-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 25 | .icon-down-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 26 | .icon-left-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 27 | .icon-right-circle { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } 28 | .icon-down-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -------------------------------------------------------------------------------- /public/css/fontello/css/fontello.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'fontello'; 3 | src: url('../font/fontello.eot?13439518'); 4 | src: url('../font/fontello.eot?13439518#iefix') format('embedded-opentype'), 5 | url('../font/fontello.woff?13439518') format('woff'), 6 | url('../font/fontello.ttf?13439518') format('truetype'), 7 | url('../font/fontello.svg?13439518#fontello') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | /* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ 12 | /* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ 13 | /* 14 | @media screen and (-webkit-min-device-pixel-ratio:0) { 15 | @font-face { 16 | font-family: 'fontello'; 17 | src: url('../font/fontello.svg?13439518#fontello') format('svg'); 18 | } 19 | } 20 | */ 21 | 22 | [class^="icon-"]:before, [class*=" icon-"]:before { 23 | font-family: "fontello"; 24 | font-style: normal; 25 | font-weight: normal; 26 | speak: none; 27 | 28 | display: inline-block; 29 | text-decoration: inherit; 30 | width: 1em; 31 | margin-right: .2em; 32 | text-align: center; 33 | /* opacity: .8; */ 34 | 35 | /* For safety - reset parent styles, that can break glyph codes*/ 36 | font-variant: normal; 37 | text-transform: none; 38 | 39 | /* fix buttons height, for twitter bootstrap */ 40 | line-height: 1em; 41 | 42 | /* Animation center compensation - margins should be symmetric */ 43 | /* remove if not needed */ 44 | margin-left: .2em; 45 | 46 | /* you can be more comfortable with increased icons size */ 47 | /* font-size: 120%; */ 48 | 49 | /* Uncomment for 3D effect */ 50 | /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ 51 | } 52 | 53 | .icon-mail-1:before { content: '\e807'; } /* '' */ 54 | .icon-up-circle:before { content: '\e80c'; } /* '' */ 55 | .icon-down-circle-1:before { content: '\e80d'; } /* '' */ 56 | .icon-left-circle-1:before { content: '\e80e'; } /* '' */ 57 | .icon-right-circle-1:before { content: '\e80f'; } /* '' */ 58 | .icon-up-circle-1:before { content: '\e810'; } /* '' */ 59 | .icon-mail-2:before { content: '\e805'; } /* '' */ 60 | .icon-mail:before { content: '\e806'; } /* '' */ 61 | .icon-plus:before { content: '\e808'; } /* '' */ 62 | .icon-left-open:before { content: '\e801'; } /* '' */ 63 | .icon-right-open:before { content: '\e802'; } /* '' */ 64 | .icon-up-open:before { content: '\e803'; } /* '' */ 65 | .icon-down-circle:before { content: '\e809'; } /* '' */ 66 | .icon-left-circle:before { content: '\e80a'; } /* '' */ 67 | .icon-right-circle:before { content: '\e80b'; } /* '' */ 68 | .icon-down-open:before { content: '\e800'; } /* '' */ -------------------------------------------------------------------------------- /public/css/fontello/font/fontello.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fontello/font/fontello.eot -------------------------------------------------------------------------------- /public/css/fontello/font/fontello.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Copyright (C) 2014 by original authors @ fontello.com 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /public/css/fontello/font/fontello.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fontello/font/fontello.ttf -------------------------------------------------------------------------------- /public/css/fontello/font/fontello.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fontello/font/fontello.woff -------------------------------------------------------------------------------- /public/css/fonts.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) */ 2 | 3 | /* 4 | * Open Sans 5 | ================================================================================ */ 6 | @font-face { 7 | font-family: 'opensans-regular'; 8 | src: url('fonts/opensans/OpenSans-Regular-webfont.eot'); 9 | src: url('fonts/opensans/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'), 10 | url('fonts/opensans/OpenSans-Regular-webfont.woff') format('woff'), 11 | url('fonts/opensans/OpenSans-Regular-webfont.ttf') format('truetype'), 12 | url('fonts/opensans/OpenSans-Regular-webfont.svg#open_sansregular') format('svg'); 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | @font-face { 17 | font-family: 'opensans-italic'; 18 | src: url('fonts/opensans/OpenSans-Italic-webfont.eot'); 19 | src: url('fonts/opensans/OpenSans-Italic-webfont.eot?#iefix') format('embedded-opentype'), 20 | url('fonts/opensans/OpenSans-Italic-webfont.woff') format('woff'), 21 | url('fonts/opensans/OpenSans-Italic-webfont.ttf') format('truetype'), 22 | url('fonts/opensans/OpenSans-Italic-webfont.svg#open_sansitalic') format('svg'); 23 | font-weight: normal; 24 | font-style: normal; 25 | } 26 | @font-face { 27 | font-family: 'opensans-light'; 28 | src: url('fonts/opensans/OpenSans-Light-webfont.eot'); 29 | src: url('fonts/opensans/OpenSans-Light-webfont.eot?#iefix') format('embedded-opentype'), 30 | url('fonts/opensans/OpenSans-Light-webfont.woff') format('woff'), 31 | url('fonts/opensans/OpenSans-Light-webfont.ttf') format('truetype'), 32 | url('fonts/opensans/OpenSans-Light-webfont.svg#open_sanslight') format('svg'); 33 | font-weight: normal; 34 | font-style: normal; 35 | } 36 | @font-face { 37 | font-family: 'opensans-light-italic'; 38 | src: url('fonts/opensans/OpenSans-LightItalic-webfont.eot'); 39 | src: url('fonts/opensans/OpenSans-LightItalic-webfont.eot?#iefix') format('embedded-opentype'), 40 | url('fonts/opensans/OpenSans-LightItalic-webfont.woff') format('woff'), 41 | url('fonts/opensans/OpenSans-LightItalic-webfont.ttf') format('truetype'), 42 | url('fonts/opensans/OpenSans-LightItalic-webfont.svg#open_sanslight_italic') format('svg'); 43 | font-weight: normal; 44 | font-style: normal; 45 | } 46 | @font-face { 47 | font-family: 'opensans-semibold'; 48 | src: url('fonts/opensans/OpenSans-Semibold-webfont.eot'); 49 | src: url('fonts/opensans/OpenSans-Semibold-webfont.eot?#iefix') format('embedded-opentype'), 50 | url('fonts/opensans/OpenSans-Semibold-webfont.woff') format('woff'), 51 | url('fonts/opensans/OpenSans-Semibold-webfont.ttf') format('truetype'), 52 | url('fonts/opensans/OpenSans-Semibold-webfont.svg#open_sanssemibold') format('svg'); 53 | font-weight: normal; 54 | font-style: normal; 55 | } 56 | @font-face { 57 | font-family: 'opensans-semibold-italic'; 58 | src: url('fonts/opensans/OpenSans-SemiboldItalic-webfont.eot'); 59 | src: url('fonts/opensans/OpenSans-SemiboldItalic-webfont.eot?#iefix') format('embedded-opentype'), 60 | url('fonts/opensans/OpenSans-SemiboldItalic-webfont.woff') format('woff'), 61 | url('fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf') format('truetype'), 62 | url('fonts/opensans/OpenSans-SemiboldItalic-webfont.svg#open_sanssemibold_italic') format('svg'); 63 | font-weight: normal; 64 | font-style: normal; 65 | } 66 | @font-face { 67 | font-family: 'opensans-bold'; 68 | src: url('fonts/opensans/OpenSans-Bold-webfont.eot'); 69 | src: url('fonts/opensans/OpenSans-Bold-webfont.eot?#iefix') format('embedded-opentype'), 70 | url('fonts/opensans/OpenSans-Bold-webfont.woff') format('woff'), 71 | url('fonts/opensans/OpenSans-Bold-webfont.ttf') format('truetype'), 72 | url('fonts/opensans/OpenSans-Bold-webfont.svg#open_sansbold') format('svg'); 73 | font-weight: normal; 74 | font-style: normal; 75 | } 76 | @font-face { 77 | font-family: 'opensans-bold-italic'; 78 | src: url('fonts/opensans/OpenSans-BoldItalic-webfont.eot'); 79 | src: url('fonts/opensans/OpenSans-BoldItalic-webfont.eot?#iefix') format('embedded-opentype'), 80 | url('fonts/opensans/OpenSans-BoldItalic-webfont.woff') format('woff'), 81 | url('fonts/opensans/OpenSans-BoldItalic-webfont.ttf') format('truetype'), 82 | url('fonts/opensans/OpenSans-BoldItalic-webfont.svg#open_sansbold_italic') format('svg'); 83 | font-weight: normal; 84 | font-style: normal; 85 | } 86 | @font-face { 87 | font-family: 'opensans-extrabold'; 88 | src: url('fonts/opensans/OpenSans-ExtraBold-webfont.eot'); 89 | src: url('fonts/opensans/OpenSans-ExtraBold-webfont.eot?#iefix') format('embedded-opentype'), 90 | url('fonts/opensans/OpenSans-ExtraBold-webfont.woff') format('woff'), 91 | url('fonts/opensans/OpenSans-ExtraBold-webfont.ttf') format('truetype'), 92 | url('fonts/opensans/OpenSans-ExtraBold-webfont.svg#open_sansextrabold') format('svg'); 93 | font-weight: normal; 94 | font-style: normal; 95 | } 96 | @font-face { 97 | font-family: 'opensans-extrabold-italic'; 98 | src: url('fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot'); 99 | src: url('fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot?#iefix') format('embedded-opentype'), 100 | url('fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff') format('woff'), 101 | url('fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf') format('truetype'), 102 | url('fonts/opensans/OpenSans-ExtraBoldItalic-webfont.svg#open_sansextrabold_italic') format('svg'); 103 | font-weight: normal; 104 | font-style: normal; 105 | } 106 | 107 | /* 108 | * Libre Baskerville 109 | ================================================================================ */ 110 | @font-face { 111 | font-family: 'librebaskerville-bold'; 112 | src: url('fonts/librebaskerville/librebaskerville-bold-webfont.eot'); 113 | src: url('fonts/librebaskerville/librebaskerville-bold-webfont.eot?#iefix') format('embedded-opentype'), 114 | url('fonts/librebaskerville/librebaskerville-bold-webfont.woff') format('woff'), 115 | url('fonts/librebaskerville/librebaskerville-bold-webfont.ttf') format('truetype'), 116 | url('fonts/librebaskerville/librebaskerville-bold-webfont.svg#libre_baskervillebold') format('svg'); 117 | font-weight: normal; 118 | font-style: normal; 119 | } 120 | @font-face { 121 | font-family: 'librebaskerville-italic'; 122 | src: url('fonts/librebaskerville/librebaskerville-italic-webfont.eot'); 123 | src: url('fonts/librebaskerville/librebaskerville-italic-webfont.eot?#iefix') format('embedded-opentype'), 124 | url('fonts/librebaskerville/librebaskerville-italic-webfont.woff') format('woff'), 125 | url('fonts/librebaskerville/librebaskerville-italic-webfont.ttf') format('truetype'), 126 | url('fonts/librebaskerville/librebaskerville-italic-webfont.svg#libre_baskervilleitalic') format('svg'); 127 | font-weight: normal; 128 | font-style: normal; 129 | } 130 | @font-face { 131 | font-family: 'librebaskerville-regular'; 132 | src: url('fonts/librebaskerville/librebaskerville-regular-webfont.eot'); 133 | src: url('fonts/librebaskerville/librebaskerville-regular-webfont.eot?#iefix') format('embedded-opentype'), 134 | url('fonts/librebaskerville/librebaskerville-regular-webfont.woff') format('woff'), 135 | url('fonts/librebaskerville/librebaskerville-regular-webfont.ttf') format('truetype'), 136 | url('fonts/librebaskerville/librebaskerville-regular-webfont.svg#libre_baskervilleregular') format('svg'); 137 | font-weight: normal; 138 | font-style: normal; 139 | } 140 | 141 | 142 | /* 143 | * FIXED for Font-Face Chrome Rendering 144 | ================================================================================ */ 145 | @media screen and (-webkit-min-device-pixel-ratio:0) { 146 | 147 | @font-face { 148 | font-family: 'opensans-semibold'; 149 | src: url('fonts/opensans/OpenSans-Semibold-webfont.svg#open_sanssemibold') format('svg'); 150 | } 151 | 152 | @font-face { 153 | font-family: 'opensans-bold'; 154 | src: url('fonts/opensans/OpenSans-Bold-webfont.svg#open_sansbold') format('svg'); 155 | } 156 | 157 | } -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-bold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-bold-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-bold-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-bold-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-bold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-bold-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-italic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-italic-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-italic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-italic-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-italic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-italic-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-regular-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-regular-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/librebaskerville/librebaskerville-regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/librebaskerville/librebaskerville-regular-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Bold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Bold-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Bold-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Bold-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Bold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Bold-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-BoldItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-BoldItalic-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-BoldItalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-BoldItalic-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-BoldItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-BoldItalic-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-ExtraBold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-ExtraBold-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-ExtraBold-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-ExtraBold-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-ExtraBold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-ExtraBold-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Italic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Italic-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Italic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Italic-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Italic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Italic-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Light-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Light-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Light-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Light-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Light-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Light-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-LightItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-LightItalic-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-LightItalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-LightItalic-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-LightItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-LightItalic-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Regular-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Regular-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Regular-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Semibold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Semibold-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Semibold-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Semibold-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-Semibold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-Semibold-webfont.woff -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-SemiboldItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-SemiboldItalic-webfont.eot -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf -------------------------------------------------------------------------------- /public/css/fonts/opensans/OpenSans-SemiboldItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/css/fonts/opensans/OpenSans-SemiboldItalic-webfont.woff -------------------------------------------------------------------------------- /public/css/magnific-popup.css: -------------------------------------------------------------------------------- 1 | /* Magnific Popup CSS */ 2 | .mfp-bg { 3 | top: 0; 4 | left: 0; 5 | width: 100%; 6 | height: 100%; 7 | z-index: 1042; 8 | overflow: hidden; 9 | position: fixed; 10 | background: #000; 11 | opacity: 0.8; 12 | filter: alpha(opacity=80); } 13 | 14 | .mfp-wrap { 15 | top: 0; 16 | left: 0; 17 | width: 100%; 18 | height: 100%; 19 | z-index: 1043; 20 | position: fixed; 21 | outline: none !important; 22 | -webkit-backface-visibility: hidden; } 23 | 24 | .mfp-container { 25 | text-align: center; 26 | position: absolute; 27 | width: 100%; 28 | height: 100%; 29 | left: 0; 30 | top: 0; 31 | padding: 0 8px; 32 | -webkit-box-sizing: border-box; 33 | -moz-box-sizing: border-box; 34 | box-sizing: border-box; } 35 | 36 | .mfp-container:before { 37 | content: ''; 38 | display: inline-block; 39 | height: 100%; 40 | vertical-align: middle; } 41 | 42 | .mfp-align-top .mfp-container:before { 43 | display: none; } 44 | 45 | .mfp-content { 46 | position: relative; 47 | display: inline-block; 48 | vertical-align: middle; 49 | margin: 0 auto; 50 | text-align: left; 51 | z-index: 1045; } 52 | 53 | .mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content { 54 | width: 100%; 55 | cursor: auto; } 56 | 57 | .mfp-ajax-cur { 58 | cursor: progress; } 59 | 60 | .mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { 61 | cursor: -moz-zoom-out; 62 | cursor: -webkit-zoom-out; 63 | cursor: zoom-out; } 64 | 65 | .mfp-zoom { 66 | cursor: pointer; 67 | cursor: -webkit-zoom-in; 68 | cursor: -moz-zoom-in; 69 | cursor: zoom-in; } 70 | 71 | .mfp-auto-cursor .mfp-content { 72 | cursor: auto; } 73 | 74 | .mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter { 75 | -webkit-user-select: none; 76 | -moz-user-select: none; 77 | user-select: none; } 78 | 79 | .mfp-loading.mfp-figure { 80 | display: none; } 81 | 82 | .mfp-hide { 83 | display: none !important; } 84 | 85 | .mfp-preloader { 86 | color: #cccccc; 87 | position: absolute; 88 | top: 50%; 89 | width: auto; 90 | text-align: center; 91 | margin-top: -0.8em; 92 | left: 8px; 93 | right: 8px; 94 | z-index: 1044; } 95 | .mfp-preloader a { 96 | color: #cccccc; } 97 | .mfp-preloader a:hover { 98 | color: white; } 99 | 100 | .mfp-s-ready .mfp-preloader { 101 | display: none; } 102 | 103 | .mfp-s-error .mfp-content { 104 | display: none; } 105 | 106 | button.mfp-close, button.mfp-arrow { 107 | overflow: visible; 108 | cursor: pointer; 109 | background: transparent; 110 | border: 0; 111 | -webkit-appearance: none; 112 | display: block; 113 | outline: none; 114 | padding: 0; 115 | z-index: 1046; 116 | -webkit-box-shadow: none; 117 | box-shadow: none; } 118 | button::-moz-focus-inner { 119 | padding: 0; 120 | border: 0; } 121 | 122 | .mfp-close { 123 | width: 44px; 124 | height: 44px; 125 | line-height: 44px; 126 | position: absolute; 127 | right: 0; 128 | top: 0; 129 | text-decoration: none; 130 | text-align: center; 131 | opacity: 0.65; 132 | filter: alpha(opacity=65); 133 | padding: 0 0 18px 10px; 134 | color: white; 135 | font-style: normal; 136 | font-size: 28px; 137 | font-family: Arial, Baskerville, monospace; } 138 | .mfp-close:hover, .mfp-close:focus { 139 | opacity: 1; 140 | filter: alpha(opacity=100); } 141 | .mfp-close:active { 142 | top: 1px; } 143 | 144 | .mfp-close-btn-in .mfp-close { 145 | color: #333333; } 146 | 147 | .mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close { 148 | color: white; 149 | right: -6px; 150 | text-align: right; 151 | padding-right: 6px; 152 | width: 100%; } 153 | 154 | .mfp-counter { 155 | position: absolute; 156 | top: 0; 157 | right: 0; 158 | color: #cccccc; 159 | font-size: 12px; 160 | line-height: 18px; } 161 | 162 | .mfp-arrow { 163 | position: absolute; 164 | opacity: 0.65; 165 | filter: alpha(opacity=65); 166 | margin: 0; 167 | top: 50%; 168 | margin-top: -55px; 169 | padding: 0; 170 | width: 90px; 171 | height: 110px; 172 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } 173 | .mfp-arrow:active { 174 | margin-top: -54px; } 175 | .mfp-arrow:hover, .mfp-arrow:focus { 176 | opacity: 1; 177 | filter: alpha(opacity=100); } 178 | .mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a { 179 | content: ''; 180 | display: block; 181 | width: 0; 182 | height: 0; 183 | position: absolute; 184 | left: 0; 185 | top: 0; 186 | margin-top: 35px; 187 | margin-left: 35px; 188 | border: medium inset transparent; } 189 | .mfp-arrow:after, .mfp-arrow .mfp-a { 190 | border-top-width: 13px; 191 | border-bottom-width: 13px; 192 | top: 8px; } 193 | .mfp-arrow:before, .mfp-arrow .mfp-b { 194 | border-top-width: 21px; 195 | border-bottom-width: 21px; 196 | opacity: 0.7; } 197 | 198 | .mfp-arrow-left { 199 | left: 0; } 200 | .mfp-arrow-left:after, .mfp-arrow-left .mfp-a { 201 | border-right: 17px solid white; 202 | margin-left: 31px; } 203 | .mfp-arrow-left:before, .mfp-arrow-left .mfp-b { 204 | margin-left: 25px; 205 | border-right: 27px solid #3f3f3f; } 206 | 207 | .mfp-arrow-right { 208 | right: 0; } 209 | .mfp-arrow-right:after, .mfp-arrow-right .mfp-a { 210 | border-left: 17px solid white; 211 | margin-left: 39px; } 212 | .mfp-arrow-right:before, .mfp-arrow-right .mfp-b { 213 | border-left: 27px solid #3f3f3f; } 214 | 215 | .mfp-iframe-holder { 216 | padding-top: 40px; 217 | padding-bottom: 40px; } 218 | .mfp-iframe-holder .mfp-content { 219 | line-height: 0; 220 | width: 100%; 221 | max-width: 900px; } 222 | .mfp-iframe-holder .mfp-close { 223 | top: -40px; } 224 | 225 | .mfp-iframe-scaler { 226 | width: 100%; 227 | height: 0; 228 | overflow: hidden; 229 | padding-top: 56.25%; } 230 | .mfp-iframe-scaler iframe { 231 | position: absolute; 232 | display: block; 233 | top: 0; 234 | left: 0; 235 | width: 100%; 236 | height: 100%; 237 | box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); 238 | background: black; } 239 | 240 | /* Main image in popup */ 241 | img.mfp-img { 242 | width: auto; 243 | max-width: 100%; 244 | height: auto; 245 | display: block; 246 | line-height: 0; 247 | -webkit-box-sizing: border-box; 248 | -moz-box-sizing: border-box; 249 | box-sizing: border-box; 250 | padding: 40px 0 40px; 251 | margin: 0 auto; } 252 | 253 | /* The shadow behind the image */ 254 | .mfp-figure { 255 | line-height: 0; } 256 | .mfp-figure:after { 257 | content: ''; 258 | position: absolute; 259 | left: 0; 260 | top: 40px; 261 | bottom: 40px; 262 | display: block; 263 | right: 0; 264 | width: auto; 265 | height: auto; 266 | z-index: -1; 267 | box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); 268 | background: #444444; } 269 | .mfp-figure small { 270 | color: #bdbdbd; 271 | display: block; 272 | font-size: 12px; 273 | line-height: 14px; } 274 | .mfp-figure figure { 275 | margin: 0; } 276 | 277 | .mfp-bottom-bar { 278 | margin-top: -36px; 279 | position: absolute; 280 | top: 100%; 281 | left: 0; 282 | width: 100%; 283 | cursor: auto; } 284 | 285 | .mfp-title { 286 | text-align: left; 287 | line-height: 18px; 288 | color: #f3f3f3; 289 | word-wrap: break-word; 290 | padding-right: 36px; } 291 | 292 | .mfp-image-holder .mfp-content { 293 | max-width: 100%; } 294 | 295 | .mfp-gallery .mfp-image-holder .mfp-figure { 296 | cursor: pointer; } 297 | 298 | @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) { 299 | /** 300 | * Remove all paddings around the image on small screen 301 | */ 302 | .mfp-img-mobile .mfp-image-holder { 303 | padding-left: 0; 304 | padding-right: 0; } 305 | .mfp-img-mobile img.mfp-img { 306 | padding: 0; } 307 | .mfp-img-mobile .mfp-figure:after { 308 | top: 0; 309 | bottom: 0; } 310 | .mfp-img-mobile .mfp-figure small { 311 | display: inline; 312 | margin-left: 5px; } 313 | .mfp-img-mobile .mfp-bottom-bar { 314 | background: rgba(0, 0, 0, 0.6); 315 | bottom: 0; 316 | margin: 0; 317 | top: auto; 318 | padding: 3px 5px; 319 | position: fixed; 320 | -webkit-box-sizing: border-box; 321 | -moz-box-sizing: border-box; 322 | box-sizing: border-box; } 323 | .mfp-img-mobile .mfp-bottom-bar:empty { 324 | padding: 0; } 325 | .mfp-img-mobile .mfp-counter { 326 | right: 5px; 327 | top: 3px; } 328 | .mfp-img-mobile .mfp-close { 329 | top: 0; 330 | right: 0; 331 | width: 35px; 332 | height: 35px; 333 | line-height: 35px; 334 | background: rgba(0, 0, 0, 0.6); 335 | position: fixed; 336 | text-align: center; 337 | padding: 0; } } 338 | 339 | @media all and (max-width: 900px) { 340 | .mfp-arrow { 341 | -webkit-transform: scale(0.75); 342 | transform: scale(0.75); } 343 | .mfp-arrow-left { 344 | -webkit-transform-origin: 0; 345 | transform-origin: 0; } 346 | .mfp-arrow-right { 347 | -webkit-transform-origin: 100%; 348 | transform-origin: 100%; } 349 | .mfp-container { 350 | padding-left: 6px; 351 | padding-right: 6px; } } 352 | 353 | .mfp-ie7 .mfp-img { 354 | padding: 0; } 355 | .mfp-ie7 .mfp-bottom-bar { 356 | width: 600px; 357 | left: 50%; 358 | margin-left: -300px; 359 | margin-top: 5px; 360 | padding-bottom: 5px; } 361 | .mfp-ie7 .mfp-container { 362 | padding: 0; } 363 | .mfp-ie7 .mfp-content { 364 | padding-top: 44px; } 365 | .mfp-ie7 .mfp-close { 366 | top: 0; 367 | right: 0; 368 | padding-top: 0; } 369 | 370 | 371 | 372 | 373 | -------------------------------------------------------------------------------- /public/css/media-queries.css: -------------------------------------------------------------------------------- 1 | /* ================================================================== 2 | 3 | * Ceevee Media Queries 4 | * url: styleshout.com 5 | * 03-18-2014 6 | 7 | /* ================================================================== */ 8 | 9 | 10 | /* screenwidth less than 1024px 11 | --------------------------------------------------------------------- */ 12 | @media only screen and (max-width: 1024px) { 13 | 14 | /* header styles 15 | ------------------------------------------------------------------ */ 16 | header .banner-text h1 { 17 | font: 80px/1.1em 'opensans-bold', sans-serif; 18 | letter-spacing: -1px; 19 | margin: 0 auto 12px auto; 20 | } 21 | 22 | } 23 | 24 | /* screenwidth less than 900px 25 | --------------------------------------------------------------------- */ 26 | @media only screen and (max-width: 900px) { 27 | 28 | /* header styles 29 | ------------------------------------------------------------------ */ 30 | header .banner { padding-bottom: 12px; } 31 | header .banner-text h1 { 32 | font: 78px/1.1em 'opensans-bold', sans-serif; 33 | letter-spacing: -1px; 34 | } 35 | header .banner-text h3 { 36 | font: 17px/1.9em 'librebaskerville-regular', serif; 37 | width: 80%; 38 | } 39 | header .banner-text hr { 40 | width: 65%; 41 | margin: 12px auto; 42 | } 43 | /* nav-wrap */ 44 | #nav-wrap { 45 | font: 11px 'opensans-bold', sans-serif; 46 | letter-spacing: 1.5px; 47 | } 48 | 49 | 50 | /* About Section 51 | ------------------------------------------------------------------- */ 52 | #about .profile-pic { 53 | width: 114px; 54 | height: 114px; 55 | margin-left: 12px; 56 | } 57 | #about .contact-details { width: 50%; } 58 | #about .download { width: 50%; } 59 | 60 | /* Resume Section 61 | ------------------------------------------------------------------- */ 62 | #resume h1 { font: 16px/24px 'opensans-bold', sans-serif; } 63 | #resume .main-col { padding-right: 5%; } 64 | 65 | /* Testimonials Section 66 | ------------------------------------------------------------------- */ 67 | #testimonials .header-col h1:before { 68 | font-size: 66px; 69 | line-height: 66px; 70 | } 71 | #testimonials blockquote p { 72 | font-size: 22px; 73 | line-height: 46px; 74 | } 75 | 76 | /* Call to Action Section 77 | ------------------------------------------------------------------- */ 78 | #call-to-action .header-col h1:before { 79 | font-size: 66px; 80 | line-height: 66px; 81 | } 82 | 83 | /* Contact Section 84 | ------------------------------------------------------------------- */ 85 | #contact .section-head { margin-bottom: 30px; } 86 | #contact .header-col h1:before { 87 | font-size: 66px; 88 | line-height: 66px; 89 | } 90 | #contact .section-head p.lead { font: 17px/33px opensans-light, sans-serif; } 91 | 92 | 93 | } 94 | 95 | /* mobile wide/smaller tablets 96 | ---------------------------------------------------------------------- */ 97 | 98 | @media only screen and (max-width: 767px) { 99 | 100 | /* mobile navigation 101 | -------------------------------------------------------------------- */ 102 | #nav-wrap { 103 | font: 12px 'opensans-bold', sans-serif; 104 | background: transparent !important; 105 | letter-spacing: 1.5px; 106 | width: auto; 107 | position: fixed; 108 | top: 0; 109 | right: 0; 110 | } 111 | #nav-wrap > a { 112 | width: 48px; 113 | height: 48px; 114 | text-align: left; 115 | background-color: #CC5200; 116 | position: relative; 117 | border: none; 118 | float: right; 119 | 120 | font: 0/0 a; 121 | text-shadow: none; 122 | color: transparent; 123 | 124 | position: relative; 125 | top: 0px; 126 | right: 30px; 127 | } 128 | 129 | #nav-wrap > a:before, 130 | #nav-wrap > a:after { 131 | position: absolute; 132 | border: 2px solid #fff; 133 | top: 35%; 134 | left: 25%; 135 | right: 25%; 136 | content: ''; 137 | } 138 | #nav-wrap > a:after { top: 60%; } 139 | 140 | /* toggle buttons */ 141 | #nav-wrap:not( :target ) > a:first-of-type, 142 | #nav-wrap:target > a:last-of-type { 143 | display: block; 144 | } 145 | 146 | /* hide menu panel */ 147 | #nav-wrap ul#nav { 148 | height: auto; 149 | display: none; 150 | clear: both; 151 | width: auto; 152 | float: right; 153 | 154 | position: relative; 155 | top: 12px; 156 | right: 0; 157 | } 158 | 159 | /* display menu panels */ 160 | #nav-wrap:target > ul#nav { 161 | display: block; 162 | padding: 30px 20px 48px 20px; 163 | background: #1f2024; 164 | margin: 0 30px; 165 | clear: both; 166 | } 167 | 168 | ul#nav li { 169 | display: block; 170 | height: auto; 171 | margin: 0 auto; 172 | padding: 0 4%; 173 | text-align: left; 174 | border-bottom: 1px solid #2D2E34; 175 | border-bottom-style: dotted; 176 | } 177 | 178 | ul#nav li a { 179 | display: block; 180 | margin: 0; 181 | padding: 0; 182 | margin: 12px 0; 183 | line-height: 16px; /* reset line-height from 48px */ 184 | border: none; 185 | } 186 | 187 | 188 | /* Header Styles 189 | -------------------------------------------------------------------- */ 190 | header .banner { 191 | padding-bottom: 12px; 192 | padding-top: 6px; 193 | } 194 | header .banner-text h1 { font: 68px/1.1em 'opensans-bold', sans-serif; } 195 | header .banner-text h3 { 196 | font: 16px/1.9em 'librebaskerville-regular', serif; 197 | width: 85%; 198 | } 199 | header .banner-text hr { 200 | width: 80%; 201 | margin: 18px auto; 202 | } 203 | 204 | /* header social links */ 205 | header .social { 206 | margin: 18px 0 24px 0; 207 | font-size: 24px; 208 | line-height: 36px; 209 | } 210 | header .social li { margin: 0 10px; } 211 | 212 | /* scrolldown link */ 213 | header .scrolldown { display: none; } 214 | 215 | 216 | /* About Section 217 | -------------------------------------------------------------------- */ 218 | #about .profile-pic { display: none; } 219 | #about .download .button { 220 | width: 100%; 221 | text-align: center; 222 | padding: 15px 20px; 223 | } 224 | #about .main-col { padding-right: 30px; } 225 | 226 | 227 | /* Resume Section 228 | --------------------------------------------------------------------- */ 229 | #resume .header-col { 230 | padding-top: 0; 231 | margin-bottom: 48px; 232 | text-align: center; 233 | } 234 | #resume h1 { letter-spacing: 3px; } 235 | #resume .main-col { padding-right: 30px; } 236 | #resume h3, #resume .info { text-align: center; } 237 | 238 | .bars { width: 100%; } 239 | 240 | 241 | /* Call To Action Section 242 | /* ----------------------------------------------------------------- */ 243 | #call-to-action { text-align: center; } 244 | #call-to-action h1 { 245 | font: 16px/24px 'opensans-bold', sans-serif; 246 | text-align: center; 247 | margin-bottom: 30px; 248 | text-shadow: 0px 1px 3px rgba(0, 0, 0, 1); 249 | } 250 | #call-to-action h1 span { display: block; } 251 | #call-to-action .header-col h1:before { content: none; } 252 | #call-to-action p { font-size: 15px; } 253 | 254 | 255 | /* Portfolio Section 256 | /* ----------------------------------------------------------------- */ 257 | #portfolio-wrapper .columns { margin-bottom: 40px; } 258 | .popup-modal { max-width: 85%; } 259 | 260 | 261 | /* Testimonials Section 262 | ----------------------------------------------------------------------- */ 263 | #testimonials .text-container { text-align: center; } 264 | #testimonials h1 { 265 | font: 16px/24px 'opensans-bold', sans-serif; 266 | text-align: center; 267 | margin-bottom: 30px; 268 | text-shadow: 0px 1px 3px rgba(0, 0, 0, 1); 269 | } 270 | #testimonials h1 span { display: block; } 271 | #testimonials .header-col h1:before { content: none; } 272 | #testimonials blockquote { padding-bottom: 24px; } 273 | #testimonials blockquote p { 274 | font-size: 20px; 275 | line-height: 42px; 276 | } 277 | 278 | /* Control Nav */ 279 | .flex-control-nav { 280 | text-align: center; 281 | margin-left: -30px; 282 | } 283 | 284 | 285 | /* contact Section 286 | ----------------------------------------------------------------------- */ 287 | #contact { padding-bottom: 66px; } 288 | #contact .section-head { margin-bottom: 12px; } 289 | #contact .section-head h1 { 290 | font: 16px/24px 'opensans-bold', sans-serif; 291 | text-align: center; 292 | margin-bottom: 30px; 293 | text-shadow: 0px 1px 3px rgba(0, 0, 0, 1); 294 | } 295 | #contact h1 span { display: block; } 296 | #contact .header-col { padding-top: 0; } 297 | #contact .header-col h1:before { content: none; } 298 | #contact .section-head p.lead { text-align: center;} 299 | 300 | /* form */ 301 | #contact label { 302 | float: none; 303 | width: 100%; 304 | } 305 | #contact input, 306 | #contact textarea, 307 | #contact select { 308 | margin-bottom: 6px; 309 | width: 100%; 310 | } 311 | #contact button.submit { margin: 30px 0 24px 0; } 312 | #message-warning, #message-success { 313 | width: 100%; 314 | margin-left: 0; 315 | } 316 | 317 | 318 | /* footer 319 | ------------------------------------------------------------------------ */ 320 | 321 | /* copyright */ 322 | footer .copyright li:before { content: none; } 323 | footer .copyright li { margin-right: 12px; } 324 | 325 | /* social links */ 326 | footer .social-links { font-size: 22px; } 327 | footer .social-links li { margin-left: 18px; } 328 | 329 | /* Go To Top Button */ 330 | #go-top { margin-left: -22px; } 331 | #go-top a { 332 | width: 54px; 333 | height: 54px; 334 | font-size: 18px; 335 | line-height: 54px; 336 | } 337 | 338 | 339 | } 340 | 341 | /* mobile narrow 342 | -------------------------------------------------------------------------- */ 343 | 344 | @media only screen and (max-width: 480px) { 345 | 346 | /* mobile navigation 347 | -------------------------------------------------------------------- */ 348 | #nav-wrap ul#nav { width: auto; float: none; } 349 | 350 | /* header styles 351 | -------------------------------------------------------------------- */ 352 | header .banner { padding-top: 24px; } 353 | header .banner-text h1 { 354 | font: 40px/1.1em 'opensans-bold', sans-serif; 355 | margin: 0 auto 24px auto; 356 | } 357 | header .banner-text h3 { 358 | font: 14px/1.9em 'librebaskerville-regular', sans-serif; 359 | width: 90%; 360 | } 361 | 362 | /* header social links */ 363 | header .social { font-size: 20px;} 364 | header .social li { margin: 0 6px; } 365 | 366 | /* footer 367 | ------------------------------------------------------------------------ */ 368 | 369 | /* social links */ 370 | footer .social-links { font-size: 20px; } 371 | footer .social-links li { margin-left: 14px; } 372 | 373 | } 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/favicon.ico -------------------------------------------------------------------------------- /public/images/header-background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/header-background.jpg -------------------------------------------------------------------------------- /public/images/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/loader.gif -------------------------------------------------------------------------------- /public/images/overlay-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/overlay-bg.png -------------------------------------------------------------------------------- /public/images/overlay-zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/overlay-zoom.png -------------------------------------------------------------------------------- /public/images/portfolio/coffee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/coffee.jpg -------------------------------------------------------------------------------- /public/images/portfolio/console.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/console.jpg -------------------------------------------------------------------------------- /public/images/portfolio/farmerboy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/farmerboy.jpg -------------------------------------------------------------------------------- /public/images/portfolio/girl.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/girl.jpg -------------------------------------------------------------------------------- /public/images/portfolio/into-the-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/into-the-light.jpg -------------------------------------------------------------------------------- /public/images/portfolio/judah.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/judah.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-coffee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-coffee.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-console.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-console.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-farmerboy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-farmerboy.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-girl.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-girl.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-intothelight.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-intothelight.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-judah.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-judah.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-origami.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-origami.jpg -------------------------------------------------------------------------------- /public/images/portfolio/modals/m-retrocam.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/modals/m-retrocam.jpg -------------------------------------------------------------------------------- /public/images/portfolio/origami.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/origami.jpg -------------------------------------------------------------------------------- /public/images/portfolio/retrocam.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/portfolio/retrocam.jpg -------------------------------------------------------------------------------- /public/images/profilepic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/profilepic.jpg -------------------------------------------------------------------------------- /public/images/sample-image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/sample-image.jpg -------------------------------------------------------------------------------- /public/images/testimonials-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rbhatia46/React-Portfolio/1e38f85dfc97c8f4066e42d7a9782ac988fa26c0/public/images/testimonials-bg.jpg -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 12 | 13 | 22 | Rahul Bhatia 23 | 24 | 25 | 26 | 27 | 28 | 29 | Sample resume 30 | 31 | 32 | 35 |
36 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /public/js/init.js: -------------------------------------------------------------------------------- 1 | /*----------------------------------------------------------------------------------- 2 | /* 3 | /* Init JS 4 | /* 5 | -----------------------------------------------------------------------------------*/ 6 | 7 | jQuery(document).ready(function($) { 8 | 9 | /*----------------------------------------------------*/ 10 | /* FitText Settings 11 | ------------------------------------------------------ */ 12 | 13 | setTimeout(function() { 14 | $('h1.responsive-headline').fitText(1, { minFontSize: '40px', maxFontSize: '90px' }); 15 | }, 100); 16 | 17 | 18 | /*----------------------------------------------------*/ 19 | /* Smooth Scrolling 20 | ------------------------------------------------------ */ 21 | 22 | $('.smoothscroll').on('click',function (e) { 23 | e.preventDefault(); 24 | 25 | var target = this.hash, 26 | $target = $(target); 27 | 28 | $('html, body').stop().animate({ 29 | 'scrollTop': $target.offset().top 30 | }, 800, 'swing', function () { 31 | window.location.hash = target; 32 | }); 33 | }); 34 | 35 | 36 | /*----------------------------------------------------*/ 37 | /* Highlight the current section in the navigation bar 38 | ------------------------------------------------------*/ 39 | 40 | var sections = $("section"); 41 | var navigation_links = $("#nav-wrap a"); 42 | 43 | sections.waypoint({ 44 | 45 | handler: function(event, direction) { 46 | 47 | var active_section; 48 | 49 | active_section = $(this); 50 | if (direction === "up") active_section = active_section.prev(); 51 | 52 | var active_link = $('#nav-wrap a[href="#' + active_section.attr("id") + '"]'); 53 | 54 | navigation_links.parent().removeClass("current"); 55 | active_link.parent().addClass("current"); 56 | 57 | }, 58 | offset: '35%' 59 | 60 | }); 61 | 62 | 63 | /*----------------------------------------------------*/ 64 | /* Make sure that #header-background-image height is 65 | /* equal to the browser height. 66 | ------------------------------------------------------ */ 67 | 68 | $('header').css({ 'height': $(window).height() }); 69 | $(window).on('resize', function() { 70 | 71 | $('header').css({ 'height': $(window).height() }); 72 | $('body').css({ 'width': $(window).width() }) 73 | }); 74 | 75 | 76 | /*----------------------------------------------------*/ 77 | /* Fade In/Out Primary Navigation 78 | ------------------------------------------------------*/ 79 | 80 | $(window).on('scroll', function() { 81 | 82 | var h = $('header').height(); 83 | var y = $(window).scrollTop(); 84 | var nav = $('#nav-wrap'); 85 | 86 | if ( (y > h*.20) && (y < h) && ($(window).outerWidth() > 768 ) ) { 87 | nav.fadeOut('fast'); 88 | } 89 | else { 90 | if (y < h*.20) { 91 | nav.removeClass('opaque').fadeIn('fast'); 92 | } 93 | else { 94 | nav.addClass('opaque').fadeIn('fast'); 95 | } 96 | } 97 | 98 | }); 99 | 100 | 101 | /*----------------------------------------------------*/ 102 | /* Modal Popup 103 | ------------------------------------------------------*/ 104 | 105 | $('.item-wrap a').magnificPopup({ 106 | 107 | type:'inline', 108 | fixedContentPos: false, 109 | removalDelay: 200, 110 | showCloseBtn: false, 111 | mainClass: 'mfp-fade' 112 | 113 | }); 114 | 115 | $(document).on('click', '.popup-modal-dismiss', function (e) { 116 | e.preventDefault(); 117 | $.magnificPopup.close(); 118 | }); 119 | 120 | 121 | /*----------------------------------------------------*/ 122 | /* Flexslider 123 | /*----------------------------------------------------*/ 124 | $('.flexslider').flexslider({ 125 | namespace: "flex-", 126 | controlsContainer: ".flex-container", 127 | animation: 'slide', 128 | controlNav: true, 129 | directionNav: false, 130 | smoothHeight: true, 131 | slideshowSpeed: 7000, 132 | animationSpeed: 600, 133 | randomize: false, 134 | }); 135 | 136 | /*----------------------------------------------------*/ 137 | /* contact form 138 | ------------------------------------------------------*/ 139 | 140 | $('form#contactForm button.submit').click(function() { 141 | 142 | $('#image-loader').fadeIn(); 143 | 144 | var contactName = $('#contactForm #contactName').val(); 145 | var contactEmail = $('#contactForm #contactEmail').val(); 146 | var contactSubject = $('#contactForm #contactSubject').val(); 147 | var contactMessage = $('#contactForm #contactMessage').val(); 148 | 149 | var data = 'contactName=' + contactName + '&contactEmail=' + contactEmail + 150 | '&contactSubject=' + contactSubject + '&contactMessage=' + contactMessage; 151 | 152 | $.ajax({ 153 | 154 | type: "POST", 155 | url: "inc/sendEmail.php", 156 | data: data, 157 | success: function(msg) { 158 | 159 | // Message was sent 160 | if (msg == 'OK') { 161 | $('#image-loader').fadeOut(); 162 | $('#message-warning').hide(); 163 | $('#contactForm').fadeOut(); 164 | $('#message-success').fadeIn(); 165 | } 166 | // There was an error 167 | else { 168 | $('#image-loader').fadeOut(); 169 | $('#message-warning').html(msg); 170 | $('#message-warning').fadeIn(); 171 | } 172 | 173 | } 174 | 175 | }); 176 | return false; 177 | }); 178 | 179 | 180 | }); 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | -------------------------------------------------------------------------------- /public/js/jquery-migrate-1.2.1.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery Migrate v1.2.1 | (c) 2005, 2013 jQuery Foundation, Inc. and other contributors | jquery.org/license */ 2 | jQuery.migrateMute===void 0&&(jQuery.migrateMute=!0),function(e,t,n){function r(n){var r=t.console;i[n]||(i[n]=!0,e.migrateWarnings.push(n),r&&r.warn&&!e.migrateMute&&(r.warn("JQMIGRATE: "+n),e.migrateTrace&&r.trace&&r.trace()))}function a(t,a,i,o){if(Object.defineProperty)try{return Object.defineProperty(t,a,{configurable:!0,enumerable:!0,get:function(){return r(o),i},set:function(e){r(o),i=e}}),n}catch(s){}e._definePropertyBroken=!0,t[a]=i}var i={};e.migrateWarnings=[],!e.migrateMute&&t.console&&t.console.log&&t.console.log("JQMIGRATE: Logging is active"),e.migrateTrace===n&&(e.migrateTrace=!0),e.migrateReset=function(){i={},e.migrateWarnings.length=0},"BackCompat"===document.compatMode&&r("jQuery is not compatible with Quirks Mode");var o=e("",{size:1}).attr("size")&&e.attrFn,s=e.attr,u=e.attrHooks.value&&e.attrHooks.value.get||function(){return null},c=e.attrHooks.value&&e.attrHooks.value.set||function(){return n},l=/^(?:input|button)$/i,d=/^[238]$/,p=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,f=/^(?:checked|selected)$/i;a(e,"attrFn",o||{},"jQuery.attrFn is deprecated"),e.attr=function(t,a,i,u){var c=a.toLowerCase(),g=t&&t.nodeType;return u&&(4>s.length&&r("jQuery.fn.attr( props, pass ) is deprecated"),t&&!d.test(g)&&(o?a in o:e.isFunction(e.fn[a])))?e(t)[a](i):("type"===a&&i!==n&&l.test(t.nodeName)&&t.parentNode&&r("Can't change the 'type' of an input or button in IE 6/7/8"),!e.attrHooks[c]&&p.test(c)&&(e.attrHooks[c]={get:function(t,r){var a,i=e.prop(t,r);return i===!0||"boolean"!=typeof i&&(a=t.getAttributeNode(r))&&a.nodeValue!==!1?r.toLowerCase():n},set:function(t,n,r){var a;return n===!1?e.removeAttr(t,r):(a=e.propFix[r]||r,a in t&&(t[a]=!0),t.setAttribute(r,r.toLowerCase())),r}},f.test(c)&&r("jQuery.fn.attr('"+c+"') may use property instead of attribute")),s.call(e,t,a,i))},e.attrHooks.value={get:function(e,t){var n=(e.nodeName||"").toLowerCase();return"button"===n?u.apply(this,arguments):("input"!==n&&"option"!==n&&r("jQuery.fn.attr('value') no longer gets properties"),t in e?e.value:null)},set:function(e,t){var a=(e.nodeName||"").toLowerCase();return"button"===a?c.apply(this,arguments):("input"!==a&&"option"!==a&&r("jQuery.fn.attr('value', val) no longer sets properties"),e.value=t,n)}};var g,h,v=e.fn.init,m=e.parseJSON,y=/^([^<]*)(<[\w\W]+>)([^>]*)$/;e.fn.init=function(t,n,a){var i;return t&&"string"==typeof t&&!e.isPlainObject(n)&&(i=y.exec(e.trim(t)))&&i[0]&&("<"!==t.charAt(0)&&r("$(html) HTML strings must start with '<' character"),i[3]&&r("$(html) HTML text after last tag is ignored"),"#"===i[0].charAt(0)&&(r("HTML string cannot start with a '#' character"),e.error("JQMIGRATE: Invalid selector string (XSS)")),n&&n.context&&(n=n.context),e.parseHTML)?v.call(this,e.parseHTML(i[2],n,!0),n,a):v.apply(this,arguments)},e.fn.init.prototype=e.fn,e.parseJSON=function(e){return e||null===e?m.apply(this,arguments):(r("jQuery.parseJSON requires a valid JSON string"),null)},e.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||0>e.indexOf("compatible")&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e.browser||(g=e.uaMatch(navigator.userAgent),h={},g.browser&&(h[g.browser]=!0,h.version=g.version),h.chrome?h.webkit=!0:h.webkit&&(h.safari=!0),e.browser=h),a(e,"browser",e.browser,"jQuery.browser is deprecated"),e.sub=function(){function t(e,n){return new t.fn.init(e,n)}e.extend(!0,t,this),t.superclass=this,t.fn=t.prototype=this(),t.fn.constructor=t,t.sub=this.sub,t.fn.init=function(r,a){return a&&a instanceof e&&!(a instanceof t)&&(a=t(a)),e.fn.init.call(this,r,a,n)},t.fn.init.prototype=t.fn;var n=t(document);return r("jQuery.sub() is deprecated"),t},e.ajaxSetup({converters:{"text json":e.parseJSON}});var b=e.fn.data;e.fn.data=function(t){var a,i,o=this[0];return!o||"events"!==t||1!==arguments.length||(a=e.data(o,t),i=e._data(o,t),a!==n&&a!==i||i===n)?b.apply(this,arguments):(r("Use of jQuery.fn.data('events') is deprecated"),i)};var j=/\/(java|ecma)script/i,w=e.fn.andSelf||e.fn.addBack;e.fn.andSelf=function(){return r("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()"),w.apply(this,arguments)},e.clean||(e.clean=function(t,a,i,o){a=a||document,a=!a.nodeType&&a[0]||a,a=a.ownerDocument||a,r("jQuery.clean() is deprecated");var s,u,c,l,d=[];if(e.merge(d,e.buildFragment(t,a).childNodes),i)for(c=function(e){return!e.type||j.test(e.type)?o?o.push(e.parentNode?e.parentNode.removeChild(e):e):i.appendChild(e):n},s=0;null!=(u=d[s]);s++)e.nodeName(u,"script")&&c(u)||(i.appendChild(u),u.getElementsByTagName!==n&&(l=e.grep(e.merge([],u.getElementsByTagName("script")),c),d.splice.apply(d,[s+1,0].concat(l)),s+=l.length));return d});var Q=e.event.add,x=e.event.remove,k=e.event.trigger,N=e.fn.toggle,T=e.fn.live,M=e.fn.die,S="ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",C=RegExp("\\b(?:"+S+")\\b"),H=/(?:^|\s)hover(\.\S+|)\b/,A=function(t){return"string"!=typeof t||e.event.special.hover?t:(H.test(t)&&r("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'"),t&&t.replace(H,"mouseenter$1 mouseleave$1"))};e.event.props&&"attrChange"!==e.event.props[0]&&e.event.props.unshift("attrChange","attrName","relatedNode","srcElement"),e.event.dispatch&&a(e.event,"handle",e.event.dispatch,"jQuery.event.handle is undocumented and deprecated"),e.event.add=function(e,t,n,a,i){e!==document&&C.test(t)&&r("AJAX events should be attached to document: "+t),Q.call(this,e,A(t||""),n,a,i)},e.event.remove=function(e,t,n,r,a){x.call(this,e,A(t)||"",n,r,a)},e.fn.error=function(){var e=Array.prototype.slice.call(arguments,0);return r("jQuery.fn.error() is deprecated"),e.splice(0,0,"error"),arguments.length?this.bind.apply(this,e):(this.triggerHandler.apply(this,e),this)},e.fn.toggle=function(t,n){if(!e.isFunction(t)||!e.isFunction(n))return N.apply(this,arguments);r("jQuery.fn.toggle(handler, handler...) is deprecated");var a=arguments,i=t.guid||e.guid++,o=0,s=function(n){var r=(e._data(this,"lastToggle"+t.guid)||0)%o;return e._data(this,"lastToggle"+t.guid,r+1),n.preventDefault(),a[r].apply(this,arguments)||!1};for(s.guid=i;a.length>o;)a[o++].guid=i;return this.click(s)},e.fn.live=function(t,n,a){return r("jQuery.fn.live() is deprecated"),T?T.apply(this,arguments):(e(this.context).on(t,this.selector,n,a),this)},e.fn.die=function(t,n){return r("jQuery.fn.die() is deprecated"),M?M.apply(this,arguments):(e(this.context).off(t,this.selector||"**",n),this)},e.event.trigger=function(e,t,n,a){return n||C.test(e)||r("Global events are undocumented and deprecated"),k.call(this,e,t,n||document,a)},e.each(S.split("|"),function(t,n){e.event.special[n]={setup:function(){var t=this;return t!==document&&(e.event.add(document,n+"."+e.guid,function(){e.event.trigger(n,null,t,!0)}),e._data(this,n,e.guid++)),!1},teardown:function(){return this!==document&&e.event.remove(document,n+"."+e._data(this,n)),!1}}})}(jQuery,window); -------------------------------------------------------------------------------- /public/js/jquery.fittext.js: -------------------------------------------------------------------------------- 1 | /*global jQuery */ 2 | /*! 3 | * FitText.js 1.1 4 | * 5 | * Copyright 2011, Dave Rupert http://daverupert.com 6 | * Released under the WTFPL license 7 | * http://sam.zoy.org/wtfpl/ 8 | * 9 | * Date: Thu May 05 14:23:00 2011 -0600 10 | */ 11 | 12 | (function( $ ){ 13 | 14 | $.fn.fitText = function( kompressor, options ) { 15 | 16 | // Setup options 17 | var compressor = kompressor || 1, 18 | settings = $.extend({ 19 | 'minFontSize' : Number.NEGATIVE_INFINITY, 20 | 'maxFontSize' : Number.POSITIVE_INFINITY 21 | }, options); 22 | 23 | return this.each(function(){ 24 | 25 | // Store the object 26 | var $this = $(this); 27 | 28 | // Resizer() resizes items based on the object width divided by the compressor * 10 29 | var resizer = function () { 30 | $this.css('font-size', Math.max(Math.min($this.width() / (compressor*10), parseFloat(settings.maxFontSize)), parseFloat(settings.minFontSize))); 31 | }; 32 | 33 | // Call once to set. 34 | resizer(); 35 | 36 | // Call on resize. Opera debounces their resize by default. 37 | $(window).on('resize.fittext orientationchange.fittext', resizer); 38 | 39 | }); 40 | 41 | }; 42 | 43 | })( jQuery ); 44 | -------------------------------------------------------------------------------- /public/js/magnific-popup.js: -------------------------------------------------------------------------------- 1 | // Magnific Popup v0.9.9 by Dmitry Semenov 2 | // http://bit.ly/magnific-popup#build=inline+image+retina+imagezoom+fastclick 3 | (function(a){var b="Close",c="BeforeClose",d="AfterClose",e="BeforeAppend",f="MarkupParse",g="Open",h="Change",i="mfp",j="."+i,k="mfp-ready",l="mfp-removing",m="mfp-prevent-close",n,o=function(){},p=!!window.jQuery,q,r=a(window),s,t,u,v,w,x=function(a,b){n.ev.on(i+a+j,b)},y=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},z=function(b,c){n.ev.triggerHandler(i+b,c),n.st.callbacks&&(b=b.charAt(0).toLowerCase()+b.slice(1),n.st.callbacks[b]&&n.st.callbacks[b].apply(n,a.isArray(c)?c:[c]))},A=function(b){if(b!==w||!n.currTemplate.closeBtn)n.currTemplate.closeBtn=a(n.st.closeMarkup.replace("%title%",n.st.tClose)),w=b;return n.currTemplate.closeBtn},B=function(){a.magnificPopup.instance||(n=new o,n.init(),a.magnificPopup.instance=n)},C=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(a.transition!==undefined)return!0;while(b.length)if(b.pop()+"Transition"in a)return!0;return!1};o.prototype={constructor:o,init:function(){var b=navigator.appVersion;n.isIE7=b.indexOf("MSIE 7.")!==-1,n.isIE8=b.indexOf("MSIE 8.")!==-1,n.isLowIE=n.isIE7||n.isIE8,n.isAndroid=/android/gi.test(b),n.isIOS=/iphone|ipad|ipod/gi.test(b),n.supportsTransition=C(),n.probablyMobile=n.isAndroid||n.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),t=a(document),n.popupsCache={}},open:function(b){s||(s=a(document.body));var c;if(b.isObj===!1){n.items=b.items.toArray(),n.index=0;var d=b.items,e;for(c=0;c(a||r.height())},_setFocus:function(){(n.st.focus?n.content.find(n.st.focus).eq(0):n.wrap).focus()},_onFocusIn:function(b){if(b.target!==n.wrap[0]&&!a.contains(n.wrap[0],b.target))return n._setFocus(),!1},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),z(f,[b,c,d]),a.each(c,function(a,c){if(c===undefined||c===!1)return!0;e=a.split("_");if(e.length>1){var d=b.find(j+"-"+e[0]);if(d.length>0){var f=e[1];f==="replaceWith"?d[0]!==c[0]&&d.replaceWith(c):f==="img"?d.is("img")?d.attr("src",c):d.replaceWith(''):d.attr(e[1],c)}}else b.find(j+"-"+a).html(c)})},_getScrollbarSize:function(){if(n.scrollbarSize===undefined){var a=document.createElement("div");a.id="mfp-sbm",a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),n.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return n.scrollbarSize}},a.magnificPopup={instance:null,proto:o.prototype,modules:[],open:function(b,c){return B(),b?b=a.extend(!0,{},b):b={},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'',tClose:"Close (Esc)",tLoading:"Loading..."}},a.fn.magnificPopup=function(b){B();var c=a(this);if(typeof b=="string")if(b==="open"){var d,e=p?c.data("magnificPopup"):c[0].magnificPopup,f=parseInt(arguments[1],10)||0;e.items?d=e.items[f]:(d=c,e.delegate&&(d=d.find(e.delegate)),d=d.eq(f)),n._openClick({mfpEl:d},c,e)}else n.isOpen&&n[b].apply(n,Array.prototype.slice.call(arguments,1));else b=a.extend(!0,{},b),p?c.data("magnificPopup",b):c[0].magnificPopup=b,n.addGroup(c,b);return c};var D="inline",E,F,G,H=function(){G&&(F.after(G.addClass(E)).detach(),G=null)};a.magnificPopup.registerModule(D,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){n.types.push(D),x(b+"."+D,function(){H()})},getInline:function(b,c){H();if(b.src){var d=n.st.inline,e=a(b.src);if(e.length){var f=e[0].parentNode;f&&f.tagName&&(F||(E=d.hiddenClass,F=y(E),E="mfp-"+E),G=e.after(F).detach().removeClass(E)),n.updateStatus("ready")}else n.updateStatus("error",d.tNotFound),e=a("
");return b.inlineElement=e,e}return n.updateStatus("ready"),n._parseMarkup(c,{},b),c}}});var I,J=function(b){if(b.data&&b.data.title!==undefined)return b.data.title;var c=n.st.image.titleSrc;if(c){if(a.isFunction(c))return c.call(n,b);if(b.el)return b.el.attr(c)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'
',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'The image could not be loaded.'},proto:{initImage:function(){var a=n.st.image,c=".image";n.types.push("image"),x(g+c,function(){n.currItem.type==="image"&&a.cursor&&s.addClass(a.cursor)}),x(b+c,function(){a.cursor&&s.removeClass(a.cursor),r.off("resize"+j)}),x("Resize"+c,n.resizeImage),n.isLowIE&&x("AfterChange",n.resizeImage)},resizeImage:function(){var a=n.currItem;if(!a||!a.img)return;if(n.st.image.verticalFit){var b=0;n.isLowIE&&(b=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",n.wH-b)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,I&&clearInterval(I),a.isCheckingImgSize=!1,z("ImageHasSize",a),a.imgHidden&&(n.content&&n.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var b=0,c=a.img[0],d=function(e){I&&clearInterval(I),I=setInterval(function(){if(c.naturalWidth>0){n._onImageHasSize(a);return}b>200&&clearInterval(I),b++,b===3?d(10):b===40?d(50):b===100&&d(500)},e)};d(1)},getImage:function(b,c){var d=0,e=function(){b&&(b.img[0].complete?(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("ready")),b.hasSize=!0,b.loaded=!0,z("ImageLoadComplete")):(d++,d<200?setTimeout(e,100):f()))},f=function(){b&&(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("error",g.tError.replace("%url%",b.src))),b.hasSize=!0,b.loaded=!0,b.loadError=!0)},g=n.st.image,h=c.find(".mfp-img");if(h.length){var i=document.createElement("img");i.className="mfp-img",b.img=a(i).on("load.mfploader",e).on("error.mfploader",f),i.src=b.src,h.is("img")&&(b.img=b.img.clone()),i=b.img[0],i.naturalWidth>0?b.hasSize=!0:i.width||(b.hasSize=!1)}return n._parseMarkup(c,{title:J(b),img_replaceWith:b.img},b),n.resizeImage(),b.hasSize?(I&&clearInterval(I),b.loadError?(c.addClass("mfp-loading"),n.updateStatus("error",g.tError.replace("%url%",b.src))):(c.removeClass("mfp-loading"),n.updateStatus("ready")),c):(n.updateStatus("loading"),b.loading=!0,b.hasSize||(b.imgHidden=!0,c.addClass("mfp-loading"),n.findImageSize(b)),c)}}});var K,L=function(){return K===undefined&&(K=document.createElement("p").style.MozTransform!==undefined),K};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a=n.st.zoom,d=".zoom",e;if(!a.enabled||!n.supportsTransition)return;var f=a.duration,g=function(b){var c=b.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+a.duration/1e3+"s "+a.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,c.css(e),c},h=function(){n.content.css("visibility","visible")},i,j;x("BuildControls"+d,function(){if(n._allowZoom()){clearTimeout(i),n.content.css("visibility","hidden"),e=n._getItemToZoom();if(!e){h();return}j=g(e),j.css(n._getOffset()),n.wrap.append(j),i=setTimeout(function(){j.css(n._getOffset(!0)),i=setTimeout(function(){h(),setTimeout(function(){j.remove(),e=j=null,z("ZoomAnimationEnded")},16)},f)},16)}}),x(c+d,function(){if(n._allowZoom()){clearTimeout(i),n.st.removalDelay=f;if(!e){e=n._getItemToZoom();if(!e)return;j=g(e)}j.css(n._getOffset(!0)),n.wrap.append(j),n.content.css("visibility","hidden"),setTimeout(function(){j.css(n._getOffset())},16)}}),x(b+d,function(){n._allowZoom()&&(h(),j&&j.remove(),e=null)})},_allowZoom:function(){return n.currItem.type==="image"},_getItemToZoom:function(){return n.currItem.hasSize?n.currItem.img:!1},_getOffset:function(b){var c;b?c=n.currItem.img:c=n.st.zoom.opener(n.currItem.el||n.currItem);var d=c.offset(),e=parseInt(c.css("padding-top"),10),f=parseInt(c.css("padding-bottom"),10);d.top-=a(window).scrollTop()-e;var g={width:c.width(),height:(p?c.innerHeight():c[0].offsetHeight)-f-e};return L()?g["-moz-transform"]=g.transform="translate("+d.left+"px,"+d.top+"px)":(g.left=d.left,g.top=d.top),g}}});var M="retina";a.magnificPopup.registerModule(M,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=n.st.retina,b=a.ratio;b=isNaN(b)?b():b,b>1&&(x("ImageHasSize."+M,function(a,c){c.img.css({"max-width":c.img[0].naturalWidth/b,width:"100%"})}),x("ElementParse."+M,function(c,d){d.src=a.replaceSrc(d,b)}))}}}}),function(){var b=1e3,c="ontouchstart"in window,d=function(){r.off("touchmove"+f+" touchend"+f)},e="mfpFastClick",f="."+e;a.fn.mfpFastClick=function(e){return a(this).each(function(){var g=a(this),h;if(c){var i,j,k,l,m,n;g.on("touchstart"+f,function(a){l=!1,n=1,m=a.originalEvent?a.originalEvent.touches[0]:a.touches[0],j=m.clientX,k=m.clientY,r.on("touchmove"+f,function(a){m=a.originalEvent?a.originalEvent.touches:a.touches,n=m.length,m=m[0];if(Math.abs(m.clientX-j)>10||Math.abs(m.clientY-k)>10)l=!0,d()}).on("touchend"+f,function(a){d();if(l||n>1)return;h=!0,a.preventDefault(),clearTimeout(i),i=setTimeout(function(){h=!1},b),e()})})}g.on("click"+f,function(){h||e()})})},a.fn.destroyMfpFastClick=function(){a(this).off("touchstart"+f+" click"+f),c&&r.off("touchmove"+f+" touchend"+f)}}(),B()})(window.jQuery||window.Zepto) -------------------------------------------------------------------------------- /public/js/modernizr.js: -------------------------------------------------------------------------------- 1 | /* Modernizr 2.7.1 (Custom Build) | MIT & BSD 2 | * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-flexboxlegacy-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-cssclasses-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load 3 | */ 4 | ;window.Modernizr=function(a,b,c){function C(a){j.cssText=a}function D(a,b){return C(n.join(a+";")+(b||""))}function E(a,b){return typeof a===b}function F(a,b){return!!~(""+a).indexOf(b)}function G(a,b){for(var d in a){var e=a[d];if(!F(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function H(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:E(f,"function")?f.bind(d||b):f}return!1}function I(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return E(b,"string")||E(b,"undefined")?G(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),H(e,b,c))}function J(){e.input=function(c){for(var d=0,e=c.length;d',a,""].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=E(e[d],"function"),E(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),A={}.hasOwnProperty,B;!E(A,"undefined")&&!E(A.call,"undefined")?B=function(a,b){return A.call(a,b)}:B=function(a,b){return b in a&&E(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return I("flexWrap")},s.flexboxlegacy=function(){return I("boxDirection")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!E(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!I("indexedDB",a)},s.hashchange=function(){return z("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return C("background-color:rgba(150,255,150,.5)"),F(j.backgroundColor,"rgba")},s.hsla=function(){return C("background-color:hsla(120,40%,100%,.5)"),F(j.backgroundColor,"rgba")||F(j.backgroundColor,"hsla")},s.multiplebgs=function(){return C("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return I("backgroundSize")},s.borderimage=function(){return I("borderImage")},s.borderradius=function(){return I("borderRadius")},s.boxshadow=function(){return I("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return D("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return I("animationName")},s.csscolumns=function(){return I("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return C((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),F(j.backgroundImage,"gradient")},s.cssreflections=function(){return I("boxReflect")},s.csstransforms=function(){return!!I("transform")},s.csstransforms3d=function(){var a=!!I("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return I("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var K in s)B(s,K)&&(x=K.toLowerCase(),e[x]=s[K](),v.push((e[x]?"":"no-")+x));return e.input||J(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)B(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},C(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.hasEvent=z,e.testProp=function(a){return G([a])},e.testAllProps=I,e.testStyles=y,g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f=0&&o.waypoints[n].element[0]!==p[0]){n-=1}return n},f=[],l=function(n){$.extend(this,{element:$(n),oldScroll:0,waypoints:[],didScroll:false,didResize:false,doScroll:$.proxy(function(){var q=this.element.scrollTop(),p=q>this.oldScroll,s=this,r=$.grep(this.waypoints,function(u,t){return p?(u.offset>s.oldScroll&&u.offset<=q):(u.offset<=s.oldScroll&&u.offset>q)}),o=r.length;if(!this.oldScroll||!q){$[m]("refresh")}this.oldScroll=q;if(!o){return}if(!p){r.reverse()}$.each(r,function(u,t){if(t.options.continuous||u===o-1){b(t,[p?"down":"up"])}})},this)});$(n).bind("scroll.waypoints",$.proxy(function(){if(!this.didScroll){this.didScroll=true;i.setTimeout($.proxy(function(){this.doScroll();this.didScroll=false},this),$[m].settings.scrollThrottle)}},this)).bind("resize.waypoints",$.proxy(function(){if(!this.didResize){this.didResize=true;i.setTimeout($.proxy(function(){$[m]("refresh");this.didResize=false},this),$[m].settings.resizeThrottle)}},this));e.load($.proxy(function(){this.doScroll()},this))},j=function(n){var o=null;$.each(f,function(p,q){if(q.element[0]===n){o=q;return false}});return o},c={init:function(o,n){this.each(function(){var u=$.fn[k].defaults.context,q,t=$(this);if(n&&n.context){u=n.context}if(!$.isWindow(u)){u=t.closest(u)[0]}q=j(u);if(!q){q=new l(u);f.push(q)}var p=h(t,q),s=p<0?$.fn[k].defaults:q.waypoints[p].options,r=$.extend({},s,n);r.offset=r.offset==="bottom-in-view"?function(){var v=$.isWindow(u)?$[m]("viewportHeight"):$(u).height();return v-$(this).outerHeight()}:r.offset;if(p<0){q.waypoints.push({element:t,offset:null,options:r})}else{q.waypoints[p].options=r}if(o){t.bind(g,o)}if(n&&n.handler){t.bind(g,n.handler)}});$[m]("refresh");return this},remove:function(){return this.each(function(o,p){var n=$(p);$.each(f,function(r,s){var q=h(n,s);if(q>=0){s.waypoints.splice(q,1);if(!s.waypoints.length){s.element.unbind("scroll.waypoints resize.waypoints");f.splice(r,1)}}})})},destroy:function(){return this.unbind(g)[k]("remove")}},a={refresh:function(){$.each(f,function(r,s){var q=$.isWindow(s.element[0]),n=q?0:s.element.offset().top,p=q?$[m]("viewportHeight"):s.element.height(),o=q?0:s.element.scrollTop();$.each(s.waypoints,function(u,x){if(!x){return}var t=x.options.offset,w=x.offset;if(typeof x.options.offset==="function"){t=x.options.offset.apply(x.element)}else{if(typeof x.options.offset==="string"){var v=parseFloat(x.options.offset);t=x.options.offset.indexOf("%")?Math.ceil(p*(v/100)):v}}x.offset=x.element.offset().top-n+o-t;if(x.options.onlyOnScroll){return}if(w!==null&&s.oldScroll>w&&s.oldScroll<=x.offset){b(x,["up"])}else{if(w!==null&&s.oldScroll=x.offset){b(x,["down"])}else{if(!w&&s.element.scrollTop()>x.offset){b(x,["down"])}}}});s.waypoints.sort(function(u,t){return u.offset-t.offset})})},viewportHeight:function(){return(i.innerHeight?i.innerHeight:e.height())},aggregate:function(){var n=$();$.each(f,function(o,p){$.each(p.waypoints,function(q,r){n=n.add(r.element)})});return n}};$.fn[k]=function(n){if(c[n]){return c[n].apply(this,Array.prototype.slice.call(arguments,1))}else{if(typeof n==="function"||!n){return c.init.apply(this,arguments)}else{if(typeof n==="object"){return c.init.apply(this,[null,n])}else{$.error("Method "+n+" does not exist on jQuery "+k)}}}};$.fn[k].defaults={continuous:true,offset:0,triggerOnce:false,context:i};$[m]=function(n){if(a[n]){return a[n].apply(this)}else{return a.aggregate()}};$[m].settings={resizeThrottle:200,scrollThrottle:100};e.load(function(){$[m]("refresh")})})(jQuery,"waypoint","waypoints",window); -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | } 10 | ], 11 | "start_url": ".", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /src/App.css: -------------------------------------------------------------------------------- 1 | .App { 2 | text-align: center; 3 | } 4 | 5 | .App-logo { 6 | animation: App-logo-spin infinite 20s linear; 7 | height: 40vmin; 8 | } 9 | 10 | .App-header { 11 | background-color: #282c34; 12 | min-height: 100vh; 13 | display: flex; 14 | flex-direction: column; 15 | align-items: center; 16 | justify-content: center; 17 | font-size: calc(10px + 2vmin); 18 | color: white; 19 | } 20 | 21 | .App-link { 22 | color: #61dafb; 23 | } 24 | 25 | @keyframes App-logo-spin { 26 | from { 27 | transform: rotate(0deg); 28 | } 29 | to { 30 | transform: rotate(360deg); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/App.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import Header from './components/Header'; 3 | import About from './components/About'; 4 | import Resume from './components/Resume'; 5 | import Portfolio from './components/Portfolio'; 6 | import Testimonials from './components/Testimonials'; 7 | import ContactUs from './components/ContactUs'; 8 | import Footer from './components/Footer'; 9 | import resumeData from './resumeData'; 10 | class App extends Component { 11 | render() { 12 | return ( 13 |
14 |
15 | 16 | 17 | 18 | 19 | 20 |
21 |
22 | ); 23 | } 24 | } 25 | 26 | export default App; -------------------------------------------------------------------------------- /src/App.test.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import App from './App'; 4 | 5 | it('renders without crashing', () => { 6 | const div = document.createElement('div'); 7 | ReactDOM.render(, div); 8 | ReactDOM.unmountComponentAtNode(div); 9 | }); 10 | -------------------------------------------------------------------------------- /src/components/About.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class About extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 |
7 |
8 | 9 |
10 | 11 | 12 | 13 |
14 | 15 |
16 | 17 |

About Me

18 |

19 | { 20 | resumeData.aboutme 21 | } 22 |

23 | 24 |
25 | 26 |
27 | 28 |

Contact Details

29 |

30 | {resumeData.name} 31 |

32 | 33 | {resumeData.address} 34 | 35 |

36 | {resumeData.website} 37 |

38 |
39 |
40 |
41 |
42 |
43 | ); 44 | } 45 | } -------------------------------------------------------------------------------- /src/components/ContactUs.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class ContactUs extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 |
7 |
8 |
9 |

10 | Feel free to contact me for any work or suggestions below 11 |

12 |
13 |
14 |
15 | 22 |
23 |
24 | ); 25 | } 26 | } -------------------------------------------------------------------------------- /src/components/Footer.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class Footer extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 |
7 |
8 |
9 |
    10 | { 11 | resumeData.socialLinks && resumeData.socialLinks.map((item)=>{ 12 | return( 13 |
  • 14 | 15 | 16 | 17 |
  • 18 | ) 19 | }) 20 | } 21 |
22 | 23 |
24 |
25 |
26 |
27 | ); 28 | } 29 | } -------------------------------------------------------------------------------- /src/components/Header.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class Header extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 | 7 | 8 |
9 | 21 | 22 |
23 |
24 |

I am {resumeData.name}.

25 |

I am a {resumeData.role}.{resumeData.roleDescription} 26 |

27 |
28 |
    29 | { 30 | resumeData.socialLinks && resumeData.socialLinks.map(item =>{ 31 | return( 32 |
  • 33 | 34 |
  • 35 | ) 36 | } 37 | ) 38 | } 39 |
40 |
41 |
42 | 43 |

44 | 45 |

46 | 47 |
48 |
49 | ); 50 | } 51 | } -------------------------------------------------------------------------------- /src/components/Portfolio.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class Porfolio extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 |
7 |
8 |
9 |

Check Out Some of My Works.

10 |
11 | { 12 | resumeData.portfolio && resumeData.portfolio.map((item)=>{ 13 | return( 14 | 27 | ) 28 | }) 29 | } 30 |
31 |
32 |
33 |
34 | ); 35 | } 36 | } -------------------------------------------------------------------------------- /src/components/Resume.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class Resume extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 |
7 | 8 |
9 | 10 |
11 |

Education

12 |
13 | 14 |
15 | { 16 | resumeData.education && resumeData.education.map((item)=>{ 17 | return( 18 |
19 |
20 |

{item.UniversityName}

21 |

22 | {item.specialization} 23 | {item.MonthOfPassing} {item.YearOfPassing}

24 |

25 | {item.Achievements} 26 |

27 |
28 |
29 | ) 30 | }) 31 | } 32 |
33 |
34 |
35 |
36 |

Work

37 |
38 | 39 |
40 | { 41 | resumeData.work && resumeData.work.map((item) => { 42 | return( 43 |
44 |
45 |

{item.CompanyName}

46 |

47 | {item.specialization} 48 | {item.MonthOfLeaving} {item.YearOfLeaving}

49 |

50 | {item.Achievements} 51 |

52 |
53 | 54 |
55 | 56 | ) 57 | }) 58 | } 59 |
60 |
61 | 62 | 63 |
64 | 65 |
66 |

Skills

67 |
68 | 69 |
70 | 71 |

72 | {resumeData.skillsDescription} 73 |

74 | 75 |
76 | 77 |
    78 | { 79 | resumeData.skills && resumeData.skills.map((item) => { 80 | return( 81 |
  • 82 | 83 | {item.skillname} 84 |
  • 85 | ) 86 | }) 87 | } 88 | 89 |
90 | 91 |
92 | 93 |
94 | 95 |
96 | 97 |
98 | ); 99 | } 100 | } -------------------------------------------------------------------------------- /src/components/Testimonials.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | export default class Testimonials extends Component { 3 | render() { 4 | let resumeData = this.props.resumeData; 5 | return ( 6 |
7 |
8 |
9 |
10 |

Client Testimonials

11 |
12 |
13 |
14 |
    15 | { 16 | resumeData.testimonials && resumeData.testimonials.map((item)=>{ 17 | return( 18 |
  • 19 |
    20 |

    21 | {item.description} 22 |

    23 | {item.name} 24 |
    25 |
  • 26 | ) 27 | }) 28 | } 29 |
30 |
{/* div.flexslider ends */} 31 |
{/* div.flex-container ends */} 32 |
{/* row ends */} 33 |
{/* text-container ends */} 34 |
35 | ); 36 | } 37 | } -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", 5 | "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", 6 | sans-serif; 7 | -webkit-font-smoothing: antialiased; 8 | 9 | -moz-osx-font-smoothing: grayscale; 10 | } 11 | 12 | code { 13 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", 14 | monospace; 15 | } 16 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import './index.css'; 4 | import App from './App'; 5 | import * as serviceWorker from './serviceWorker'; 6 | 7 | ReactDOM.render(, document.getElementById('root')); 8 | 9 | // If you want your app to work offline and load faster, you can change 10 | // unregister() to register() below. Note this comes with some pitfalls. 11 | // Learn more about service workers: http://bit.ly/CRA-PWA 12 | serviceWorker.unregister(); 13 | -------------------------------------------------------------------------------- /src/logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/resumeData.js: -------------------------------------------------------------------------------- 1 | let resumeData = { 2 | "imagebaseurl":"https://rbhatia46.github.io/", 3 | "name": "Rahul Bhatia", 4 | "role": "Frontend Developer and Data Scientist", 5 | "linkedinId":"Your LinkedIn Id", 6 | "skypeid": "Your skypeid", 7 | "roleDescription": "I like dabbling in various parts of frontend development and like to learn about new technologies, write technical articles or simply play games in my free time.", 8 | "socialLinks":[ 9 | { 10 | "name":"linkedin", 11 | "url":"https://www.linkedin.com/in/rahul-bhatia-67ba08121/", 12 | "className":"fa fa-linkedin" 13 | }, 14 | { 15 | "name":"github", 16 | "url":"http://github.com/rbhatia46", 17 | "className":"fa fa-github" 18 | }, 19 | { 20 | "name":"skype", 21 | "url":"http://twitter.com/rbhatia46", 22 | "className":"fa fa-twitter" 23 | } 24 | ], 25 | "aboutme":"I am currently a pre-final year student at The LNM Institute of Information Technology and pursuing my B.Tech from here. I am a self taught Full Stack Web Developer, currently diving deeper into Machine Learning. I believe that to be successful in life, one needs to be obsessive with their dreams and keep working towards them.", 26 | "address":"India", 27 | "website":"https://rbhatia46.github.io", 28 | "education":[ 29 | { 30 | "UniversityName":"The LNM Insitute of Information Technology", 31 | "specialization":"Some specialization", 32 | "MonthOfPassing":"Aug", 33 | "YearOfPassing":"2020", 34 | "Achievements":"Some Achievements" 35 | }, 36 | { 37 | "UniversityName":"Some University", 38 | "specialization":"Some specialization", 39 | "MonthOfPassing":"Jan", 40 | "YearOfPassing":"2018", 41 | "Achievements":"Some Achievements" 42 | } 43 | ], 44 | "work":[ 45 | { 46 | "CompanyName":"Some Company", 47 | "specialization":"Some specialization", 48 | "MonthOfLeaving":"Jan", 49 | "YearOfLeaving":"2018", 50 | "Achievements":"Some Achievements" 51 | }, 52 | { 53 | "CompanyName":"Some Company", 54 | "specialization":"Some specialization", 55 | "MonthOfLeaving":"Jan", 56 | "YearOfLeaving":"2018", 57 | "Achievements":"Some Achievements" 58 | } 59 | ], 60 | "skillsDescription":"Your skills here", 61 | "skills":[ 62 | { 63 | "skillname":"HTML5" 64 | }, 65 | { 66 | "skillname":"CSS" 67 | }, 68 | { 69 | "skillname":"Reactjs" 70 | } 71 | ], 72 | "portfolio":[ 73 | { 74 | "name":"project1", 75 | "description":"mobileapp", 76 | "imgurl":"images/portfolio/phone.jpg" 77 | }, 78 | { 79 | "name":"project2", 80 | "description":"mobileapp", 81 | "imgurl":"images/portfolio/project.jpg" 82 | }, 83 | { 84 | "name":"project3", 85 | "description":"mobileapp", 86 | "imgurl":"images/portfolio/project2.png" 87 | }, 88 | { 89 | "name":"project4", 90 | "description":"mobileapp", 91 | "imgurl":"images/portfolio/phone.jpg" 92 | } 93 | ], 94 | "testimonials":[ 95 | { 96 | "description":"This is a sample testimonial", 97 | "name":"Some technical guy" 98 | }, 99 | { 100 | "description":"This is a sample testimonial", 101 | "name":"Some technical guy" 102 | } 103 | ] 104 | } 105 | 106 | export default resumeData -------------------------------------------------------------------------------- /src/serviceWorker.js: -------------------------------------------------------------------------------- 1 | // This optional code is used to register a service worker. 2 | // register() is not called by default. 3 | 4 | // This lets the app load faster on subsequent visits in production, and gives 5 | // it offline capabilities. However, it also means that developers (and users) 6 | // will only see deployed updates on subsequent visits to a page, after all the 7 | // existing tabs open on the page have been closed, since previously cached 8 | // resources are updated in the background. 9 | 10 | // To learn more about the benefits of this model and instructions on how to 11 | // opt-in, read http://bit.ly/CRA-PWA 12 | 13 | const isLocalhost = Boolean( 14 | window.location.hostname === 'localhost' || 15 | // [::1] is the IPv6 localhost address. 16 | window.location.hostname === '[::1]' || 17 | // 127.0.0.1/8 is considered localhost for IPv4. 18 | window.location.hostname.match( 19 | /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ 20 | ) 21 | ); 22 | 23 | export function register(config) { 24 | if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { 25 | // The URL constructor is available in all browsers that support SW. 26 | const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href); 27 | if (publicUrl.origin !== window.location.origin) { 28 | // Our service worker won't work if PUBLIC_URL is on a different origin 29 | // from what our page is served on. This might happen if a CDN is used to 30 | // serve assets; see https://github.com/facebook/create-react-app/issues/2374 31 | return; 32 | } 33 | 34 | window.addEventListener('load', () => { 35 | const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; 36 | 37 | if (isLocalhost) { 38 | // This is running on localhost. Let's check if a service worker still exists or not. 39 | checkValidServiceWorker(swUrl, config); 40 | 41 | // Add some additional logging to localhost, pointing developers to the 42 | // service worker/PWA documentation. 43 | navigator.serviceWorker.ready.then(() => { 44 | console.log( 45 | 'This web app is being served cache-first by a service ' + 46 | 'worker. To learn more, visit http://bit.ly/CRA-PWA' 47 | ); 48 | }); 49 | } else { 50 | // Is not localhost. Just register service worker 51 | registerValidSW(swUrl, config); 52 | } 53 | }); 54 | } 55 | } 56 | 57 | function registerValidSW(swUrl, config) { 58 | navigator.serviceWorker 59 | .register(swUrl) 60 | .then(registration => { 61 | registration.onupdatefound = () => { 62 | const installingWorker = registration.installing; 63 | if (installingWorker == null) { 64 | return; 65 | } 66 | installingWorker.onstatechange = () => { 67 | if (installingWorker.state === 'installed') { 68 | if (navigator.serviceWorker.controller) { 69 | // At this point, the updated precached content has been fetched, 70 | // but the previous service worker will still serve the older 71 | // content until all client tabs are closed. 72 | console.log( 73 | 'New content is available and will be used when all ' + 74 | 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' 75 | ); 76 | 77 | // Execute callback 78 | if (config && config.onUpdate) { 79 | config.onUpdate(registration); 80 | } 81 | } else { 82 | // At this point, everything has been precached. 83 | // It's the perfect time to display a 84 | // "Content is cached for offline use." message. 85 | console.log('Content is cached for offline use.'); 86 | 87 | // Execute callback 88 | if (config && config.onSuccess) { 89 | config.onSuccess(registration); 90 | } 91 | } 92 | } 93 | }; 94 | }; 95 | }) 96 | .catch(error => { 97 | console.error('Error during service worker registration:', error); 98 | }); 99 | } 100 | 101 | function checkValidServiceWorker(swUrl, config) { 102 | // Check if the service worker can be found. If it can't reload the page. 103 | fetch(swUrl) 104 | .then(response => { 105 | // Ensure service worker exists, and that we really are getting a JS file. 106 | const contentType = response.headers.get('content-type'); 107 | if ( 108 | response.status === 404 || 109 | (contentType != null && contentType.indexOf('javascript') === -1) 110 | ) { 111 | // No service worker found. Probably a different app. Reload the page. 112 | navigator.serviceWorker.ready.then(registration => { 113 | registration.unregister().then(() => { 114 | window.location.reload(); 115 | }); 116 | }); 117 | } else { 118 | // Service worker found. Proceed as normal. 119 | registerValidSW(swUrl, config); 120 | } 121 | }) 122 | .catch(() => { 123 | console.log( 124 | 'No internet connection found. App is running in offline mode.' 125 | ); 126 | }); 127 | } 128 | 129 | export function unregister() { 130 | if ('serviceWorker' in navigator) { 131 | navigator.serviceWorker.ready.then(registration => { 132 | registration.unregister(); 133 | }); 134 | } 135 | } 136 | --------------------------------------------------------------------------------