Conference program

DAY 1 (22 June) 9:00 – 18:00
The schedule might still be subject to change

9:00
10min

Welcome Speech

9:10
Evan You
Evan You
Vue.js Author
30min

Keynote

9:45
Chris Fritz
Chris Fritz
Consultant. Vue.js Core Team Member
30min

Avoiding an awkward fit: how to best introduce Vue into your app and team

Vue is versatile. It can be dropped into a page like jQuery, or power an entirely independent frontend. These are the well-known extremes, but for many apps and teams, a lesser-known shade in between would be a better fit. In this talk, we’ll explore the entire spectrum of integration strategies, including varieties at the extremes. For every kind of app, you’ll learn what’s worked for others and what’s held them back, including specific code examples you can adapt for your own apps.

10:15
20min

Coffee break

10:35
Alex & Sebastien ChopinAlex & Sebastien Chopin
Alex & Sebastien Chopin
Nuxt.js Authors
30min

Server side rendering in Vue.js

Server side rendering offers instant feedback and improves the user experience and SEO. Making Isomorphic application with vue.js might be a daunting task. We are going to see in this talk how Nuxt.js simplify the process to create universal vue application and PWA.

11:10
Callum Macrae
Callum Macrae
Front-End Developer at SamKnows
30min

Accessibility in Single Page Apps

As developers, we have a responsibility to make sure that as many people as possible can use the websites and applications that we create. But with a new generation of websites—single page applications—come a new set of challenges for users with disabilities, and the assistive technology they use to browse the web. Client-side routing, custom input elements, and shiny animated content: all things that screen readers can struggle with if the developer who implemented it didn't consider accessibility. During this talk, I'll explain what we as developers can do to ensure that our single page applications are usable by everyone, including people who might not use a keyboard, mouse and screen like the majority of us do. I'll show how some assistive technology is used, and demonstrate how some common mistakes we make affect people using that assistive technology.

11:40
20min

Coffee break

12:00
Pine Wu
Pine Wu
Author of Vetur
30min

var vetur = vscode + vue;

Vetur is one of the first editor extensions that aim to bring powerful IDE features to front-end frameworks. With syntax-highlighting, error-checking, linting, formatting and auto-completion, Vetur has become VSCode's default choice for editing Vue files and was demoed with TypeScript at MSBuild 2017. During this talk, we'll first take a look at various features that Vetur offers to provide a better Vue developement experience. Then we'll transition to a deeper dive on the implementation of Vetur's features, with special focus on Vue's language service built on top of TypeScript's language server. Finally, we'll learn about some of Vetur's exciting upcoming features, such as jump to definition, global rename and type-checking for template expressions.

12:35
Sean Larkin
Sean Larkin
webpack Core Team Member
30min

Code splitting patterns in Vue.js

Vue champions developer experience. It's a bit of Angular on top with React on the bottom. No matter what your preference is, the flexibility baked into the library makes it perfect for anyone. But what about web performance? Can this flexibility still allow us to split code into asynchronous chunks? As a maintainer of webpack, Vue.js was love at first sight for me! Because everything is a Component, everything can also be a Async Component!! This is the ultimate flexibility. Join me while we talk about all the ways to split up your Vue Application. By the time we're done, you'll walk away ready to create high performance Vue Components, Applications, and Libraries.

13:05
1h 35min

Lunch break

14:40
50min

Lightning Talks

15:25
Paweł Grabarz
Paweł Grabarz
Frontend Engineer at Monterail
30min

new Vue() – beyond just an ordinary UI component

Vue is elegant. Its entire public API is crafted around a single extendable concept—the Vue Instance. It’s a gateway to the full potential of the framework, but we mostly use it as a UI building block. Let’s take a closer look at how it cleverly connects all the spinning gears together, while still giving you enough room to play with them separately. Learn how to access features like watchers, events or Virtual DOM diffing outside of the UI context, and discover where they can be useful. Explore existing examples in existing projects, like Vuex and Vuelidate.

16:00
Filipa Lacerda
Filipa Lacerda
Frontend Engineer at GitLab
30min

No Time to Refactor, How we made the Frontend Awesome At GitLab With Vue.

How we switched from Coffeescript to ES6, from jQuery to Vue, from the asset pipeline to webpack, from static to realtime, all while adding new features, without refactoring and delivering to 1 million+ users and tons of clients.

16:30
20min

Coffee break

16:50
45min

Discussion Panel

17:35

End of day 1

20:00

After party

Korba, June 22th, 8 pm

św. Mikołaja 18-20

DAY 2 (23 June) 9:00 – 18:00

9:30
Eduardo San Martin Morote
Eduardo San Martin Morote
Vue.js Core Team Member
30min

Make your Apps Realtime with Firebase and Vue

Vue has brought elegant and accessible reactivity to interfaces making it easy to keep the view updated with the local data. On the other hand, Firebase makes it easy to sync the local data with a database, so… what if we combine them to create a super efficient workflow? During this talk, I’ll explain how a real time database like Firebase can make your application even better and why it works so well with Vue. We will understand when and how to integrate Firebase with Vue to create real time applications.

