Meet Voyager: A Kotlin Compose Multiplatform Navigation Solution

แชร์
ฝัง
  • เผยแพร่เมื่อ 3 ก.ค. 2024
  • In this video, we explore the basic use cases for a navigation system with the power and flexibility of the Voyager library for Kotlin Multiplatform / Compose Multiplatform. With the absence of an official navigation library, Voyager emerges as a robust and innovative alternative.
    🔍 What We Cover:
    - The gap in Compose Multiplatform
    - Introduction to Voyager
    - Comprehensive walkthrough of basic Voyager’s features and capabilities.
    - Practical examples demonstrating Voyager’s integration into your projects.
    🔗 Helpful Links:
    - Voyager Library Documentation: voyager.adriel.cafe/
    - Sample GitHub repository: github.com/YanneckReiss/compo...
    - Compose Multiplatform Navigation Documentation: www.jetbrains.com/help/kotlin...
    🙌 Follow me on:
    Twitter: / yanneckreiss
    Medium: / yanneck-reiss
    Instagram: / yanneckreiss
    📌 Timestamps:
    00:00 - Intro
    02:15 - Voyager Setup
    02:55 - Basic Linear Navigation
    06:00 - Transition Animations
    06:21 - Nesting layouts
    07:00 - Navigation Arguments
    08:00 - Bottom Bar Tab Navigation
    12:56 - Nested Navigation
    14:10 - Outro
    #Kotlin #KotlinMultiplatform #ComposeMultiplatform #VoyagerLibrary #MobileAppDevelopment #NavigationSolutions #DeveloperTutorial #Programming #TechGuide
    🌟 Stay tuned for more insightful videos on the latest in mobile development technologies and best practices. Don’t forget to like and share!
    Thank you for watching and happy coding! 🌟

