├── .editorconfig ├── .gitignore ├── README.md ├── assets ├── css │ ├── base │ │ ├── _global.sass │ │ ├── _helpers.sass │ │ ├── _icons.sass │ │ ├── _media.sass │ │ ├── _typo.sass │ │ ├── _variables.sass │ │ └── normalize.scss │ ├── components │ │ ├── _buttons.sass │ │ ├── _card.sass │ │ ├── _form.sass │ │ ├── _header.sass │ │ └── _post-section.sass │ └── style.sass ├── img │ ├── damian.jpg │ ├── github.png │ ├── github.svg │ ├── gitlab.png │ ├── gitlab.svg │ ├── hero.png │ ├── knh-front.jpg │ ├── knh-inner.jpg │ ├── knh-logo.svg │ ├── logo-footer.png │ ├── logo.png │ ├── logo_codeship_colour.svg │ ├── logo_native-script.svg │ ├── logo_vue-newsletter.png │ ├── media-pause.svg │ ├── media-play.svg │ ├── monaca-logo.svg │ ├── monterail-logotype.svg │ ├── monterail.png │ ├── nhcinema.jpg │ ├── twitter.png │ ├── twitter.svg │ └── vuejsfeed-logo.png ├── vueconf.svg └── vueconf_logo.svg ├── components ├── Attraction.vue ├── Cookies.vue ├── Event.vue ├── Footer.vue ├── Hero.vue ├── Hint.vue ├── Intro.vue ├── LogoType.vue ├── MainPhoto.vue ├── Modal.vue ├── Navbar.vue ├── Newsletter.vue ├── Organizers.vue ├── PhotoList.vue ├── PhotoSlider.vue ├── Speaker.vue ├── SpeakersList.vue ├── SplashVideo.vue ├── Sponsors.vue ├── SubmitTalks.vue ├── Talk.vue ├── Tickets.vue ├── Venue.vue ├── VideoNav.vue ├── VideoPlayer.vue └── WroclawVideo.vue ├── content ├── agenda.js ├── coc.md ├── hints.js ├── hotels.js ├── intro.md ├── restaurants.js ├── scheduleDay1.js ├── scheduleDay2.js ├── sights.js ├── speakers │ ├── cfp.md │ └── speaker-list.js ├── summaryText.md ├── talkVideos.js ├── terms.md └── tickets.js ├── layouts ├── default.vue └── error.vue ├── nuxt.config.js ├── package.json ├── pages ├── codeofconduct.vue ├── guide.vue ├── index.vue ├── privacypolicy.vue ├── program.vue ├── schedule.vue ├── speakers.vue ├── summary.vue ├── terms.vue └── workshops.vue ├── plugins ├── analytics.js ├── cookies.js └── offline.js └── static ├── attractions ├── barbara.jpg ├── bb_hotel.jpg ├── europeum_hotel.jpg ├── granary_hotel.jpg ├── karavan.jpg ├── la_maddalena.jpg ├── mama_manousch.jpg ├── market_hall.jpg ├── market_square.jpg ├── monopol_hotel.jpg ├── national_museum.jpg ├── ostrow_tumski.jpg ├── papa_bar.jpg ├── pergola.jpg ├── pod-papugami.jpg ├── poster_gallery.jpg ├── puro_hotel.jpg ├── qubus_hotel.jpg ├── sakana_sushi.jpg ├── sky_tower.jpg ├── szajba.jpg ├── szajnochy_11.jpg └── zyzna.jpg ├── favicon.ico ├── forms ├── bb_form.pdf ├── europeum_form.pdf ├── granary_form.pdf └── monopol_form.pdf ├── google228d543f7dd755d8.html ├── img ├── afterparty.jpg ├── alex.jpg ├── blake.jpg ├── callum.jpg ├── chris.jpg ├── cover.png ├── ed.jpg ├── eric.jpg ├── evan.jpg ├── filipa.jpg ├── guillaume.jpg ├── ic-coffee-break.svg ├── ic-discussion-panel.svg ├── ic-end-2.svg ├── ic-happy.svg ├── ic-lighting-talks.svg ├── ic-lunch-break.svg ├── ic-registration.svg ├── ic-tba.svg ├── jacob.jpg ├── jacoblee.jpg ├── logo-120.png ├── logo-144.png ├── logo-152.png ├── logo-192.png ├── logo-384.png ├── logo-48.png ├── masa.jpg ├── pawel.jpg ├── pine.jpg ├── roman.jpg ├── sarah.jpg ├── sean.jpg └── sebastien.jpg ├── manifest.json ├── privacypolicy.pdf ├── sw.js └── terms_and_conditions.pdf /.editorconfig: -------------------------------------------------------------------------------- 1 | [*.sass] 2 | indent_style = space 3 | indent_size = 2 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | tmp/ 3 | .nuxt/ 4 | dist/ 5 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # vueconf2 2 | 3 | > VueConf 2017 4 | 5 | ## Build Setup 6 | 7 | ``` bash 8 | # install dependencies 9 | $ npm install # Or yarn install 10 | 11 | # serve with hot reload at localhost:3000 12 | $ npm run dev 13 | 14 | # build for production and launch server 15 | $ npm run build 16 | $ npm start 17 | 18 | # generate static project 19 | $ npm run generate 20 | ``` 21 | 22 | For detailed explanation on how things work, checkout the [Nuxt.js docs](https://github.com/nuxt/nuxt.js). 23 | -------------------------------------------------------------------------------- /assets/css/base/_global.sass: -------------------------------------------------------------------------------- 1 | html, body 2 | font-family: 'Source Sans Pro', sans-serif 3 | font-size: 100% 4 | height: 100% 5 | color: $color-text 6 | background-color: #f9f9f9 7 | 8 | .container 9 | margin: 0 auto 10 | padding-top: 130px 11 | 12 | .container__inner 13 | max-width: 960px 14 | margin: auto 15 | padding: 0 20px 16 | 17 | .center 18 | text-align: center 19 | 20 | .section 21 | padding-top: 80px 22 | padding-bottom: 80px 23 | position: relative 24 | 25 | .terms 26 | h1, h2, h3 27 | text-align: center 28 | 29 | h1, h2 30 | margin-bottom: 0 31 | 32 | h3 33 | margin-top: 0 34 | 35 | a, a:visited 36 | text-decoration: none 37 | color: $color-link 38 | 39 | .page-enter-active, .page-leave-active 40 | transition: opacity .25s ease 41 | 42 | .page-enter, .page-leave-active 43 | opacity: 0 44 | 45 | .vueconf-logo 46 | max-height: 50vh 47 | -------------------------------------------------------------------------------- /assets/css/base/_helpers.sass: -------------------------------------------------------------------------------- 1 | $font: 'Source Sans Pro', sans-serif 2 | 3 | @import ./media 4 | @import ./variables 5 | -------------------------------------------------------------------------------- /assets/css/base/_icons.sass: -------------------------------------------------------------------------------- 1 | .icon 2 | display: inline-block 3 | vertical-align: middle 4 | background-repeat: no-repeat 5 | 6 | .icon--twitter 7 | background-image: url('~assets/img/twitter.svg') 8 | background-size: 24px 19px 9 | width: 24px 10 | height: 19px 11 | 12 | .icon--github 13 | background-image: url('~assets/img/github.svg') 14 | background-size: 22px 15 | width: 22px 16 | height: 22px 17 | 18 | .icon--gitlab 19 | background-image: url('~assets/img/gitlab.svg') 20 | background-size: 22px 21 | width: 22px 22 | height: 22px 23 | -------------------------------------------------------------------------------- /assets/css/base/_media.sass: -------------------------------------------------------------------------------- 1 | $screen: "only screen" !default 2 | 3 | $xsmall: 420px 4 | $small: 640px 5 | $medium: 1024px 6 | $large: 1240px 7 | $xlarge: 1920px 8 | 9 | $landscape: "#{$screen} and (orientation: landscape)" 10 | $portrait: "#{$screen} and (orientation: portrait)" 11 | 12 | $small-up: "#{$screen}" !default 13 | $small-only: "#{$screen} and (max-width: #{$small})" !default 14 | 15 | $xsmall-up: "#{$screen} and (min-width: #{$xsmall})" !default 16 | $xsmall-only: "#{$screen} and (min-width: #{$small}) and (max-width: #{$xsmall})" !default 17 | 18 | $medium-up: "#{$screen} and (min-width: #{$small})" !default 19 | $medium-only: "#{$screen} and (min-width: #{$small}) and (max-width: #{$medium})" !default 20 | 21 | $large-up: "#{$screen} and (min-width: #{$medium})" !default 22 | $large-only: "#{$screen} and (min-width: #{$medium}) and (max-width: #{$large})" !default 23 | $large-down: "#{$screen} and (max-width: #{$medium})" !default 24 | 25 | $xlarge-up: "#{$screen} and (min-width: #{$large})" !default 26 | 27 | $xxlarge-up: "#{$screen} and (min-width: #{$xlarge})" !default 28 | -------------------------------------------------------------------------------- /assets/css/base/_typo.sass: -------------------------------------------------------------------------------- 1 | .content 2 | margin: 0 -20px 3 | 4 | h1, h2, h3, h4, p, ul 5 | font-family: $font 6 | color: $color-text 7 | 8 | h1 9 | font-size: 28px 10 | font-weight: 300 11 | margin-bottom: 80px 12 | 13 | @media #{$medium-up} 14 | font-size: 32px 15 | 16 | @media #{$large-up} 17 | font-size: 44px 18 | 19 | h2 20 | font: 21 | size: 24px 22 | weight: 300 23 | 24 | @media #{$medium-up} 25 | font-size: 28px 26 | 27 | @media #{$large-up} 28 | font-size: 36px 29 | 30 | h3 31 | font: 32 | size: 22px 33 | weight: 600 34 | 35 | @media #{$medium-up} 36 | font-size: 24px 37 | 38 | h4 39 | font: 40 | size: 20px 41 | weight: 600 42 | 43 | @media #{$medium-up} 44 | font-size: 22px 45 | 46 | p 47 | margin: 20px 0 0 48 | font-size: 18px 49 | font-weight: 300 50 | line-height: 1.4 51 | 52 | @media #{$medium-up} 53 | font-size: 20px 54 | 55 | @media #{$large-up} 56 | font-size: 22px 57 | 58 | ul, ol 59 | margin: 20px 0 0 60 | font-size: 18px 61 | font-weight: 300 62 | line-height: 1.4 63 | 64 | @media #{$medium-up} 65 | font-size: 20px 66 | 67 | @media #{$large-up} 68 | font-size: 22px 69 | 70 | hr 71 | border: none 72 | border-top: 1px solid #ddd 73 | 74 | strong 75 | font-weight: 600 76 | 77 | a 78 | color: $color-link 79 | text-decoration: none 80 | -------------------------------------------------------------------------------- /assets/css/base/_variables.sass: -------------------------------------------------------------------------------- 1 | $color-white: #FFFFFF 2 | $color-green--dark: #3EB882 3 | $color-blue: #445B71 4 | $color-red: #D3160A 5 | 6 | $color-text: #35485E 7 | $color-text--light: #636970 8 | $color-border: #2D9668 9 | $color-section: #F6F6F6 10 | $color-link: #3BB881 11 | $color-vue-green: #3BB881 12 | -------------------------------------------------------------------------------- /assets/css/components/_buttons.sass: -------------------------------------------------------------------------------- 1 | .button 2 | display: inline-block 3 | vertical-align: middle 4 | padding: 10px 33px 5 | background-color: $color-green--dark 6 | color: $color-white 7 | font-family: $font 8 | font-weight: 300 9 | font-size: 20px 10 | line-height: 1.25 11 | text-align: center 12 | white-space: nowrap 13 | cursor: pointer 14 | user-select: none 15 | border: 0 16 | border-radius: 20px 17 | letter-spacing: 0.5px 18 | text-decoration: none 19 | transition: background-color 0.3s ease 20 | 21 | @media #{$medium-up} 22 | font-size: 22px 23 | 24 | &:hover 25 | background-color: darken($color-green--dark, 10%) 26 | 27 | .button--dark 28 | font-size: 20px 29 | background-color: $color-text 30 | border-radius: 50px 31 | 32 | &:hover 33 | background-color: lighten($color-text, 10%) 34 | 35 | .button[disabled] 36 | background-color: #afd0c1 37 | 38 | .button--small 39 | font-size: 14px 40 | padding: 7px 20px 41 | font-weight: normal 42 | letter-spacing: 1px 43 | -------------------------------------------------------------------------------- /assets/css/components/_card.sass: -------------------------------------------------------------------------------- 1 | @mixin card 2 | background: #fff 3 | border-radius: 5px 4 | text-align: left 5 | box-shadow: 0 15px 35px rgba(50, 50, 93, 0.03), 0 5px 15px rgba(0, 0, 0, 0.06) 6 | cursor: pointer 7 | transition: all 0.15s ease 8 | 9 | &:hover 10 | box-shadow: 0 15px 35px rgba(50, 50, 93, 0.07), 0 5px 15px rgba(0, 0, 0, 0.1) 11 | -------------------------------------------------------------------------------- /assets/css/components/_form.sass: -------------------------------------------------------------------------------- 1 | .form__label 2 | display: inline-block 3 | font-size: 32px 4 | font-family: $font 5 | vertical-align: middle 6 | line-height: 59px 7 | 8 | .form__input 9 | position: relative 10 | width: 100% 11 | padding: 15px 25px 12 | font-size: 18px 13 | font-weight: 300 14 | color: $color-text--light 15 | border: 1px solid #ddd 16 | box-sizing: border-box 17 | border-radius: 50px 18 | outline: 0 19 | -------------------------------------------------------------------------------- /assets/css/components/_header.sass: -------------------------------------------------------------------------------- 1 | .header 2 | max-width: 960px 3 | margin: 0 auto 4 | padding: 0 15px 5 | -------------------------------------------------------------------------------- /assets/css/components/_post-section.sass: -------------------------------------------------------------------------------- 1 | .post-section__header 2 | z-index: 2 3 | position: relative 4 | font-size: 28px 5 | color: $color-text 6 | font-weight: 300 7 | margin-top: 0 8 | 9 | @media #{$medium-up} 10 | font-size: 32px 11 | 12 | @media #{$large-up} 13 | font-size: 38px 14 | 15 | .post-section 16 | text-align: center 17 | 18 | .post-section__button 19 | margin: 25px 0 0 20 | border-radius: 50px 21 | 22 | @media #{$medium-up} 23 | margin: 35px 0 0 24 | 25 | @media #{$large-up} 26 | margin: 35px 0 0 27 | -------------------------------------------------------------------------------- /assets/css/style.sass: -------------------------------------------------------------------------------- 1 | @import base/normalize 2 | @import base/helpers 3 | @import base/global 4 | @import base/icons 5 | @import base/typo 6 | 7 | @import components/buttons 8 | @import components/form 9 | @import components/header 10 | @import components/post-section 11 | -------------------------------------------------------------------------------- /assets/img/damian.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/damian.jpg -------------------------------------------------------------------------------- /assets/img/github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/github.png -------------------------------------------------------------------------------- /assets/img/github.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Fill 3 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /assets/img/gitlab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/gitlab.png -------------------------------------------------------------------------------- /assets/img/gitlab.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | logo-square 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /assets/img/hero.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/hero.png -------------------------------------------------------------------------------- /assets/img/knh-front.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/knh-front.jpg -------------------------------------------------------------------------------- /assets/img/knh-inner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/knh-inner.jpg -------------------------------------------------------------------------------- /assets/img/logo-footer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/logo-footer.png -------------------------------------------------------------------------------- /assets/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/logo.png -------------------------------------------------------------------------------- /assets/img/logo_codeship_colour.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | logo_codeship_colour 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /assets/img/logo_native-script.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 9 | 10 | 12 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /assets/img/logo_vue-newsletter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/logo_vue-newsletter.png -------------------------------------------------------------------------------- /assets/img/media-pause.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | media-pause 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/img/media-play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | media-play 4 | 5 | 6 | -------------------------------------------------------------------------------- /assets/img/monaca-logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 48 | -------------------------------------------------------------------------------- /assets/img/monterail-logotype.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | logo 5 | Created with Sketch. 6 | 7 | 8 | 28 | 29 | -------------------------------------------------------------------------------- /assets/img/monterail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/monterail.png -------------------------------------------------------------------------------- /assets/img/nhcinema.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/nhcinema.jpg -------------------------------------------------------------------------------- /assets/img/twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/twitter.png -------------------------------------------------------------------------------- /assets/img/twitter.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | twitter 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /assets/img/vuejsfeed-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/assets/img/vuejsfeed-logo.png -------------------------------------------------------------------------------- /assets/vueconf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /assets/vueconf_logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /components/Attraction.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 45 | 46 | 121 | -------------------------------------------------------------------------------- /components/Cookies.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 35 | 36 | 66 | -------------------------------------------------------------------------------- /components/Footer.vue: -------------------------------------------------------------------------------- 1 | 36 | 37 | 124 | -------------------------------------------------------------------------------- /components/Hero.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 33 | 34 | 109 | -------------------------------------------------------------------------------- /components/Hint.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 18 | 19 | 38 | -------------------------------------------------------------------------------- /components/Intro.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 15 | 16 | 18 | -------------------------------------------------------------------------------- /components/MainPhoto.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 42 | 86 | -------------------------------------------------------------------------------- /components/Modal.vue: -------------------------------------------------------------------------------- 1 | 17 | 18 | 28 | 29 | 87 | -------------------------------------------------------------------------------- /components/Navbar.vue: -------------------------------------------------------------------------------- 1 | 29 | 30 | 54 | 55 | 176 | -------------------------------------------------------------------------------- /components/Newsletter.vue: -------------------------------------------------------------------------------- 1 | 21 | 22 | 35 | 36 | 70 | -------------------------------------------------------------------------------- /components/Organizers.vue: -------------------------------------------------------------------------------- 1 | 37 | 38 | 41 | 42 | 141 | -------------------------------------------------------------------------------- /components/PhotoList.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 34 | 81 | -------------------------------------------------------------------------------- /components/PhotoSlider.vue: -------------------------------------------------------------------------------- 1 | 21 | 117 | 240 | -------------------------------------------------------------------------------- /components/Speaker.vue: -------------------------------------------------------------------------------- 1 | 35 | 36 | 74 | 75 | 215 | -------------------------------------------------------------------------------- /components/SpeakersList.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 33 | 34 | 48 | -------------------------------------------------------------------------------- /components/SplashVideo.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 48 | 49 | 125 | -------------------------------------------------------------------------------- /components/Sponsors.vue: -------------------------------------------------------------------------------- 1 | 28 | 29 | 33 | 34 | 73 | -------------------------------------------------------------------------------- /components/SubmitTalks.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 18 | 19 | 21 | -------------------------------------------------------------------------------- /components/Talk.vue: -------------------------------------------------------------------------------- 1 | 21 | 22 | 36 | 37 | 135 | -------------------------------------------------------------------------------- /components/Tickets.vue: -------------------------------------------------------------------------------- 1 | 20 | 21 | 44 | 45 | 111 | -------------------------------------------------------------------------------- /components/Venue.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 29 | 30 | 54 | -------------------------------------------------------------------------------- /components/VideoNav.vue: -------------------------------------------------------------------------------- 1 | 12 | 34 | 111 | -------------------------------------------------------------------------------- /components/VideoPlayer.vue: -------------------------------------------------------------------------------- 1 | 8 | 42 | 89 | -------------------------------------------------------------------------------- /components/WroclawVideo.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 13 | 14 | 40 | -------------------------------------------------------------------------------- /content/coc.md: -------------------------------------------------------------------------------- 1 | # Conference Code of Conduct 2 | 3 | All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to help ensure a safe environment for everybody. 4 | 5 | ## Need Help? 6 | 7 | Emergency contact email and phone number will be added here before the event. 8 | 9 | ## The Quick Version 10 | 11 | Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers. 12 | 13 | ## The Less Quick Version 14 | 15 | Harassment includes offensive verbal comments related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention. 16 | 17 | Participants asked to stop any harassing behavior are expected to comply immediately. 18 | 19 | Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment. 20 | 21 | If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund. 22 | 23 | If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded clothing and/or badges. 24 | 25 | Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance. 26 | 27 | We expect participants to follow these rules at conference and workshop venues and conference-related social events. 28 | -------------------------------------------------------------------------------- /content/hints.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | title: 'Taxi Partner', 4 | description: '24h English-spoken professional service during the conference time.', 5 | instruction: 'Call +48 519 119 627.', 6 | link: '', 7 | }, 8 | { 9 | title: 'Enel-med', 10 | description: 'Private health care providing professional medical services. In case of emergency you can count on English-spoken help.', 11 | link: 'https://cm.enel.pl/medical-center/', 12 | }, 13 | { 14 | title: 'NextBike (Wrocławski Rower Miejski)', 15 | description: 'A public bike rental scheme with a lot of terminals across Wroclaw. You just need to register your credit card and then get a code to unlock the bike. You can park and check out at any terminal in the city. Bikes are available 24h a day. The initial 20 minutes are free.', 16 | link: 'https://nextbike.pl/en/cities/wroclawski-rower-miejski/', 17 | } 18 | ] 19 | -------------------------------------------------------------------------------- /content/hotels.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | title: 'Monopol Hotel *****', 4 | description: 'Old historic building plus modern design and wifi – the hotel is located in a central part of the city close to Market Square and only 8 minutes walk from the conference venue. It offers: luxurious rooms, 2 restaurants (one recommended by Gault&Millau Yellow Guide), cafe bar, spa and 2 summer terraces.', 5 | offer: 'As a conference participant, you get a 10% discount off the regular price and free cancellation!', 6 | instruction: 'Fill the booking form (typing a password: vuesome2017) and send it to the hotel’s e-mail address: monopol.wroclaw@hotel.com.pl', 7 | link: 'https://monopolwroclaw.hotel.com.pl/en/', 8 | formLink: '/forms/monopol_form.pdf', 9 | mapLink: 'https://www.google.pl/maps/place/Hotel+Monopol/@51.1060701,17.0286756,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc273f2c6fc87:0x8066ea5308a08d7b!8m2!3d51.1060668!4d17.0308643', 10 | image: '/attractions/monopol_hotel.jpg' 11 | }, 12 | { 13 | title: 'Qubus Hotel ****', 14 | description: 'Place providing complete relaxation, where you won’t hear much in the way of street noise. The hotel offers exclusive rooms with soundproof windows. If you’re a fitness freak, you can also check out the hotel’s Fitness Centre, which offers a professional gym, swimming pool, hydromassage bathtub and sauna. Only 150 meters to Town Square and 10 minutes to the venue.', 15 | offer: 'Single room (breakfast included) 440 PLN / Double room (breakfast included) 520 PLN', 16 | instruction: 'Click the link to the hotel’s offer subpage: http://bit.ly/VUESOME2017', 17 | link: 'https://www.qubushotel.com/en/hotels/wroclaw/4/', 18 | mapLink: 'https://www.google.pl/maps/place/Qubus+Hotel+Wroclaw/@51.1090719,17.0329714,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc2767bff1f49:0x572b16c57e8b6a16!8m2!3d51.1090686!4d17.0351601', 19 | image: '/attractions/qubus_hotel.jpg' 20 | }, 21 | { 22 | title: 'Granary Hotel *****', 23 | description: '“Home away from home” - quotes the hotel about its amazing atmosphere. Complimentary broadband Internet and WiFi at any place in the hotel – ensured. Your own tea and coffee making facility, and private mini bar. In Granary you find coziness combined with unique historical ambience and modernity. 10 minutes to the venue', 24 | offer: 'Single room (breakfast included) 540 PLN / Double room (breakfast included) 610 PLN', 25 | instruction: 'Offer expires on June 2nd! Fill the booking form and send it to the hotel’s e-mail address: mailto:dos@granaryhotel.com', 26 | link: 'http://www.thegranaryhotel.com/en/default.html', 27 | formLink: '/forms/granary_form.pdf', 28 | mapLink: 'https://www.google.pl/maps/place/THE+GRANARY+LA+SUITE+HOTEL/@51.106189,17.0325518,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc2712d490715:0x905812639a984339!8m2!3d51.1061857!4d17.0347405', 29 | image: '/attractions/granary_hotel.jpg' 30 | }, 31 | { 32 | title: 'Europeum Hotel ***', 33 | description: 'High-class hotel, willingly chosen and recommended by celebrities, due to its high-level of hospitality and service. Enjoy your meal in the award-winning and trend-setting restaurant Brasserie 27 which offers international cuisine. The hotel’s location provides a great opportunity to stroll around the city and get to the venue (2 minutes!).', 34 | offer: 'You get 8% (1 night) or 12%(min. 3 nights) discount off the regular price (breakfast, sauna and gym included).', 35 | instruction: 'Fill out the booking form and send it to the hotel’s e-mail address: m.setecka@europeum.com', 36 | link: 'http://europeum.pl/en/', 37 | formLink: '/forms/europeum_form.pdf', 38 | mapLink: 'https://www.google.pl/maps/place/Hotel+Europeum/@51.1081575,17.0253191,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc274bdfc4e91:0x922304234e97f36d!8m2!3d51.1081542!4d17.0275078', 39 | image: '/attractions/europeum_hotel.jpg' 40 | }, 41 | { 42 | title: 'B&B Hotel Wroclaw Centrum **', 43 | description: 'The B&B belongs to the third largest budget-hotels chain in Europe. Its accommodations are dedicated to both leisure and business customers. Combination of interior minimalism, comfort and good prices makes the B&B’s offer cost-efficient and fully satisfying.', 44 | offer: 'Vue participants get 10% discount off the regular price.', 45 | instruction: 'Fill the booking form (typing a password: vuesome2017) and send it to the hotel’s e-mail address: wroclaw@hotelbb.com', 46 | link: 'https://www.hotelbb.pl/en/portal/hotels/overview.html?id=5003&type=hotel', 47 | formLink: '/forms/bb_form.pdf', 48 | mapLink: 'https://www.google.pl/maps/place/B%26B+Hotel+Wroc%C5%82aw+Centrum/@51.1065263,17.0363983,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc27739d42501:0x8d72e19ff20d158c!8m2!3d51.106523!4d17.038587', 49 | image: '/attractions/bb_hotel.jpg' 50 | } 51 | ] 52 | -------------------------------------------------------------------------------- /content/intro.md: -------------------------------------------------------------------------------- 1 | ## Every great framework deserves a great conference. 2 | 3 | We aim at bringing you the most inspiring tech-talks and in-depth case studies from the community's leading Vue.js developers. 4 | 5 | It is also a perfect opportunity to meet other like-minded developers. 6 | 7 | Before we share more details with you, we need some help! 8 | Please fill in the short survey regarding your preferences on lectures, workshops and organizational matters. 9 | -------------------------------------------------------------------------------- /content/restaurants.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | title: 'Mama Manousch', 4 | description: 'Excellent slow food made with precision, passion and concern. Rich menu and unusual design make Mama Manousch the best place to wine and dine. You leave fully satisfied and eager to come back.', 5 | offer: 'Vue participants are welcomed with a glass of wine!', 6 | link: 'http://www.mama-manousch.pl/', 7 | mapLink: 'https://www.google.pl/maps/place/Mama+Manousch+-+Food+%26+Wine/@51.1085557,17.0305213,17.79z/data=!4m5!3m4!1s0x470fc2743aaa1c0f:0xe29e3b39a32a6fb7!8m2!3d51.1084419!4d17.033048?hl=pl', 8 | image: '/attractions/mama_manousch.jpg' 9 | }, 10 | { 11 | title: 'Barbara', 12 | description: 'Former iconic milk bar in curious Polish People’s Republic times in Poland. Presently - cafe/info desk/culture center. New-designed space with alternative food and drinks. Famous operation center of European Capital of Culture in 2016. You also may accidentally take part in some concert, vernissage or performance.', 13 | offer: 'As a Vue guest you get a 10% discount.', 14 | link: 'http://www.wroclaw2016.pl/barbara', 15 | mapLink: 'https://www.google.pl/maps/place/Barbara/@51.1075801,17.030581,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc27419c5e433:0x2ae755fa287f4d58!8m2!3d51.1075768!4d17.0327697', 16 | image: '/attractions/barbara.jpg' 17 | }, 18 | { 19 | title: 'Żyzna', 20 | description: 'Vege/Vegan and probably the slowest food in the city. 100% natural products served in interesting and fresh way. This is a place for those who want to stimulate all senses while enjoying the meal.', 21 | offer: '15% discount on a two-course dinner (soup + main course)', 22 | link: 'https://www.facebook.com/zyznabistro/', 23 | mapLink: 'https://www.google.pl/maps/place/%C5%BByzna/@51.1118043,17.0343283,17z/data=!3m1!4b1!4m5!3m4!1s0x470fe9d8adb48bf5:0x61ea2d2497bf9253!8m2!3d51.111801!4d17.036517', 24 | image: '/attractions/zyzna.jpg' 25 | }, 26 | { 27 | title: 'Papa Bar', 28 | description: 'Upscale and highly recommended cocktail bar, recognized as the best place in Wroclaw. Exclusive drinks prepared by professionals in a cosmopolitan ambience.', 29 | offer: '10% discount for Vue participants.', 30 | link: 'http://www.papabar.pl/', 31 | mapLink: 'https://www.google.pl/maps/place/Papa+Bar/@51.1105525,17.0257032,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc2752df68d31:0x5ba9d7dd742e1c46!8m2!3d51.1105492!4d17.0278919', 32 | image: '/attractions/papa_bar.jpg' 33 | }, 34 | { 35 | title: 'La Maddalena', 36 | description: 'Original Mediterranean cuisine restaurant named after a small island located between Italian Sardinia and French Corsica. Interior decoration feels like southern sun, sand and sea. Start your feast with Bouillabaisse and finish trying amazing Moelleux.', 37 | offer: 'Vue participants are welcomed with a glass of wine!', 38 | link: 'http://www.lamaddalena.pl/', 39 | mapLink: 'https://www.google.pl/maps/place/La+Maddalena+Restaurant/@51.1082033,17.0224433,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc20b5b3a7d65:0x14dcd77bcc6132bc!8m2!3d51.1082!4d17.024632', 40 | image: '/attractions/la_maddalena.jpg' 41 | }, 42 | { 43 | title: 'Szajnochy 11', 44 | description: 'Fish imported from Dutch fish markets plus local Polish vegetables together give the best sushi in Wroclaw. Well-experienced cooks use unique souse-vide method. Their excellent dishes are a combination of Polish, Scandinavian and Japanese cuisine.', 45 | offer: '15% discount for all Vue participants.', 46 | link: 'http://szajnochy11.pl/', 47 | mapLink: 'https://www.google.pl/maps/place/Szajnochy+11/@51.1085171,17.0265667,17z/data=!4m12!1m6!3m5!1s0x470fc274ec9720d3:0xd09f86027380af2f!2sSzajnochy+11!8m2!3d51.1085171!4d17.0287554!3m4!1s0x470fc274ec9720d3:0xd09f86027380af2f!8m2!3d51.1085171!4d17.0287554?hl=en', 48 | image: '/attractions/szajnochy_11.jpg' 49 | }, 50 | { 51 | title: 'Szajba', 52 | description: 'Psychedelic Haribo bears, old retro radios, bohemian air and a huge spirits menu. Szajba is a gallery club, located in the famous Pokoyhof Passage – a business, art and meeting place. In the evening it’s also a great alternative disco.', 53 | offer: 'All -10% (only till 10pm)', 54 | link: 'http://www.szajba.wroclaw.pl/', 55 | mapLink: 'https://www.google.pl/maps/place/Klubogaleria+Szajba/@51.1084877,17.0242086,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc1ff6c1d7101:0x8f1c3beb042abf02!8m2!3d51.1084844!4d17.0263973', 56 | image: '/attractions/szajba.jpg' 57 | }, 58 | { 59 | title: 'Karavan', 60 | description: 'Cocktail bar and burger joint located among funeral homes. Apparently this unprofitable location was used to Karavan’s advantage and turned out to be a great success. Drink prosecco (poured from the tap) while being surrounded by dance macabre paintings and funeral decorations.', 61 | offer: '10% discount', 62 | link: 'https://krvn.pl/pl/kontakt/', 63 | mapLink: 'https://www.google.pl/maps/place/Karavan+Bar/@51.1096499,17.0212995,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc20b0e7d47af:0x64680dcbec22b9ed!8m2!3d51.1096466!4d17.0234882', 64 | image: '/attractions/karavan.jpg' 65 | }, 66 | { 67 | title: 'Pod Papugami', 68 | description: 'Restaurant and cocktail bar recommended by Forbes Navi Travel as a great place to visit while traveling on business. Pod Papugami became an iconic place due to its unique classic Hollywood cinema style. While dining and chilling, you can watch how professional bartenders prepare your drink.', 69 | offer: 'Vue participants get a free starter: snack and coffee - served before the main course', 70 | link: 'http://podpapugami.com.pl/', 71 | mapLink: 'https://www.google.pl/maps/place/Pod+Papugami+-+Restauracja+%26+Cocktail+Bar/@51.1100323,17.0289693,17z/data=!3m1!4b1!4m5!3m4!1s0x470fc275a81ad04d:0xe6997124ef851a4d!8m2!3d51.110029!4d17.031158', 72 | image: '/attractions/pod-papugami.jpg' 73 | }, 74 | { 75 | title: 'Sakana Sushi', 76 | description: 'Regarded as the best sushi bar in Wroclaw. Why? First of all, dishes are prepared by sushi masters, educated in tough Japanese culinary schools. Moreover, new courses are being meticulously created with the help of dietitians. This place promotes quality, health and joy. Try it.', 77 | offer: '10% discount', 78 | link: 'http://sakana.pl/pl/', 79 | mapLink: 'https://www.google.pl/maps/place/Sakana+Sushi.+Bar/@51.1128921,17.029564,17z/data=!3m1!4b1!4m5!3m4!1s0x470fe9df90d57331:0x918d17a4a84bca6!8m2!3d51.1128888!4d17.0317527', 80 | image: '/attractions/sakana_sushi.jpg' 81 | } 82 | ] 83 | -------------------------------------------------------------------------------- /content/sights.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | title: 'Market Hall', 4 | description: 'The Oldest “shopping center” in Wroclaw, former 16th century Arsenal, now both a tourist attraction and a market place. Come and meet nuns, priests and professors while shopping. Try the best coffee alternatives at Cafe Targowa - a mecca for coffee-driven people.', 5 | link: '', 6 | mapLink: 'https://goo.gl/maps/bvq6HqR6oZw', 7 | image: '/attractions/market_hall.jpg' 8 | }, 9 | { 10 | title: 'Ostrów Tumski', 11 | description: 'Visit the oldest part of the city! This is the beautiful “cathedral island” with sacral buildings: The Gothic St. John Baptist Cathedral, the Archdiocese Museum and Church of the Holy Cross. This is the only place in Wroclaw where a lamplighter ostentatiously turns on the gas lamps at dusk. Go for a walk and feel the historic breeze.', 12 | link: '', 13 | mapLink: 'https://goo.gl/maps/f27LaDmL49C2', 14 | image: '/attractions/ostrow_tumski.jpg' 15 | }, 16 | { 17 | title: 'National Museum', 18 | description: 'Museums in Wroclaw have their own unique, unrepeatable character. The front walls of the National Museum are covered with ivy. The building itself represents the 19th century Dutch, neo-renaissance style. While exploring local culture, don’t pass up the local art exhibition: Silesian Art of the 12-16th Centuries (including lots of stone sculpture work and medieval religious art).', 19 | link: '', 20 | mapLink: 'https://goo.gl/maps/wDPac36M3Zz', 21 | image: '/attractions/national_museum.jpg' 22 | }, 23 | { 24 | title: 'Market Square (Rynek)', 25 | description: 'Wroclaw’s Market Square is referred to as the most beautiful square in Europe. Try for yourself and decide whether it is a 10 out of 10. The townhouse facades were almost entirely reconstructed after the Second World War. Now the square also plays a role as the social and cultural centre: while walking you can come across a variety of happenings, concerts and performance art.', 26 | link: '', 27 | mapLink: 'https://goo.gl/maps/BB7nXJ196vB2', 28 | image: '/attractions/market_square.jpg' 29 | }, 30 | { 31 | title: 'Polish Poster Gallery', 32 | description: 'If you’re a graphic-oriented person and you really enjoy visual art, visit this small gallery offering interesting exhibitions of Polish poster artists’ works (e.g.:alternative film posters). There is also the possibility to buy one, choosing from a variety of pieces.', 33 | link: '', 34 | mapLink: 'https://goo.gl/maps/Hf8Kmer4X7Q2', 35 | image: '/attractions/poster_gallery.jpg' 36 | }, 37 | { 38 | title: 'Sky Tower', 39 | description: 'The highest viewpoint in Wroclaw (212m) – the only skyscraper in the city, constructed and built in opposition to the Old Town’s historical ambience. The building became a landmark on Wroclaw’s map. It is willingly visited by tourists during the whole year. Reaching the 50th floor, you can enjoy the city’s panorama, looking through the glass walls.', 40 | link: '', 41 | mapLink: 'https://goo.gl/maps/xvJ6USaMpp32', 42 | image: '/attractions/sky_tower.jpg' 43 | }, 44 | { 45 | title: 'Wroclaw Fountain (Pergola)', 46 | description: 'Can you imagine a 700 square meters screen made of water? Wroclaw Fountain is much more than a fountain. You can watch amazing animated projections combining audio and visual effects. There is variety of show themes with particular titles being Micro and Macro Cosmos, Four Elements, Beauty and the Beast. You can listen to anything from Beethoven to Daft Punk. Note that only a few such fountains exist in the world.', 47 | link: '', 48 | mapLink: 'https://goo.gl/maps/oJva3pPtrVM2', 49 | image: '/attractions/pergola.jpg' 50 | } 51 | ] 52 | -------------------------------------------------------------------------------- /content/speakers/cfp.md: -------------------------------------------------------------------------------- 1 | ## Want to become a speaker? 2 | 3 | Do you have something great to show? Want to share some knowledge? 4 | 5 | **That’s pretty Vuesome!** 6 | -------------------------------------------------------------------------------- /content/summaryText.md: -------------------------------------------------------------------------------- 1 | # VueConf 2017 2 | _21-23.06.2017_ 3 | 4 | Over 300 attendees from different parts of the world visited Wrocław to take part in the first international Vue-related conference organized by Monterail and Evan You. Check out the video and photo materials from the very first edition of VueConf! 5 | -------------------------------------------------------------------------------- /content/talkVideos.js: -------------------------------------------------------------------------------- 1 | const talks = [ 2 | { 3 | speaker: 'Evan You', 4 | name: 'Keynote', 5 | avatar: ['/img/evan.jpg'], 6 | videoUrl: 'https://www.youtube.com/embed/lG0Ys-2d4MA' 7 | }, 8 | { 9 | speaker: 'Chris Fritz', 10 | name: 'Avoiding an awkward fit: how to best introduce Vue into your app and team', 11 | avatar: ['/img/chris.jpg'], 12 | videoUrl: 'https://www.youtube.com/embed/SB_ZWr2_Bzo' 13 | }, 14 | { 15 | speaker: 'Alex & Sebastien Chopin', 16 | name: 'Server side rendering in Vue.js', 17 | avatar: ['/img/alex.jpg', '/img/sebastien.jpg'], 18 | videoUrl: 'https://www.youtube.com/embed/Dkf3AwxrSjE' 19 | }, 20 | { 21 | speaker: 'Callum Macrae', 22 | name: 'Accessibility in Single Page Apps', 23 | avatar: ['/img/callum.jpg'], 24 | videoUrl: '' 25 | }, 26 | { 27 | speaker: 'Pine Wu', 28 | name: 'var vetur = vscode + vue;', 29 | avatar: ['/img/pine.jpg'], 30 | videoUrl: '' 31 | }, 32 | { 33 | speaker: 'Sean Larkin', 34 | name: 'Code splitting patterns in Vue.js', 35 | avatar: ['/img/sean.jpg'], 36 | videoUrl: 'https://www.youtube.com/embed/rn97hCNQsKI' 37 | }, 38 | { 39 | speaker: 'Paweł Grabarz', 40 | name: 'new Vue() – beyond just an ordinary UI component', 41 | avatar: ['/img/pawel.jpg'], 42 | videoUrl: '' 43 | }, 44 | { 45 | speaker: 'Filipa Lacerda', 46 | name: 'No Time to Refactor, How we made the Frontend Awesome At GitLab With Vue.', 47 | avatar: ['/img/filipa.jpg'], 48 | videoUrl: 'https://www.youtube.com/embed/-69tKcl1oTE' 49 | }, 50 | { 51 | speaker: 'Discussion Panel', 52 | name: '', 53 | avatar: ['/img/ic-discussion-panel.svg'], 54 | videoUrl: '' 55 | }, 56 | { 57 | speaker: 'Eduardo San Martin Morote', 58 | name: 'Make your Apps Realtime with Firebase and Vue', 59 | avatar: ['/img/ed.jpg'], 60 | videoUrl: '' 61 | }, 62 | { 63 | speaker: 'Masahiro Tanaka', 64 | name: 'Best Practices for Hybrid Mobile Apps with Vue.js and Onsen UI', 65 | avatar: ['/img/masa.jpg'], 66 | videoUrl: '' 67 | }, 68 | { 69 | speaker: 'Eric Baer', 70 | name: 'The Evolution of API Design: From RPC to GraphQL', 71 | avatar: ['/img/eric.jpg'], 72 | videoUrl: '' 73 | }, 74 | { 75 | speaker: 'Guillaume Chau', 76 | name: 'GraphQL made easy with Apollo and Vue', 77 | avatar: ['/img/guillaume.jpg'], 78 | videoUrl: '' 79 | }, 80 | { 81 | speaker: 'Jacob Lee', 82 | name: 'Using Serverless Technology to Ship Vue Apps That Scale', 83 | avatar: ['/img/jacoblee.jpg'], 84 | videoUrl: 'https://www.youtube.com/embed/eFJnMH9V6GY' 85 | }, 86 | { 87 | speaker: 'Blake Newman', 88 | name: 'PRA with Vue.js', 89 | avatar: ['/img/blake.jpg'], 90 | videoUrl: '' 91 | }, 92 | { 93 | speaker: 'Roman Kuba', 94 | name: 'Testing Vue components with Jest', 95 | avatar: ['/img/roman.jpg'], 96 | videoUrl: '' 97 | }, 98 | { 99 | speaker: 'Sarah Drasner', 100 | name: 'Animating Vue', 101 | avatar: ['/img/sarah.jpg'], 102 | videoUrl: '' 103 | }, 104 | ] 105 | 106 | export default talks 107 | -------------------------------------------------------------------------------- /content/tickets.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | name: 'Regular Ticket', 4 | date: 'Conference 22-23 June', 5 | price: '€299 + 23% VAT', 6 | disabled: true, 7 | url: 'https://events.zippydesk.com/vueconf-2017/register' 8 | }, 9 | { 10 | name: 'Workshop Ticket', 11 | date: 'Workshop 21 June', 12 | price: '€299 + 23% VAT', 13 | disabled: true, 14 | url: 'https://events.zippydesk.com/vueconf-2017/register' 15 | } 16 | ] 17 | -------------------------------------------------------------------------------- /layouts/default.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 34 | 35 | 39 | -------------------------------------------------------------------------------- /layouts/error.vue: -------------------------------------------------------------------------------- 1 | 15 | 20 | 21 | 38 | -------------------------------------------------------------------------------- /nuxt.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | build: { 3 | filenames: { 4 | // TMP: Increment this each time when doing a release to bust the cache 5 | app: 'app.' + Date.now() + '.js' 6 | } 7 | }, 8 | /* 9 | ** Headers of the page 10 | */ 11 | head: { 12 | title: 'starter', 13 | meta: [ 14 | { charset: 'utf-8' }, 15 | { name: 'viewport', content: 'width=device-width, initial-scale=1, user-scalable=no' }, 16 | { hid: 'description', content: "First worldwide conference by Monterail and Evan You about Vue.js - the progressive JavaScript framework. Inspiring talks and workshops led by world experts." }, 17 | { name: 'description', content: '' }, 18 | { property: 'og:title', content: 'VueConf 2017 – June 21–23, 2017 in Wrocław, Poland | Vue.js Conference' }, 19 | { property: 'og:site_name', content: 'VueConf 2017 – June 21–23, 2017 in Wrocław, Poland | Vue.js Conference' }, 20 | { property: 'og:url', content: 'http://conf.vuejs.org' }, 21 | { property: 'og:type', content: 'website' }, 22 | { property: 'og:description', content: 'First worldwide conference by Monterail and Evan You about Vue.js - the progressive JavaScript framework. Inspiring talks and workshops led by world experts.' }, 23 | { property: 'og:image', content: 'img/cover.png' }, 24 | { property: 'twitter:card', content: 'summary_large_image' }, 25 | { property: 'twitter:site', content: '@vueconf' }, 26 | { property: 'twitter:image', content: 'http://conf.vuejs.org/img/cover.png' }, 27 | { property: 'twitter:title', content: 'VueConf 2017 – June 21–23, 2017 in Wrocław, Poland | Vue.js Conference' }, 28 | { property: 'twitter:description', content: 'First worldwide conference by Monterail and Evan You about Vue.js - the progressive JavaScript framework. Inspiring talks and workshops led by world experts.' }, 29 | { name: 'format-detection', content: 'telephone=no' }, 30 | { name: 'theme-color', content: '#3EB882' } 31 | ], 32 | link: [ 33 | { rel: 'icon', type: 'image/x-icon', href: '/img/logo-48.png' }, 34 | { rel: 'manifest', href: '/manifest.json' }, 35 | { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600&subset=latin-ext' }, 36 | ], 37 | script: [ 38 | { type: 'text/javascript', src: '/sw.js' } 39 | ] 40 | }, 41 | /* 42 | ** Global CSS 43 | */ 44 | // css: ['~assets/css/style.css'], 45 | /* 46 | ** Customize the progress-bar color 47 | */ 48 | loading: { color: '#3B8070' }, 49 | plugins: [ 50 | { src: '~plugins/analytics', ssr: false }, 51 | { src: '~plugins/cookies', ssr: false }, 52 | { src: '~plugins/offline.js', ssr: false } 53 | ] 54 | } 55 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vueconf2", 3 | "version": "1.0.0", 4 | "description": "VueConf 2017", 5 | "author": "Damian Dulisz ", 6 | "private": true, 7 | "dependencies": { 8 | "jstransformer-markdown-it": "^2.0.0", 9 | "markdown-it": "^8.2.2", 10 | "node-sass": "^4.3.0", 11 | "nuxt": "latest", 12 | "pug": "^2.0.0-beta10", 13 | "pug-loader": "^2.3.0", 14 | "sass-loader": "^4.1.1", 15 | "vue-cookie": "^1.1.3" 16 | }, 17 | "scripts": { 18 | "dev": "nuxt", 19 | "build": "nuxt build", 20 | "start": "nuxt start", 21 | "generate": "nuxt generate" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /pages/codeofconduct.vue: -------------------------------------------------------------------------------- 1 | 37 | 44 | 45 | 55 | -------------------------------------------------------------------------------- /pages/guide.vue: -------------------------------------------------------------------------------- 1 | 72 | 73 | 103 | 104 | 152 | -------------------------------------------------------------------------------- /pages/index.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 52 | 53 | 75 | -------------------------------------------------------------------------------- /pages/privacypolicy.vue: -------------------------------------------------------------------------------- 1 | 65 | 72 | 73 | 83 | -------------------------------------------------------------------------------- /pages/program.vue: -------------------------------------------------------------------------------- 1 | 18 | 19 | 38 | 39 | 52 | -------------------------------------------------------------------------------- /pages/schedule.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 43 | 44 | 57 | -------------------------------------------------------------------------------- /pages/speakers.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 33 | 34 | 51 | -------------------------------------------------------------------------------- /pages/summary.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 49 | 50 | 72 | -------------------------------------------------------------------------------- /pages/workshops.vue: -------------------------------------------------------------------------------- 1 | 62 | 63 | 117 | 118 | 131 | -------------------------------------------------------------------------------- /plugins/analytics.js: -------------------------------------------------------------------------------- 1 | if (process.BROWSER_BUILD) { 2 | (function(h,o,t,j,a,r){ 3 | h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; 4 | h._hjSettings={hjid:371563,hjsv:5}; 5 | a=o.getElementsByTagName('head')[0]; 6 | r=o.createElement('script');r.async=1; 7 | r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; 8 | a.appendChild(r); 9 | })(window,document,'//static.hotjar.com/c/hotjar-','.js?sv='); 10 | 11 | (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 12 | (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 13 | m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 14 | })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 15 | ga('create', 'UA-89255364-1', 'auto'); 16 | ga('send', 'pageview'); 17 | 18 | !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 19 | n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 20 | n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; 21 | t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 22 | document,'script','//connect.facebook.net/en_US/fbevents.js'); 23 | 24 | (function() { 25 | window._pa = window._pa || {}; 26 | var pa = document.createElement('script'); pa.type = 'text/javascript'; pa.async = true; 27 | pa.src = ('https:' == document.location.protocol ? 'https:' : 'http:') + "//tag.marinsm.com/serve/58b3e1ab442e81674600002f.js"; 28 | var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(pa, s); 29 | })(); 30 | 31 | window.onNuxtReady((app) => { 32 | app.$nuxt.$on('routeChanged', (to, from) => { 33 | ga('set', 'page', to.fullPath); 34 | ga('send', 'pageview'); 35 | fbq('init', '376973119176791'); 36 | fbq('track', 'PageView'); 37 | }) 38 | }) 39 | 40 | } 41 | -------------------------------------------------------------------------------- /plugins/cookies.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueCookie from 'vue-cookie' 3 | 4 | if (process.BROWSER_BUILD) { 5 | Vue.use(VueCookie) 6 | } 7 | -------------------------------------------------------------------------------- /plugins/offline.js: -------------------------------------------------------------------------------- 1 | if(navigator.serviceWorker) { 2 | // Service workers are not supported 3 | navigator.serviceWorker.register('sw.js') 4 | } 5 | -------------------------------------------------------------------------------- /static/attractions/barbara.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/barbara.jpg -------------------------------------------------------------------------------- /static/attractions/bb_hotel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/bb_hotel.jpg -------------------------------------------------------------------------------- /static/attractions/europeum_hotel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/europeum_hotel.jpg -------------------------------------------------------------------------------- /static/attractions/granary_hotel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/granary_hotel.jpg -------------------------------------------------------------------------------- /static/attractions/karavan.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/karavan.jpg -------------------------------------------------------------------------------- /static/attractions/la_maddalena.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/la_maddalena.jpg -------------------------------------------------------------------------------- /static/attractions/mama_manousch.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/mama_manousch.jpg -------------------------------------------------------------------------------- /static/attractions/market_hall.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/market_hall.jpg -------------------------------------------------------------------------------- /static/attractions/market_square.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/market_square.jpg -------------------------------------------------------------------------------- /static/attractions/monopol_hotel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/monopol_hotel.jpg -------------------------------------------------------------------------------- /static/attractions/national_museum.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/national_museum.jpg -------------------------------------------------------------------------------- /static/attractions/ostrow_tumski.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/ostrow_tumski.jpg -------------------------------------------------------------------------------- /static/attractions/papa_bar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/papa_bar.jpg -------------------------------------------------------------------------------- /static/attractions/pergola.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/pergola.jpg -------------------------------------------------------------------------------- /static/attractions/pod-papugami.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/pod-papugami.jpg -------------------------------------------------------------------------------- /static/attractions/poster_gallery.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/poster_gallery.jpg -------------------------------------------------------------------------------- /static/attractions/puro_hotel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/puro_hotel.jpg -------------------------------------------------------------------------------- /static/attractions/qubus_hotel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/qubus_hotel.jpg -------------------------------------------------------------------------------- /static/attractions/sakana_sushi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/sakana_sushi.jpg -------------------------------------------------------------------------------- /static/attractions/sky_tower.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/sky_tower.jpg -------------------------------------------------------------------------------- /static/attractions/szajba.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/szajba.jpg -------------------------------------------------------------------------------- /static/attractions/szajnochy_11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/szajnochy_11.jpg -------------------------------------------------------------------------------- /static/attractions/zyzna.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/attractions/zyzna.jpg -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/favicon.ico -------------------------------------------------------------------------------- /static/forms/bb_form.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/forms/bb_form.pdf -------------------------------------------------------------------------------- /static/forms/europeum_form.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/forms/europeum_form.pdf -------------------------------------------------------------------------------- /static/forms/granary_form.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/forms/granary_form.pdf -------------------------------------------------------------------------------- /static/forms/monopol_form.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/forms/monopol_form.pdf -------------------------------------------------------------------------------- /static/google228d543f7dd755d8.html: -------------------------------------------------------------------------------- 1 | google-site-verification: google228d543f7dd755d8.html 2 | -------------------------------------------------------------------------------- /static/img/afterparty.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/afterparty.jpg -------------------------------------------------------------------------------- /static/img/alex.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/alex.jpg -------------------------------------------------------------------------------- /static/img/blake.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/blake.jpg -------------------------------------------------------------------------------- /static/img/callum.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/callum.jpg -------------------------------------------------------------------------------- /static/img/chris.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/chris.jpg -------------------------------------------------------------------------------- /static/img/cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/cover.png -------------------------------------------------------------------------------- /static/img/ed.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/ed.jpg -------------------------------------------------------------------------------- /static/img/eric.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/eric.jpg -------------------------------------------------------------------------------- /static/img/evan.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/evan.jpg -------------------------------------------------------------------------------- /static/img/filipa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/filipa.jpg -------------------------------------------------------------------------------- /static/img/guillaume.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/guillaume.jpg -------------------------------------------------------------------------------- /static/img/ic-coffee-break.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-coffee-break 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /static/img/ic-discussion-panel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-discussion-panel 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /static/img/ic-end-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-end-2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /static/img/ic-happy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-happy 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /static/img/ic-lighting-talks.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-lighting-talks 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /static/img/ic-lunch-break.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-lunch-break 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /static/img/ic-registration.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ic-registration 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /static/img/ic-tba.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ? 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /static/img/jacob.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/jacob.jpg -------------------------------------------------------------------------------- /static/img/jacoblee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/jacoblee.jpg -------------------------------------------------------------------------------- /static/img/logo-120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/logo-120.png -------------------------------------------------------------------------------- /static/img/logo-144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/logo-144.png -------------------------------------------------------------------------------- /static/img/logo-152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/logo-152.png -------------------------------------------------------------------------------- /static/img/logo-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/logo-192.png -------------------------------------------------------------------------------- /static/img/logo-384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/logo-384.png -------------------------------------------------------------------------------- /static/img/logo-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/logo-48.png -------------------------------------------------------------------------------- /static/img/masa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/masa.jpg -------------------------------------------------------------------------------- /static/img/pawel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/pawel.jpg -------------------------------------------------------------------------------- /static/img/pine.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/pine.jpg -------------------------------------------------------------------------------- /static/img/roman.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/roman.jpg -------------------------------------------------------------------------------- /static/img/sarah.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/sarah.jpg -------------------------------------------------------------------------------- /static/img/sean.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/sean.jpg -------------------------------------------------------------------------------- /static/img/sebastien.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/img/sebastien.jpg -------------------------------------------------------------------------------- /static/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "VueConf 2017", 3 | "short_name": "VueConf", 4 | "icons": [{ 5 | "src": "/img/logo-120.png", 6 | "sizes": "120x120", 7 | "type": "image/png" 8 | }, { 9 | "src": "/img/logo-144.png", 10 | "sizes": "144x144", 11 | "type": "image/png" 12 | }, { 13 | "src": "/img/logo-152.png", 14 | "sizes": "152x152", 15 | "type": "image/png" 16 | }, { 17 | "src": "/img/logo-192.png", 18 | "sizes": "192x192", 19 | "type": "image/png" 20 | },{ 21 | "src": "/img/logo-384.png", 22 | "sizes": "384x384", 23 | "type": "image/png" 24 | }], 25 | "start_url": "/", 26 | "background_color": "#fff", 27 | "display": "standalone", 28 | "theme_color": "#3EB882" 29 | } 30 | -------------------------------------------------------------------------------- /static/privacypolicy.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/privacypolicy.pdf -------------------------------------------------------------------------------- /static/sw.js: -------------------------------------------------------------------------------- 1 | if (!Cache.prototype.add) { 2 | Cache.prototype.add = function add(request) { 3 | return this.addAll([request]); 4 | }; 5 | } 6 | 7 | if (!Cache.prototype.addAll) { 8 | Cache.prototype.addAll = function addAll(requests) { 9 | var cache = this; 10 | 11 | // Since DOMExceptions are not constructable: 12 | function NetworkError(message) { 13 | this.name = 'NetworkError'; 14 | this.code = 19; 15 | this.message = message; 16 | } 17 | NetworkError.prototype = Object.create(Error.prototype); 18 | 19 | return Promise.resolve().then(function() { 20 | if (arguments.length < 1) throw new TypeError(); 21 | 22 | // Simulate sequence<(Request or USVString)> binding: 23 | var sequence = []; 24 | 25 | requests = requests.map(function(request) { 26 | if (request instanceof Request) { 27 | return request; 28 | } 29 | else { 30 | return String(request); // may throw TypeError 31 | } 32 | }); 33 | 34 | return Promise.all( 35 | requests.map(function(request) { 36 | if (typeof request === 'string') { 37 | request = new Request(request); 38 | } 39 | 40 | var scheme = new URL(request.url).protocol; 41 | 42 | if (scheme !== 'http:' && scheme !== 'https:') { 43 | throw new NetworkError("Invalid scheme"); 44 | } 45 | 46 | return fetch(request.clone()); 47 | }) 48 | ); 49 | }).then(function(responses) { 50 | // TODO: check that requests don't overwrite one another 51 | // (don't think this is possible to polyfill due to opaque responses) 52 | return Promise.all( 53 | responses.map(function(response, i) { 54 | return cache.put(requests[i], response); 55 | }) 56 | ); 57 | }).then(function() { 58 | return undefined; 59 | }); 60 | }; 61 | } 62 | 63 | if (!CacheStorage.prototype.match) { 64 | // This is probably vulnerable to race conditions (removing caches etc) 65 | CacheStorage.prototype.match = function match(request, opts) { 66 | var caches = this; 67 | 68 | return this.keys().then(function(cacheNames) { 69 | var match; 70 | 71 | return cacheNames.reduce(function(chain, cacheName) { 72 | return chain.then(function() { 73 | return match || caches.open(cacheName).then(function(cache) { 74 | return cache.match(request, opts); 75 | }).then(function(response) { 76 | match = response; 77 | return match; 78 | }); 79 | }); 80 | }, Promise.resolve()); 81 | }); 82 | }; 83 | } 84 | 85 | var CACHE_NAME = 'cache-all-v1'; 86 | 87 | if(typeof CACHE_NAME !== 'string') { 88 | throw new Error('Cache Name cannot be empty'); 89 | } 90 | 91 | self.addEventListener('install', function(event) { 92 | console.log('The service worker is being installed.'); 93 | event.waitUntil(precache()); 94 | }); 95 | 96 | self.addEventListener('fetch', function(event) { 97 | 98 | if (event.request.method !== 'GET') { 99 | // Fetch event ignored 100 | return; 101 | } 102 | // Clone the request for fetch and cache 103 | // A request is a stream and can be consumed only once. 104 | var fetchRequest = event.request.clone(), 105 | cacheRequest = event.request.clone(); 106 | 107 | // Respond with content from fetch or cache 108 | event.respondWith( 109 | 110 | // Try fetch 111 | fetch(fetchRequest) 112 | 113 | // when fetch is successful, we update the cache 114 | .then(function(response) { 115 | 116 | // A response is a stream and can be consumed only once. 117 | // Because we want the browser to consume the response, 118 | // as well as cache to consume the response, we need to 119 | // clone it so we have 2 streams 120 | var responseToCache = response.clone(); 121 | 122 | // and update the cache 123 | caches 124 | .open(CACHE_NAME) 125 | .then(function(cache) { 126 | 127 | // Clone the request again to use it 128 | // as the key for our cache 129 | var cacheSaveRequest = event.request.clone(); 130 | cache.put(cacheSaveRequest, responseToCache); 131 | 132 | }); 133 | 134 | // Return the response stream to be consumed by browser 135 | return response; 136 | 137 | }) 138 | 139 | // when fetch times out or fails 140 | .catch(function(err) { 141 | 142 | // Return the promise which 143 | // resolves on a match in cache for the current request 144 | // ot rejects if no matches are found 145 | return caches.match(cacheRequest); 146 | 147 | }) 148 | ); 149 | }); 150 | 151 | // Now we need to clean up resources in the previous versions 152 | // of Service Worker scripts 153 | self.addEventListener('activate', function(event) { 154 | 155 | // Destroy the cache 156 | event.waitUntil(caches.delete(CACHE_NAME)); 157 | 158 | }); 159 | 160 | function precache() { 161 | return caches.open(CACHE_NAME).then(function (cache) { 162 | return cache.addAll([ 163 | '/attractions/barbara.jpg', 164 | '/attractions/bb_hotel.jpg', 165 | '/attractions/europeum_hotel.jpg', 166 | '/attractions/granary_hotel.jpg', 167 | '/attractions/karavan.jpg', 168 | '/attractions/la_maddalena.jpg', 169 | '/attractions/mama_manousch.jpg', 170 | '/attractions/market_hall.jpg', 171 | '/attractions/market_square.jpg', 172 | '/attractions/monopol_hotel.jpg', 173 | '/attractions/national_museum.jpg', 174 | '/attractions/ostrow_tumski.jpg', 175 | '/attractions/papa_bar.jpg', 176 | '/attractions/pergola.jpg', 177 | '/attractions/pod-papugami.jpg', 178 | '/attractions/poster_gallery.jpg', 179 | '/attractions/puro_hotel.jpg', 180 | '/attractions/qubus_hotel.jpg', 181 | '/attractions/sakana_sushi.jpg', 182 | '/attractions/sky_tower.jpg', 183 | '/attractions/szajba.jpg', 184 | '/attractions/szajnochy_11.jpg', 185 | '/attractions/zyzna.jpg', 186 | 'img/alex.jpg', 187 | 'img/blake.jpg', 188 | 'img/callum.jpg', 189 | 'img/cover.png', 190 | 'img/ed.jpg', 191 | 'img/evan.jpg', 192 | 'img/guillaume.jpg', 193 | 'img/jacob.jpg', 194 | 'img/logo-120.png', 195 | 'img/logo-144.png', 196 | 'img/logo-152.png', 197 | 'img/logo-192.png', 198 | 'img/logo-384.png', 199 | 'img/logo-48.png', 200 | 'img/roman.jpg', 201 | 'img/sarah.jpg', 202 | 'img/sean.jpg', 203 | 'img/sebastien.jpg', 204 | ]); 205 | }); 206 | } 207 | -------------------------------------------------------------------------------- /static/terms_and_conditions.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monterail/vueconf/c85eac840151c8f6b579b3b58f5e6a4737507b5f/static/terms_and_conditions.pdf --------------------------------------------------------------------------------