1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[405],{5557:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/",function(){return n(6616)}])},4382:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var i=n(5893),o=n(7294),r=n(6760),s=n.n(r);let a=e=>{let t=e.video.startsWith("../")?e.video.slice(2):e.video,n=.1*e.index,[r,a]=(0,o.useState)(!1),c=(0,o.useRef)(null);return(0,o.useEffect)(()=>{c.current&&c.current.readyState>=2&&a(!0)},[]),(0,i.jsx)("div",{className:s().conceptGroup+" showCardWithDelay",style:{animationDelay:n+"s"},children:(0,i.jsx)("div",{className:s().conceptLinkWrap+(r?"":" skeleton"),children:(0,i.jsx)("a",{className:s().conceptLink,href:e.link,target:"_blank",rel:"noopener noreferrer",title:e.videoAlt,children:(0,i.jsx)("video",{ref:c,src:t,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,"aria-label":e.videoAlt,style:{width:"100%",height:"100%",objectFit:"cover",opacity:r?1:0,transition:"opacity 0.3s ease"},onLoadedData:()=>a(!0)})})})})};var c=n(4288),l=n.n(c),p=JSON.parse('[{"link":"https://dribbble.com/shots/4605344-Search-icon-interaction","video":"../images/experiments/01_search_field_interaction_concept.mp4","videoAlt":"Search Field Interaction Concept"},{"link":"https://dribbble.com/shots/3512613-0","video":"../images/experiments/02_vrar_loader_concept.mp4","videoAlt":"VR AR Activity Indicator Concept"},{"link":"https://dribbble.com/shots/4928355-Radio-Buttons-Interaction-II","video":"../images/experiments/03_radio_buttons_interaction_concept.mp4","videoAlt":"Radio Button Interaction Concept"},{"link":"https://dribbble.com/shots/3828944-ARVR-switch-button","video":"../images/experiments/04_vrar_toggle_button_interaction.mp4","videoAlt":"VR AR Toggle Button Interaction Concept"},{"link":"https://dribbble.com/shots/6242469-Notification-Badge-III","video":"../images/experiments/05_icon_app_notification_badge_concept.mp4","videoAlt":"Mobile App Icon Notification Badge Concept"},{"link":"https://dribbble.com/shots/3368130-Stepper-Touch","video":"../images/experiments/06_mobile_stepper_interaction_concept.mp4","videoAlt":"Mobile Stepper Interaction Concept"},{"link":"https://dribbble.com/shots/6372878-VR-Menu-II","video":"../images/experiments/07_vr_menu_interaction_concept.mp4","videoAlt":"VR Menu Interaction Concept"},{"link":"https://dribbble.com/shots/5720861-Stepper-XXIII","video":"../images/experiments/Mobile_Navigation_Pattern.mp4","videoAlt":"Mobile Navigation Pattern"},{"link":"https://dribbble.com/shots/7197834-Menu-Interaction-Concept","video":"../images/experiments/09_menu_interaction_concept.mp4","videoAlt":"Menu Interaction Concept"},{"link":"https://dribbble.com/shots/6579910-Falling-Dots","video":"../images/experiments/10_falling_dots.mp4","videoAlt":"Falling Dots Activity Indicator"},{"link":"https://dribbble.com/shots/5429846-Switcher-XLIV","video":"../images/experiments/11_toogle_interaction_concept.mp4","videoAlt":"Toggle Interaction Concept"},{"link":"https://dribbble.com/shots/5448364-Progress-Bar-VIII","video":"../images/experiments/12_progress_bar.mp4","videoAlt":"Progress Bar Animation"},{"link":"https://dribbble.com/shots/6558740-Add-Button-Interaction","video":"../images/experiments/13_add_button_interaction_concept.mp4","videoAlt":"Add Button Interaction Concept"},{"link":"https://dribbble.com/shots/5586623-Stepper-IX","video":"../images/experiments/14_mobile_stepper_interaction_concept.mp4","videoAlt":"Stepper Interaction Concept"},{"link":"https://dribbble.com/shots/5385689-Record-Control-Exploration","video":"../images/experiments/15_record_button_exploration.mp4","videoAlt":"Record Button Exploration Concept"},{"link":"https://dribbble.com/shots/4299720-Caterpillar","video":"../images/experiments/16_catterpillar.mp4","videoAlt":"Caterpillar"}]');let d=()=>(0,i.jsxs)("div",{className:l().experimentsGroup,children:[(0,i.jsx)("div",{className:l().experimentsCardGroup,children:p.map((e,t)=>(0,i.jsx)(a,{index:t,...e},t))}),(0,i.jsx)("div",{className:l().infoLinkGroup,children:(0,i.jsx)("a",{href:"https://dribbble.com/Volorf",target:"_blank",rel:"noopener noreferrer",className:"infoLink",children:"See More Experiments"})})]});var m=d},9876:function(e,t,n){"use strict";n.d(t,{Z:function(){return p}});var i=n(5893),o=n(7784),r=n.n(o);n(7294);var s=n(8352),a=n.n(s);let c=()=>(0,i.jsxs)("nav",{className:a().socialLinks,children:[(0,i.jsx)("a",{href:"https://dribbble.com/Volorf",target:"_blank",rel:"noopener noreferrer",children:"Dribbble"}),(0,i.jsx)("a",{href:"https://github.com/Volorf",target:"_blank",rel:"noopener noreferrer",children:"Github"}),(0,i.jsx)("a",{href:"https://www.instagram.com/olegdesignfrolov/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"}),(0,i.jsx)("a",{href:"https://www.linkedin.com/in/olegfrolovdesign",target:"_blank",rel:"noopener noreferrer",children:"Linkedin"})]}),l=()=>(0,i.jsxs)("footer",{className:r().footer,children:[(0,i.jsxs)("p",{children:["\xa9 ",new Date().getFullYear(),(0,i.jsx)("br",{}),"Oleg Frolov.",(0,i.jsx)("br",{}),"Made with Love, Figma and React.js"]}),(0,i.jsx)(c,{}),(0,i.jsx)("div",{}),(0,i.jsx)("div",{})]});var p=l},6735:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var i=n(5893),o=n(9008),r=n.n(o);let s="https://olegfrolov.design";function a(e){let{title:t,description:n,path:o="",image:a}=e,c=s+o,l=s+(a||"/images/og/home.jpg");return(0,i.jsxs)(r(),{children:[(0,i.jsx)("title",{children:t}),(0,i.jsx)("meta",{name:"description",content:n}),(0,i.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1"}),(0,i.jsx)("link",{rel:"icon",href:"/favicon.ico"}),(0,i.jsx)("link",{rel:"canonical",href:c}),(0,i.jsx)("meta",{property:"og:type",content:"website"}),(0,i.jsx)("meta",{property:"og:site_name",content:"Oleg Frolov"}),(0,i.jsx)("meta",{property:"og:title",content:t}),(0,i.jsx)("meta",{property:"og:description",content:n}),(0,i.jsx)("meta",{property:"og:url",content:c}),(0,i.jsx)("meta",{property:"og:image",content:l}),(0,i.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,i.jsx)("meta",{name:"twitter:creator",content:"@Volorf"}),(0,i.jsx)("meta",{name:"twitter:title",content:t}),(0,i.jsx)("meta",{name:"twitter:description",content:n}),(0,i.jsx)("meta",{name:"twitter:image",content:l})]})}},48:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var i=n(5893),o=n(8206),r=n.n(o);function s(e){let{children:t}=e;return(0,i.jsx)("nav",{className:r().menuGroup,children:t})}var a=n(9197),c=n.n(a),l=n(1664),p=n.n(l);let d=e=>{let{children:t}=e;return(0,i.jsxs)("section",{className:c().welcomeGroup,children:[(0,i.jsxs)(s,{children:[(0,i.jsx)(p(),{href:"/",children:"Experiments"}),(0,i.jsx)(p(),{href:"/spatialcomputing",children:"spatial"}),(0,i.jsx)(p(),{href:"/works",children:"Works"})]}),(0,i.jsxs)(s,{children:[(0,i.jsx)(p(),{href:"/talks",children:"Publications"}),(0,i.jsx)(p(),{target:"_blank",href:"https://www.figma.com/@volorf",title:"Oleg Frolov on Figma Community",children:"Tools"}),(0,i.jsx)(p(),{target:"_blank",href:"https://medium.com/@olegfrolov",title:"Oleg Frolov on Medium",children:"Blog"})]}),(0,i.jsx)("div",{className:c().welcomeMessage,children:(0,i.jsx)("h1",{children:t})})]})};var m=d},6616:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});var i=n(5893),o=n(6735),r=n(48),s=n(4382),a=n(9876);function c(){return(0,i.jsxs)("main",{children:[(0,i.jsx)(o.Z,{title:"Oleg Frolov â Product Designer & Design Engineer",description:"Portfolio of Oleg Frolov, a product designer and design engineer exploring AR/VR. UI interaction experiments, spatial computing prototypes, and creative tools.",path:""}),(0,i.jsxs)(r.Z,{children:[(0,i.jsx)("abbr",{title:"product designer | design engineer | prototyper | creative coder",children:"oleg frolov"})," is a designer and an engineer who loves exploring and experimenting with ",(0,i.jsx)("abbr",{title:"Augmented Reality",children:"AR"})," and ",(0,i.jsx)("abbr",{title:"Virtual Reality",children:"VR"}),". he plays ",(0,i.jsx)("abbr",{title:"Awesome tiny synth from Teenage Engineering",children:"OP-Z"})," and builds creative tools."]}),(0,i.jsx)("div",{className:"spacerVerticalLarge hideThisBlock"}),(0,i.jsx)(s.Z,{}),(0,i.jsx)(a.Z,{})]})}},6760:function(e){e.exports={conceptLinkWrap:"experiment_conceptLinkWrap__BmaQx",conceptGroup:"experiment_conceptGroup__lWUR9",conceptLink:"experiment_conceptLink__oEHqk"}},4288:function(e){e.exports={experimentsGroup:"experiments_experimentsGroup__7LJPx",experimentsCardGroup:"experiments_experimentsCardGroup__PxbMR",infoLinkGroup:"experiments_infoLinkGroup__3KZ_m"}},7784:function(e){e.exports={footer:"footer_footer__GaW5f"}},8206:function(e){e.exports={menuGroup:"menu_menuGroup__NE1GY"}},8352:function(e){e.exports={socialLinks:"sociallinks_socialLinks__3ZXcj"}},9197:function(e){e.exports={welcomeGroup:"welcome_welcomeGroup__oLF17",welcomeMessage:"welcome_welcomeMessage__bSSaL",hideThisBlock:"welcome_hideThisBlock__WjKuI"}}},function(e){e.O(0,[996,774,888,179],function(){return e(e.s=5557)}),_N_E=e.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.