ความคิดเห็น • 49

  • @dinarastepina8707
    @dinarastepina8707 7 หลายเดือนก่อน +5

    I loved it! As someone who’s always in search of the best navigation solution, currently using Voyager and it’s the best one I’ve tried so far

  • @harshagarwal6750
    @harshagarwal6750 หลายเดือนก่อน +1

    Super Helpful!!!

  • @trevordick2695
    @trevordick2695 7 หลายเดือนก่อน +1

    This video was amazing thank you so much!

  • @sijanneupane
    @sijanneupane 6 หลายเดือนก่อน +1

    Helped alot! thanks! keep making more!

  • @ohiorenuaaigboje7500
    @ohiorenuaaigboje7500 6 หลายเดือนก่อน +1

    This is so amazing and simple

  • @yunusemrehalil1036
    @yunusemrehalil1036 5 หลายเดือนก่อน +1

    Great video. Thanks bro.

  • @scotty3024
    @scotty3024 7 หลายเดือนก่อน +1

    You are amazing! Thank you so much for the tutorial!

    • @yanneckreiss
      @yanneckreiss  7 หลายเดือนก่อน

      Thank you for watching 😊

  • @BasantKumar-bg3fg
    @BasantKumar-bg3fg 4 หลายเดือนก่อน +1

    Just Wow, amazing, its helped me a lot

    • @yanneckreiss
      @yanneckreiss  4 หลายเดือนก่อน

      Thank you very much 😊 I am happy my video was helpful for you

  • @YassineMikeAlpha
    @YassineMikeAlpha 7 หลายเดือนก่อน

    The content is amazing. Keep it up.

    • @yanneckreiss
      @yanneckreiss  7 หลายเดือนก่อน

      Thank you 😊

  • @galaxiegalaxie5003
    @galaxiegalaxie5003 6 หลายเดือนก่อน +1

    Very CoOL LibrarY WoW😊❤

  • @free_guy00
    @free_guy00 7 หลายเดือนก่อน +2

    Amazing...Please follow up with the Multi Module Navigation using Voyager

    • @yanneckreiss
      @yanneckreiss  7 หลายเดือนก่อน +1

      I will put it on my video idea list 🙂

  • @Peaceful_Monster_Mia
    @Peaceful_Monster_Mia 4 หลายเดือนก่อน +1

    I choosed the decompose that seperates the ui logic from buissness logic.

  • @MathanMaheswaran
    @MathanMaheswaran 3 หลายเดือนก่อน +1

    Hey Yanneck, thanks for your amazing videos about Compose Multiplatform 🙏🏾.
    Currenty I start to learn building apps with compose. Will you bring more videos in the future?

    • @yanneckreiss
      @yanneckreiss  3 หลายเดือนก่อน +1

      Thank you for watching. I am glad you like them 😊 Yes I will, I already have some new video ideas but I am working full time as a software developer and therefore don't have that much time to release that often 😅

    • @MathanMaheswaran
      @MathanMaheswaran 3 หลายเดือนก่อน

      @@yanneckreiss I can understand 😅. Thanks anyway 🙏🏾

  • @CyberSoftSolution
    @CyberSoftSolution 4 หลายเดือนก่อน +1

    But How to handle BackStack in TabNavigation then ?

  • @eduardoruesta5180
    @eduardoruesta5180 4 หลายเดือนก่อน

    Love it!!! thanks! im working on a sample app using Compose Multiplatform. the only doubt i have is that the back navigation is not working on my iOS simulator... How can i go back?

  • @MRonak
    @MRonak 4 หลายเดือนก่อน

    Hello, nice tutorial! Was wondering if there is a way to change the navigation transition for a certain screen navigation or do i have to use the initially set transition across the app?

  • @RachelNayfill
    @RachelNayfill 4 หลายเดือนก่อน

    Hey have tried using deep links and voyager

  • @anasfarhad2845
    @anasfarhad2845 28 วันที่ผ่านมา

    How about if someone wants to send back args from Screen B to Screen A?

  • @sandeepmishra7971
    @sandeepmishra7971 6 หลายเดือนก่อน

    Hey, I am using one viewModel inside my Screen1 class and sharing that to Screen2 class
    But when i am using navigator.push(Screen2(viewModel)) I am not able to get data from my viewModel's state class data but if i use Screen2(viewModel) instead i am getting viewModel's state class data
    Is there anything i am missing while using Voyager with viewModel?

  • @riyupapa39
    @riyupapa39 6 หลายเดือนก่อน

    Good video. I have a question. compose-navigation library have a problem. That is when a conposable has WebView and navigate to another conposable and popbackstack, the WebView is disposed and recreated. How about Voyager?

  • @goalabs
    @goalabs 6 หลายเดือนก่อน +1

    please cover more videos on using this with the kotlin jvm desktop app..

    • @yanneckreiss
      @yanneckreiss  6 หลายเดือนก่อน

      Thanks for your comment 🙂 I am definitely planning to make videos about how to develop not only for mobile but also for web and desktop with compose multiplatform as well in the future

  • @aditya3n
    @aditya3n 2 หลายเดือนก่อน

    Let say i have 2 tabs, Home and Profile. When I'm on Profile screen and press back btn, the expectation is to be redirected back to Home. But currently the output is it's closing the app, instead of navigating to previous screen. Any solution for this?

  • @georgeopiyo6004
    @georgeopiyo6004 2 หลายเดือนก่อน

    Is it possible to share the same view model between two screens and how do you get the same instance (spolier alert still new to this). Use case I have some data in screen a that is a large data set and I dont want to pass it as an argument . Is this correct ?

  • @_hudeifa23
    @_hudeifa23 3 หลายเดือนก่อน

    what if i want some screens not to have bottombar ??

  • @ParmarManishkumarAmrutbhai
    @ParmarManishkumarAmrutbhai 7 หลายเดือนก่อน

    backpress is not working for ios,any other solution?

  • @NoPainInLife
    @NoPainInLife 3 หลายเดือนก่อน

    Voyager is not working for Web. Any ideas ?

  • @hudeifagithub
    @hudeifagithub 5 หลายเดือนก่อน

    is compose multiplatform good for medium apps in 2024 ?

  • @niloythings
    @niloythings 3 หลายเดือนก่อน

    How do I pass a data model class or pojo class from one screen to another screen?

    • @yanneckreiss
      @yanneckreiss  3 หลายเดือนก่อน +1

      The argument just needs to implement Serializable. You can check out the official Voyager documentation for further information :)

  • @valhallagaming4022
    @valhallagaming4022 6 หลายเดือนก่อน +1

    Hi...i am just starting Android development using kotlin......so should I start with native Android development only or should i Start with kotlin multi platform can u guide me with this

    • @yanneckreiss
      @yanneckreiss  6 หลายเดือนก่อน

      It depends on what you are trying to achieve and your current knowledge in programming in general. If you already started with learning native Android development, I'd suggest to first get some practice with it and maybe create an example app for yourself (or even release it 😉). In my opinion that is the best way to learn a new programming language or framework. Then expand your knowledge to a broader field like for example KMP
      Hope that helps 🙂

  • @renzocontreras123
    @renzocontreras123 2 หลายเดือนก่อน

    Navigation Drawer?

  • @andy_lamax
    @andy_lamax 6 หลายเดือนก่อน

    now, lets do deep linking with it

    • @RachelNayfill
      @RachelNayfill 4 หลายเดือนก่อน

      Hey. Have you tried it? I'd love to see the implementation

  • @jyashi1
    @jyashi1 3 หลายเดือนก่อน +1

    Messaging here to find out my handle name

    • @jyashi1
      @jyashi1 3 หลายเดือนก่อน +1

      Ahhh its @jyashi1

    • @yanneckreiss
      @yanneckreiss  3 หลายเดือนก่อน

      Haha I am glad you were able to find it out 😄

  • @dxvfdfx
    @dxvfdfx 7 หลายเดือนก่อน +5

    it' really weird why jetbrains even don't provide a basic navigation solution

    • @yanneckreiss
      @yanneckreiss  7 หลายเดือนก่อน +1

      I think they are still working on it and will provide one in the future (at least they state so in the link I provided in the video description). Until then we can make use of Voyager or alternative solutions. Again, thank you for watching 😊

    • @justinsmith3981
      @justinsmith3981 6 หลายเดือนก่อน

      "Navigation is a key part of modern UI applications that allows users to navigate between different application screens. Unfortunately, the Navigation component from Jetpack Compose's suite of libraries is currently unavailable in Compose Multiplatform. However, there are other third-party alternatives that you can choose from:" - JetBrains

    • @dleonardo3238
      @dleonardo3238 3 หลายเดือนก่อน +1

      Jetpack compose's navigation sucks anyway😂