- https://www.rustnationuk.com/call-for-papers - https://www.papercall.io/rustnationuk - https://www.papercall.io/cfps/4873/submissions/new ## Talk Details ### Title Missing miles for a dream Web3 stack ### Ideas - Searching for a dream Web3 application framework in Rust - Supercharge Web3 application with a game engine and ECS - Bringing desktop application into Metaverse - Write cross-platform application with scalable architecture all in Rust - Onboarding JavaScript application developers into Rust ecosystem - Writing cross-platform Web3 application fully in Rust is - Re-rethinking the best practices in frontend development - Moonshot side project becomes framework - Web based application framework beyond browser ### Elevator Pitch > You have 300 characters to sell your talk. This is known as the "elevator pitch". Make it as exciting and enticing as possible. As the world evolves to Web3 and the metaverse, there are some technical challenges we face in the current frontend toolings. This is a story of a React developer searching for the dream tech-stack in Rust for the next generation. My attempt is dip, a game engine based cross-platform application framework. ### Ideas - dip is a game engine based application framework all in Rust. It bundles essential plugins to build Web3 applications. You can build desktop or CLI application with React-like declarative UI library in scalable ECS architecture. Sharing logic between a metaverse and apps has never been easier. ### Talk Format > What format is this talk best suited for? Talk (60 minutes) ### Audience Level > Who is the best target audience for this talk? All ### Description > This field supports [Markdown](https://daringfireball.net/projects/markdown/basics). The description will be seen by reviewers during the CFP process and may eventually be seen by the attendees of the event. > You should make the description of your talk as compelling and exciting as possible. Remember, you're selling both the organizers of the events to select your talk, as well as trying to convince attendees your talk is the one they should see. --- I dream of making the metaverse. As a Typescript developer working in Web3, there were many pain points and limitations that I experienced with the current tech-stack like Electron and React Native. As the applications grew bigger, I found myself having less and less confidence in shipping robust applications. But then I found Rust. I will talk about how Rust helps us build lighter, faster and more robust cross-platform applications that are easy to use, portable and extensible. We will look at libraries in the Rust ecosystem such as: - Bevy, a game engine that uses 'Entity Component System' architecture. - Dioxus, a React-like declarative UI library - And dip, a project that bundles essential plugins to build Web3 applications and builds a great developer experience. Sharing logic between games and apps will never have been easier. ### Ideas >dip is a game engine based application framework all in Rust. It bundles essential plugins to build Web3 applications. You can build desktop or CLI application with React-like declarative UI library in scalable ECS architecture. Sharing logic between a metaverse and apps has never been easier. > > ---- > > > While I dream of making the metaverse, there are some limitations I see in my toolings. When I start brainstorming about the idea. As a React developer working in Web3 industry, there are some pains that I experienced with current tech-stack like Electron and React Native. > > light, fast and robust > > Join me as I talk about my experience with the current tech stack and my plan to build a bundle of tools necessary to build cross platform Web3 applications. Sharing logic between a metaverse and apps has never been easier. > > > - light, fast and robust — thanks to Rust - easy to use - portable - extensible > > It bundles essential plugins to build Web3 applications. You can build desktop or CLI application with React-like declarative UI library in scalable ECS architecture. Sharing logic between a metaverse and apps has never been easier. --- #### Problem ### Notes > This field supports [Markdown](https://daringfireball.net/projects/markdown/basics). Notes will only be seen by reviewers during the CFP process. This is where you should explain things such as technical requirements, why you're the best person to speak on this subject, etc... I have been working on Ledger Live in the past few years as a TypeScript and React developer. It is an open-sourced companion app for the most secure hardware crypto wallet in the market. It started as a basic cross-chain wallet application. Now we are transforming it as a whole Web3 interface via built-in dapps browser. It is mainly built with React, React Native and Electron. It has been a huge success for us to constantly shipping features in 5 different platform (macOS, Windows, Linux, iOS, Android). However, more the app grew, our confidence of shipping new features got less and less. I eventually started looking for the other solutions. I wanted to give a shot to Rust this time despite the luck of my prior experience in system level language. I spend a year making proof of concept with various libraries while fighting with compilation errors like most beginners do. - gRPC server/client with Tonic - Desktop/Web application with Yes, Tauri, and Dioxus - CLI application with Clap - Metaverse (a demonstration of 3D game integrated with Web3 account) with Amethyst and Bevy etc. Eventually I realized that I could wrap pretty much any Rust library into Bevy's plugin. Which means plugins are easily shareable between games and general purpose applications. Bevy's ECS architecture also helps building any application without a need to deal with complicated lifetimes and ownership problem. Which drastically improves a developer experience for someone like me without background in system level language requires manual memory management. As a React developer, Dioxus makes sense from day one because it offers all features you expect such as declarative component, hooks, global state etc. Shortly after the discovery, dip was born. I am now focusing on not only to expand the plugin ecosystem but also making it as easy as possible to learn and adopt for people coming from dynamic languages like JS. This is one of the selling point about my talk. React and JS developers are everywhere. My aim is to onboard them to Rust ecosystem smoothly and let them free from V8 sandbox to get full potential. ### Tags rust, web3 ## Profile Details ### Name Junichi Sugiura ### URL > Have a blog or some other website you'd like to have listed with this profile? If so, this is the field for you. https://github.com/JunichiSugiura/JunichiSugiura ### Organization or Affiliation > The name of your company, organization, or affiliation if you have any. LEDGER ### Twitter Handle > Twitter Handle should just be your handle without the "@". JunichiSugiura ### Bio > This field supports [Markdown](https://daringfireball.net/projects/markdown/basics). Your bio sells you. Who are you? Why do you want people to know about you? Who's your favorite member of One Direction? This is your chance to put it all out there. I'm a developer at Ledger working on a cross-platform applications for the most secure hardware crypto wallet. Born and raised in Japan, I spent a few years in the three different continents until I found home in Paris. I always have a side project besides main job and that is where I learn new things. Passionate about freeride snowboarding, cooking and playing music. ## Additional Information > Do you need financial assistance with travel, accommodation, or a visa to come to the conference? This does not affect the outcome of your proposal and is part of the speaker’s package, however it is helpful for us to know this information in advance for budgeting purposes. I would appreciate a financial help for the round trip from Paris and accommodation in London. Visa process is not required. I work for Ledger but dip is my side project.