10:05
Masahiro Tanaka
Masahiro Tanaka
Founder & CEO, Monaca
30min

Best Practices for Hybrid Mobile Apps with Vue.js and Onsen UI

Native apps require specific stacks, which are commonly unknown to web developers, whereas web apps are limited when dealing with native features in mobile devices. On the other hand, hybrid apps combine the power of native and web apps to get the benefits of both sides. It allows creating native-like apps with web technologies such as Vue.js or any other tool that web developers already know and love. Onsen UI is a library of UI components and utilities to help you create beautiful hybrid apps very quickly. Implemented on top of Web Components, Onsen UI is framework agnostic and can easily be combined with Vue.js to bootstrap your apps. It provides a Vue-like API to make its usage very simple and straightforward. Apart from that, Onsen UI’s ecosystem tools manage all jobs related to publishing or updating apps to stores, notifications, device debugging and more.

10:35
20min

Coffee break

10:55
Eric Baer
Eric Baer
Lead Software Engineer at Formidable
30min

The Evolution of API Design: From RPC to GraphQL

Over the last 60 years, API designs have changed to respond to everything from new network topologies and new language designs, to the pressures of managing ever larger code bases. Today’s most popular API pattern, REST, was developed in a time where the cost of making API requests were plummeting. At the time, bandwidth was getting cheaper, latency was dropping, and the computing power of devices was still tracking Moore’s Law. Mobile turned this on its head. The environments in which apps and APIs need to perform today have effectively regressed a decade. This talk will explore some of the new client-server interaction models that address today’s pressures and use history to understand the tradeoffs that we made at the transition between the previous designs. I will introduce major tools that are attempting to change the API landscape including GraphQL and Falcor. Since GraphQL is the dominant technology in this space, I will examine some of it’s functionality, touch on some of its syntax and present a live coding demo that shows off a GraphQL server from 0 to 1. Demonstrating a complete implementation in under 10 minutes will give a strong sense of what’s possible, and what kind of complexity burden a tool like this would impose. Spoiler: There is no silver bullet.

11:40
Guillaume Chau
Guillaume Chau
Vue.js Core Team Member
30min

GraphQL made easy with Apollo and Vue

GraphQL is a new way of building client-server interactions that is gaining a lot of traction lately, thanks to the clear advantages it brings to the Web Service world. As an emerging standard, GraphQL needs the community to back the adoption and to create tools so more developers can enjoy it. Apollo is one the most popular GraphQL community project, launched by the Meteor Development Group. The Apollo Client has a very good support of the current spec and features everything you need to use the full power of GraphQL in your apps on multiple platforms. During this talk, we will learn how Apollo can help us start using GraphQL today and how some integrations in our Vue components and Vuex stores will make our lives easier.

12:10
20min

Coffee break

12:30
Jacob Lee
Jacob Lee
Software Engineer at StdLib
30min

Using Serverless Technology to Ship Vue Apps That Scale

'Serverless' is the new flavor of the week in software development, but what does it mean, where did the servers go (spoiler: they're still around!), and how can we leverage this technology to make frontend development easier? In this talk we'll cover the basics of serverless technology, how what we're building at StdLib helps you harness this type of architecture, and ultimately, how you can use this knowledge to ship Vue apps in record time, without configuration and infrastructure management woes.

13:05
Blake Newman
Blake Newman
Software Engineer at Attest
30min

PRA with Vue.js

We will take a look at how Vue.js can work as a PWA (Progressive Web Application). PWA's are boring now, right? Everyone is doing a talk about them, everyone is raving about them. Well let's do something crazy and different! Lets make it realtime. We will take a look at the best patterns when creating an application, and how the Vue.js ecosystem can power a PWA. Extending the PWA platform we will look how Sockets and Service Workers can coexist together. Creating a PRA (Progressive Realtime Application), allowing platforms to improve the user experience without affecting the critical download chain.

13:40
1h 35min

Lunch break

15:10
45min

Lightning Talks

16:00
Roman Kuba
Roman Kuba
Lead Frontend Scientist at Codeship
30min

Testing Vue components with Jest

The necessity of testing is still often seen as a burden when writing code, yet when done right, it will dramatically change how code gets written. What makes Vue special in this regards, it’s quite convenient to test for it’s approach in simplicity and leveraged functions and objects wherever possible. In this talk we will look at what makes up a good practice in testing and how jest works. We’ll continue to test some simple Vue Components and see how we can effectively test and store the rendered output with snapshots. Well conclude by looking at a component that heavily relies on Vuex for it’s state management and peek into the possible directions from there.

16:35
Sarah Drasner
Sarah Drasner
Consultant
30min

Animating Vue

As superfluous as something like animation may initially seem, you can tell a lot about framework by the way that it handles the concept of time. Idiosyncrasies and race conditions in rendering reveal themselves, pauses in DOM and virtual DOM diffing can be exposed. This is one of the ways Vue shows itself to be uniquely capable and elegant as a framework. In this session, we'll cover how to use the <transition> component and some of its offerings to create fluid effects in the browser. We'll move on to watchers and transitioning state. Finally, we'll talk about lifecycle methods, asynchronous updates, and pushing our animations to the next level.

17:05

Goodbye Speech