import type { Talk } from '../types' export const talks: Talk[] = [ { series: 'Anthony\'s Road to Open Source - Part 3', title: 'Yak Shaving', description: 'The art of yak shaving and how it can help you to build better open source projects.', presentations: [ { date: '2024-07-06', location: 'Shenzhen, China', conference: 'VueConf Shenzhen', conferenceUrl: 'https://vue.w3ctech.com/', recording: 'https://www.bilibili.com/video/BV1XT421r7xy', pdf: 'https://talks.antfu.me/2024-07-06/pdf', spa: 'https://talks.antfu.me/2024/vueconf-shenzhen', }, { date: '2024-10-19', location: 'Tokyo, Japan', conference: 'Vue Fes Japan', conferenceUrl: 'https://vuefes.jp/2024/en/', }, ], }, { title: 'ESLint One for All Made Easy', description: 'Introduction to ESLint\'s new flat config format and see how it can bring new possibilities and enhancements to your development workflow and experience.', presentations: [ { date: '2024-06-13', location: 'Amsterdam, Netherlands', conference: 'JS Nation', conferenceUrl: 'https://jsnation.com/', pdf: 'https://talks.antfu.me/2024-06-13/pdf', spa: 'https://talks.antfu.me/2024/jsnation', }, { date: '2024-06-08', location: 'Athens, Greece', conference: 'CityJS Athens', conferenceUrl: 'https://greece.cityjsconf.org/', pdf: 'https://talks.antfu.me/2024-06-08/pdf', spa: 'https://talks.antfu.me/2024/cityjs-athens', }, ], }, { series: 'Anthony\'s Road to Open Source - Part 1', title: 'The Set Theory', description: 'Lessons I learned on my journey to working full time on open source. With tips and thinking for making open source projects more successful.', presentations: [ { date: '2023-10-05', location: 'Online', conference: 'ViteConf', conferenceUrl: 'https://viteconf.org/23/', recording: 'https://www.youtube.com/watch?v=NJbCfAKtxUI', pdf: 'https://antfu.me/talks/2023-10-05', spa: 'https://talks.antfu.me/2023/viteconf', }, { date: '2023-10-28', location: 'Tokyo, Japan', conference: 'Vue Fes Japan', conferenceUrl: 'https://vuefes.jp/2023/en', recording: 'https://www.youtube.com/watch?v=8z2ZZFEsnQk', pdf: 'https://antfu.me/talks/2023-10-28', spa: 'https://talks.antfu.me/2023/vuefesjapan', }, { date: '2024-03-22', location: 'Paris, France', conference: 'React Paris', conferenceUrl: 'https://react.paris', recording: 'https://youtu.be/7JRa9S4aEEI', pdf: 'https://antfu.me/talks/2024-03-22', spa: 'https://talks.antfu.me/2024/reactparis', }, { date: '2024-06-14', location: 'Amsterdam, Netherlands', conference: 'React Summit', conferenceUrl: 'https://reactsummit.com/', pdf: 'https://antfu.me/talks/2024-06-14', spa: 'https://talks.antfu.me/2024/react-summit', }, ], }, { series: 'Anthony\'s Road to Open Source - Part 2', title: 'The Progressive Path', description: 'How progressive approaches can help you to build better open source projects. And why it is crucial for the community to embrace them.', presentations: [ { date: '2024-02-29', location: 'Amsterdam, Netherlands', conference: 'Vue Amsterdam', conferenceUrl: 'https://vuejs.amsterdam', pdf: 'https://antfu.me/talks/2024-02-29', spa: 'https://talks.antfu.me/2024/vue-amsterdam/1', }, { date: '2024-06-01', location: 'Online', conference: 'Frontend Nation', conferenceUrl: 'https://frontendnation.com', }, ], }, { title: 'Now, and the Future of Nuxt Devtools', description: 'State of the Nuxt Devtools and what\'s coming next.', presentations: [ { date: '2023-10-18', location: 'Online', conference: 'Nuxt Nation', conferenceUrl: 'https://nuxtnation.com/', recording: 'https://youtu.be/E6kTiIbU3N8', pdf: 'https://antfu.me/talks/2023-10-18', spa: 'https://talks.antfu.me/2023/nuxt-devtools-next', }, ], }, { title: 'Developer Experience with Nuxt', description: 'The first introduction to Nuxt Devtools and how it can improve our developer experience for Nuxt', presentations: [ { date: '2023-02-09', location: 'Amsterdam, Netherlands', conference: 'Vue Amsterdam', conferenceUrl: 'https://vuejs.amsterdam', recording: 'https://youtu.be/W6hhU-Ws2Rg', pdf: 'https://antfu.me/talks/2023-02-09', spa: 'https://talks.antfu.me/2023/nuxt-devtools/', transcript: '/posts/nuxt-dx-2023', }, { date: '2023-05-25', location: 'Strasbourg, France', conference: 'StrasbourgJS', conferenceUrl: 'https://strasbourgjs.org', recording: 'https://www.youtube.com/watch?v=brXZw4HQBGY', pdf: 'https://antfu.me/talks/2023-05-25', spa: 'https://talks.antfu.me/2023/nuxt-devtools-strasbourg/', }, ], }, { title: 'How I Mangage GitHub Notifications', description: 'My workflow for managing GitHub notifications effectively.', presentations: [ { date: '2023-05-17', location: 'Online', conference: 'GitHub Maintainer Summit', conferenceUrl: 'https://maintainermonth.github.com', recording: 'https://youtu.be/gu-0b6KCf80', pdf: 'https://antfu.me/talks/2023-05-17', spa: 'https://talks.antfu.me/2023/github-notifications/', transcript: '/posts/manage-github-notifications-2023', }, ], }, { title: 'VueUse 最佳实践', lang: 'zh', description: '我们在维护 VueUse 中学到的 Vue 最佳实践与技巧', presentations: [ { date: '2022-12-10', location: 'Online', lang: 'zh', conference: 'VueConf China', conferenceUrl: 'https://vue.w3ctech.com/', recording: 'https://www.bilibili.com/video/BV1bM411U7wq/', pdf: 'https://antfu.me/talks/2022-12-10', spa: 'https://talks.antfu.me/2022/vueuse-best-practice/', }, ], }, { title: 'Patterns of VueUse', description: 'The patterns and best practices we learned from maintaining VueUse', presentations: [ { date: '2022-10-16', location: 'Online', conference: 'Vue Fes Japan', conferenceUrl: 'https://vuefes.jp/2022/', pdf: 'https://antfu.me/talks/2022-10-16', spa: 'https://talks.antfu.me/2022/patterns-vueuse/', }, ], }, { title: 'Vite, the on-demand DX', description: 'How the on-demand mindset Vite brings can improve our developer experience and creativity', presentations: [ { date: '2022-10-11', location: 'Online', conference: 'ViteConf', conferenceUrl: 'https://viteconf.org/22/', recording: 'https://youtu.be/qXZzXvyqPpc', pdf: 'https://antfu.me/talks/2022-10-11', spa: 'https://talks.antfu.me/2022/vite-on-demand-dx/', }, ], }, { title: 'Introduction to Vitest', description: 'Introduction to Vitest, a new testing framework made with Vite for everyone', presentations: [ { date: '2022-01-26', location: 'Online', conference: 'Vue.js Nation', conferenceUrl: 'https://viteconf.org/22/', recording: 'https://vuejsnation.com/2022', pdf: 'https://antfu.me/talks/2022-01-26', spa: 'https://talks.antfu.me/2022/vue-nation', }, ], }, { title: 'New Ways to Vue', description: 'How the new composition API and script setup improves our Vue development experience dramatically', presentations: [ { date: '2021-10-20', location: 'Online', conference: 'Vue.js Live', conferenceUrl: 'https://vuejslive.com/', recording: 'https://youtu.be/CyaJLrqE9tc', pdf: 'https://antfu.me/talks/2021-10-20', spa: 'https://talks.antfu.me/2021/vue-london', }, { date: '2021-10-17', location: 'Online', lang: 'zh', conference: '{ Laravel x Vue } Conf Taiwan', conferenceUrl: 'https://2021.laravelconf.tw/', pdf: 'https://antfu.me/talks/2021-10-17', spa: 'https://talks.antfu.me/2021/laravel-vue-taiwan', }, ], }, { title: 'Composable Vue', description: 'Tips and patterns for writing Vue composable', presentations: [ { date: '2021-04-28', location: 'Online', conference: 'VueDay', conferenceUrl: 'https://vueday.org/', recording: 'https://youtu.be/IMJjP6edHd0', pdf: 'https://antfu.me/talks/2021-04-28', spa: 'https://talks.antfu.me/2021/composable-vue', transcript: '/posts/composable-vue-vueday-2021', }, { date: '2021-05-22', location: 'Online', conference: 'VueConf China', conferenceUrl: 'https://vue.w3ctech.com/', lang: 'zh', recording: 'https://www.bilibili.com/video/BV1x54y1V7H6', pdf: 'https://antfu.me/talks/2021-05-22', spa: 'https://talks.antfu.me/2021/vueconf-china', }, ], }, { title: 'Develop with Vite', description: 'How Vite can improve our development experience', presentations: [ { date: '2021-03-28', location: 'Online', conference: 'Vue Beijing', conferenceUrl: 'https://twitter.com/beijing_vue', recording: 'https://www.youtube.com/watch?v=xx8gEHet6n8', pdf: 'https://antfu.me/talks/2021-03-28/zh', transcript: '/posts/vue-beijing-2021', }, ], }, { title: `import { reactive } from 'vue'`, description: 'Introduction to Vue 3\'s new Composition API', lang: 'zh', presentations: [ { date: '2020-09-26', location: 'Online', conference: '滨江前端沙龙', conferenceUrl: 'https://github.com/Bin-FE/binfe-salon-ppt', lang: 'zh', pdf: 'https://antfu.me/talks/2020-09-26', transcript: '/posts/binfe-2020-zh', }, ], }, ] talks.forEach((talk) => { talk.presentations.sort((a, b) => { return new Date(b.date).getTime() - new Date(a.date).getTime() }) }) talks.sort((a, b) => { return new Date(b.presentations[0].date).getTime() - new Date(a.presentations[0].date).getTime() })