Jim Sproch Profile
Jim Sproch

@JimSproch

Followers
8,360
Following
15
Media
56
Statuses
3,053

Senior software engineer at Google. Progenitor of Jetpack Compose (May 2017). Now: Compose on every platform, and AI architectures for Program Synthesis.

Mountain View, California
Joined May 2019
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
Pinned Tweet
@JimSproch
Jim Sproch
3 years
More than four years after I first proposed it and wrote the first line of code, we've finally released #JetpackCompose (stable) version 1.0.0! 🎉 Incredibly grateful to everyone who helped me make it happen. Exciting to have built the future of #Android together!
71
172
1K
@JimSproch
Jim Sproch
1 year
Compose for iOS is officially in Alpha! 🎉 Now you can write your UI in Compose for both iOS and Android, share widgets across platforms, and it compiles to a native app on both platforms! Amazing! #JetpackCompose #android #kotlin
13
141
645
@JimSproch
Jim Sproch
3 years
We will be releasing the Compose 1.0 (stable) in July! So excited that #JetpackCompose graduating to stable, and thankful we're releasing when we think it's ready rather than hitting arbitrary conference dates.
16
113
497
@JimSproch
Jim Sproch
3 years
Nearly four years after I first proposed it and started working on it, #JetpackCompose has finally gone to Beta!
23
33
446
@JimSproch
Jim Sproch
3 years
We just released Compose 1.0.0-RC01 binaries! It's the first release candidate as we approach the final 1.0.0 release later this month!
15
90
414
@JimSproch
Jim Sproch
1 month
Compose for iOS is officially in Beta! 🎉 Now you can write your UI in Compose for both iOS and Android, share widgets across platforms, and it compiles to a native app on both platforms! Amazing! #JetpackCompose #androiddev #kotlin
10
93
394
@JimSproch
Jim Sproch
3 years
Fun fact: Did you know the "Google Play Store" itself is using #JetpackCompose in production, and has been for a while now 😉. 🥳 #Android #AndroidDev
7
38
364
@JimSproch
Jim Sproch
2 years
🤯Compose Multiplatform Tetris works on all the platforms (android, desktop, web, and soon iOS). It's even hosted so you can play it online. 🚀
5
43
326
@JimSproch
Jim Sproch
8 months
Kotlin Multiplatform is now officially stable!
@JimSproch
Jim Sproch
1 year
@deniskiuras Kotlin (and therefore also Compose) is different-in-kind from other multiplatform solutions. It compiles to truly native binaries (can seamlessly share code, call to/from platform APIs).
3
1
26
3
42
284
@JimSproch
Jim Sproch
3 years
Android Studio Arctic Fox ❄️🦊 is stable and now! And it supports #JetpackCompose ! 🎉 For those of you who were waiting for Compose to go stable before adopting it, now is the time!
3
40
239
@JimSproch
Jim Sproch
2 years
We just released Compose Compiler stable version 1.2.0 has support for Kotlin 1.7.0! You can use the new Compose Compiler even if you are using older versions of other Compose libraries.
8
54
209
@JimSproch
Jim Sproch
8 months
Beautiful Compose for Desktop sample built by @sinasamaki - absolutely love it, keep up the fantastic work, can't wait to see what you build next! Source code is here:
7
23
191
@JimSproch
Jim Sproch
3 years
Have you ever wondered how computers generate QR Codes? 🤣 Also, do we have a Compose-Desktop version of Tetris yet? If not, I gotta say, this is the way to do it 😉
8
31
181
@JimSproch
Jim Sproch
3 years
Pro tip: `BoxWithConstraints` is probably one of the most useful (and under-appreciated) widgets ever created. Many people don't even know it exists, but it would solve so many of their problems. Someone should write a blog post about it. #JetpackCompose
5
18
160
@JimSproch
Jim Sproch
3 years
People consistently underestimate the critical importance of early design decisions. Code builds upon code. Early decisions (good and bad) are reenforced (exponential/compound growth) superlinear to project size and become impossible to change.
5
33
151
@JimSproch
Jim Sproch
2 years
🤯 Wow, somebody is ahead of the curve 😉. I'm a little surprised at how far they've gotten, given that we haven't even released a technical preview yet and everything is still in a very experimental state. Yay for open source.
@kpgalligan
Kevin Galligan 🐶🎸🎸
2 years
The Kotlin Multiplatform @droidconNYC app will be using Compose UI on iOS. Fine work by the @TouchlabHQ team. Source code just pushed. App deploy soon (ish). Wish us luck on approval!
11
87
392
4
6
133
@JimSproch
Jim Sproch
2 years
Kirill continues to push the limits on what is possible. His latest work on shader based render effects is 🤯 See how it's done here:
Tweet media one
2
17
130
@JimSproch
Jim Sproch
2 years
"Context Receivers" in Jetpack Compose 🤯, if you're brave enough to try the 1.7.0-RC2 build of the Compose Compiler available at #JetpackCompose #Android
3
21
129
@JimSproch
Jim Sproch
3 years
Screenshot testing is very important! Jetbrains wants to hire a senior engineer with interest in building a UI test framework for Compose. This person would have huge impact to enable critical use cases. Please apply if you are interested.
4
25
117
@JimSproch
Jim Sproch
3 years
Skia Shaders in Compose for Desktop. If you haven't already seen the article by @kirillpixel , it's pretty cool: Things you can do with #JetpackCompose for Desktop.
4
16
116
@JimSproch
Jim Sproch
3 years
Moonshot idea: Shared element transitions are hard to implement and engineers are lazy. Imagine if we had a phase between Layout and Draw, which could run a Generative Adversarial Network. Imagine if every transition had silky smooth animations with zero effort.
3
8
110
@JimSproch
Jim Sproch
3 years
@ChannelAdam Certainly Compose was inspired in part by work done by other frameworks (React, Litho, View.js, Flutter). Not surprising that React and Compose have similarities, as I helped build both. I was one of five core engineers on React core before joining Android and starting Compose.
4
13
107
@JimSproch
Jim Sproch
3 years
We're looking to hire someone for our London office to help build Jetpack Compose!
5
14
98
@JimSproch
Jim Sproch
3 years
Amazing! We can use a desktop app built with Compose to track which Android apps are using Jetpack Compose in production! --and it might surprise you to see who is ahead of the curve. #Android #JetpackCompose #ComposeDesktop
@theapache64
theapache64 🚁⛰️
3 years
Looks like @UberEats started to use #Compose for their UI😎😎
Tweet media one
1
9
126
3
6
94
@JimSproch
Jim Sproch
3 years
Woah 😮 🧐🥰 So excited to see examples of Compose+React.js sharing widgets and playing together. This opens the door to sharing an entire ecosystem of existing declarative widgets! 🎉 #JetpackCompose #ReactJS
0
13
89
@JimSproch
Jim Sproch
3 years
We've also published a public list containing some of the things we're working on next: #JetpackCompose #Android #AndroidDev
9
11
90
@JimSproch
Jim Sproch
2 years
@Engr_Wil @p_chmielowski @BreensR For beginners, I'd suggest learning Compose first, for a couple reasons: (1) easier to learn (2) skate to where the puck is going, not where it has been (3) you'll never compete with devs with decade+ of XML/View experience, but can easily become your company's top Compose expert
5
15
84
@JimSproch
Jim Sproch
1 year
One thing I love about Compose Multiplatform is that when people try porting their apps, they're regularly surprised to discover that their composable functions frontend "just works" on iOS. #android #ios #kotlin #JetpackCompose
@vsga_dev
Vsevolod Ganin
1 year
Finished porting Compose UI of Click Track to iOS using #ComposeMultiplatform . Surprisingly took me little effort and time (around a week of late nights). Still some components are missing, bugs here and there but all happen to be known and have workarounds. Very impressed
2
6
66
6
13
82
@JimSproch
Jim Sproch
2 years
@dbaroncellimob AAC ViewModel is a kludge for Android, I see no reason to proliferate bad patterns. If you have a properly designed data layer, you'll realize you have no use for an AAC ViewModel.
@JimSproch
Jim Sproch
3 years
@CatalinGhita4 But the best thing is probably for your app to have a real data layer (with a cache, network layer, etc). Your VM may reference your data layer, but the VM its self probably shouldn't be handling all interactions directly anyway, your platform agnostic data layer should do that.
2
1
15
11
13
81
@JimSproch
Jim Sproch
1 year
Wow! Compose Multiplatform running as a native desktop application using GraalVM! Look ma, no JVM! #JetpackCompose #android
@patrikord
Patrik Eriksson
1 year
Comparison of my app that uses Compose Animations with canvas on a M1 mac mini, when using JVM vs. GraalVM. CPU usage is reduced on Graal, but maybe less than expected, the memory footprint reduction is pretty big :). #JetpackCompose #graalvm @jetbrains Still needs work on macOS!
Tweet media one
4
8
53
1
10
78
@JimSproch
Jim Sproch
3 years
@PM_Coffee Androidビューはメンテナンスモードです。 相互運用性レイヤーとして引き続きサポートしますが、すべての新しい開発とバグ修正はJetpackComposeに組み込まれます。 Composeは、Androidの未来の最新UIツールキットです。
1
47
80
@JimSproch
Jim Sproch
3 years
If anyone is looking for animation project inspiration, maybe try porting the "Three.js Birds" demo to Compose? I have no idea if #JetpackCompose is fast enough to drive such a thing, but scattering a flock of birds with your pointer is satisfying as hell.
3
11
78
@JimSproch
Jim Sproch
3 years
@a_key_bako Declarative programming (including Compose) usually takes 3-6 months of usage before people have the "💡⚡️ holly-shit this is good" moment. Until then, you will struggle with it, you will fight it, it will frustrate you, and then it will all click in your mind six months later.
5
18
73
@JimSproch
Jim Sproch
2 years
Woah, looks amazing! There is something about the parallax effect that is just so satisfying. I can't wait for an entire design system (full of buttons, switches, and text nodes) to use this technology for all the widgets. Great work @_SUR4J_ !
@_SUR4J_
すーじ・🍜・🍙
2 years
17
70
533
4
9
73
@JimSproch
Jim Sproch
7 months
@_______Arash It's true. If you look hard enough, you'll still find some ktdocs that were copy-pasted from flutter. That said, we also made many different design choices, like our usage of an optimizing compiler, and positional memoization, and widgets as functions.
@JimSproch
Jim Sproch
1 year
@adolesan_ Flutter came first. We learned a lot from their experience when building Jetpack Compose.
0
6
40
2
5
73
@JimSproch
Jim Sproch
3 years
Compose powering chrome extensions... the ingenuity of our community never ceases to amaze me! #JetpackCompose
@theapache64
theapache64 🚁⛰️
3 years
🤩 Yes, you can also build chrome extensions using Compose. Here's a template if you want to start developing one. ➡️ Template: If you don't want to use the template, you can use the `create-compose-app` CLI 😉 ➡️CLI:
9
35
221
0
6
72
@JimSproch
Jim Sproch
2 years
Compose running everywhere 😉🎉🚀
@thelumiereguy
Piyush Pradeepkumar
2 years
Now that Compose is Multiplatform, I've ported over my repo as well! Thanks to the devs on the Kotlin Slack channel for getting Skiko based Canvas to work on Browser. 🫡 #Kotlin #JetpackCompose #AndroidDev #KMM #creativecoding
4
18
82
3
5
69
@JimSproch
Jim Sproch
10 months
BoxWithConstraints is perhaps the single most important widget in Jetpack Compose. #Android #AndroidDev
@KaushalVasavaIn
Kaushal Vasava
10 months
Let's dive into the world of Jetpack Compose, where we're embracing the power of 'BoxWithConstraints' to support a wide range of screen sizes! 📲 Follow me for more Android, and Kotlin-related information, and share it to help others.
0
0
9
5
3
65
@JimSproch
Jim Sproch
2 years
😍 Creative color picking tool built using Compose for Desktop. I love how the wheel shows the locations of the matching colors, gives a much better understanding of how the algorithm chooses the colors :). Very well done!
@riggaroo
Rebecca Franks
2 years
I added a harmony mode color picker to the repo this week, it also works on desktop ✨ Let me know what you think and if you find any bugs🐛 #JetpackCompose #AndroidDev
18
59
395
1
6
64
@JimSproch
Jim Sproch
3 years
The coolest thing about our announcement of "Compose for Web"... it's the first ever webpage about Compose - written in Compose! #JetpackCompose
2
12
64
@JimSproch
Jim Sproch
4 months
Amazing! Unlocking a whole new world for Android developers! #AndroidDev #Compose #JetpackCompose
@chrisbanes
Chris Banes
4 months
Just landed WebAssembly support to Haze 💠 Kotlin Multiplatform and Compose Multiplatform made it far too easy. This is the _exact_ same code that we use on iOS and JVM, working on the web too. 🔗:
4
19
233
0
6
62
@JimSproch
Jim Sproch
2 months
@fanatico120 @InosukeDrummer @marianorenteria We moved the Compose Compiler into the Kotlin repository in order to allow it to be released along with the rest of Kotlin, so you don't need to always worry about which versions are compatible. Google will still be primary contributor on compose compiler and Compose is strong.
3
6
61
@JimSproch
Jim Sproch
3 years
The first ever compose-for-web game has been released! Compose bird using radio buttons 🤪
@theapache64
theapache64 🚁⛰️
3 years
🎉🎉 Here's another game built using #Compose 🎉🎉 🐦 Compose Bird, A flappy bird clone using Compose Web and radio buttons 🚀 GitHub: ▶️ Play Game:
6
17
155
0
4
57
@JimSproch
Jim Sproch
3 years
The banal looking demo belies the true power of what just happened here. 😉
@JakeWharton
Jake Wharton
3 years
Compose (and NOT Compose UI) on iOS driving UIKit. Same demo we ran a few months ago (thanks to @kpgalligan and @shikasd_ ) on a hacky fork of the compiler now runs on unmodified AOSP Compose compiler. Yes it's ugly it's a technical demo. Give me a pretty UI I'll drive that too
8
72
423
2
6
53
@JimSproch
Jim Sproch
5 months
The Compose Multiplatform Documentation Survey is a great place to share your insights on Compose Multiplatform docs to help us enhance your developer experience. ➡️ Take the survey:
1
10
53
@JimSproch
Jim Sproch
3 years
@The_Mystery_One We released Jetpack Compose before Swift UI was announced, but yeah, glad to hear you think we got things right :)
1
5
53
@JimSproch
Jim Sproch
3 years
@AndroidDev The syntax was originally called KTX, back before the Android Kotlin Extensions (also called KTX) started competing for the same name. If you look back at some of the original commits to Compose, you'll see a flag to enable/disable the KTX syntax.
2
2
52
@JimSproch
Jim Sproch
2 years
I love stories like these:
Tweet media one
1
11
50
@JimSproch
Jim Sproch
8 months
@danielatitienei If you know Jetpack Compose you can do iOS development. Here is why:
@JimSproch
Jim Sproch
1 year
Compose for iOS is officially in Alpha! 🎉 Now you can write your UI in Compose for both iOS and Android, share widgets across platforms, and it compiles to a native app on both platforms! Amazing! #JetpackCompose #android #kotlin
13
141
645
2
5
48
@JimSproch
Jim Sproch
3 months
@SamuelKangau Did you know: Compose Modifiers are effectively just wrapper widgets collapsed into a short expression? They wrap the widget they modify, and match the direction of the DSL (top-left being outermost, bottom right being innermost widget).
4
9
47
@JimSproch
Jim Sproch
2 years
If you are eager to use the latest Kotlin, feel free to bump your Compose Compiler version to 1.2.0-beta02. Although the 1.2 version is technically a beta, we generally consider it stable enough to be used in production encourage people to upgrade.
@JimSproch
Jim Sproch
2 years
@blendthink The Compose Compiler version does not need to match the version number for the rest of the Compose libraries. Even if you are using older/stable versions of other Compose libraries, you should feel comfortable bumping your Compose Compiler. (eg: ComposeUI=1.1,ComposeCompiler=1.2)
0
8
38
3
8
45
@JimSproch
Jim Sproch
3 months
Compose powering websites everywhere! #androiddev #JetpackCompose
@norrisboat
Norris Boateng
3 months
Adaptive login screen with Compose Multiplatform wasm. Uses size class library from @chrisbanes . #KMP #Compose #JetpackCompose #Wasm
3
10
39
3
2
43
@JimSproch
Jim Sproch
3 years
This is still my favorites so far! Such a beautiful Desktop app built with #JetpackCompose ! The video is well-done and the music is so catchy. If anyone knows of other sweet Desktop apps built with #JetpackCompose , please send them my way!
@theapache64
theapache64 🚁⛰️
3 years
🎊 Here's my first compose desktop app 💻. A simple application to name colors and generate code for them 🖌️ It can also auto-capture colors from your clipboard 📋 ➡️ GitHub: #Kotlin #ComposeDesktop #Compose
2
9
67
4
4
43
@JimSproch
Jim Sproch
1 year
Wow, this is fantastic! These implementations keep getting better and better, loving it! beautiful blue glow! Nicely done @Snokbert !
@Snokbert
Konstantin Klassen
1 year
Late to the party but here is one more 😄! #jetpackcompose #androiddev @JimSproch
12
15
176
0
3
44
@JimSproch
Jim Sproch
1 year
@ndiritu_michael @RealNeilC @arkann1985 The only meaningful definition of "native" is: "can you directly pass objects to and from the system". Or put another way: do you share code, share the same memory space and call stack.
3
7
44
@JimSproch
Jim Sproch
2 years
Trailer is epic: Disclaimer: I haven't reviewed the course and thus can't officially endorse it, but the trailer is epic and the technology (KMM) is awesome.
1
7
43
@JimSproch
Jim Sproch
2 years
Not just any Jetpack Compose CMS, but a Desktop application with Drag&Drop capabilities! 🎉
@Tunji_D
Tunji Dahunsi
2 years
Just updating my website with a Jetpack Compose CMS, no biggie
10
14
128
1
1
41
@JimSproch
Jim Sproch
3 years
@CatalinGhita4 AAC ViewModel shouldn't be necessary with Compose; just handle configuration changes. VM is a platform-dependency; we've seen ton of value (better code quality) by embracing MPP source structure and being explicit to avoid platform dependencies. Also:
8
6
39
@JimSproch
Jim Sproch
1 year
@VasiliyZukanov Yes, Google monorepo encourages Compose. I can't comment on specific teams/projects except those already publicly mentioned in Google messaging, but can say that many flagship projects are using Compose and many others have plans to switch to Compose.
2
3
40
@JimSproch
Jim Sproch
2 months
Compose Multiplatform running in WASM got a brief mention at Google IO 😇. Was that on your bingo card for this year?
@zsmb13
Márton Braun @[email protected]
2 months
Hold on... That's a Google I/O talk that mentions Compose Multiplatform! Running on Wasm, no less. Didn't have that on my bingo card for this year. 6:51 into the video.
1
6
50
3
1
41
@JimSproch
Jim Sproch
1 year
@programadorthi Strongly disagree. It has nothing to do with being impressed by a particular framework, ultimately every framework just draws pixels. It's about getting practice building a legendary looking widget and demonstrating your skill / what you are capable of building.
2
2
41
@JimSproch
Jim Sproch
3 years
@Tech_Kazu Considering I was on the React.js core engineering team before joining Google and proposing Compose, it's not surprising there are similarities. If you know React, you might be interested in some of the earliest Kotlin syntax extensions we had for Compose:
Tweet media one
5
5
40
@JimSproch
Jim Sproch
1 year
@adolesan_ Flutter came first. We learned a lot from their experience when building Jetpack Compose.
@JimSproch
Jim Sproch
3 years
@__velu @ThomasBurkhartB @manuelmaly @shakil807 @kyleve @StanTwinB I had lunch with the Flutter team on a regular basis when doing the initial designs for Compose, they were very helpful and we bounced lots of ideas around, so there was certainly influence. We also mentioned our inspirations at Google IO 2019 release:
1
2
30
0
6
40
@JimSproch
Jim Sproch
1 year
@ndiritu_michael @RealNeilC @arkann1985 That is the super-power of Kotlin. The output of the Kotlin compiler is truly naive, indistinguishable from a library written in Java/ObjectiveC on their respective platforms, you can directly call Android/iOS APIs.
7
5
39
@JimSproch
Jim Sproch
2 years
😍
@_victorkabata
v1ct0r
2 years
I managed to migrate one of my old android projects to a Kotlin Multiplatform project and created a desktop version of the app using Compose Multiplatform. Huge thanks to @cm_kagiri for helping out in migrating the android app to compose #AndroidDev #Kotlin @254androiddevs
14
39
196
0
0
39
@JimSproch
Jim Sproch
2 years
@csinco No, as I understand it, most of the SwiftUI problems are downstream consequences of (1) being closed source (2) being bundled with OS releases (3) not utilizing KMP. That isn't to say I don't have regrets (eg. Effects, CompositionLocals, etc) but we avoided the biggest pitfalls.
4
2
40
@JimSproch
Jim Sproch
1 year
@ilian_konchev Yeah, but you've gotta be careful. We were asking ChatGPT about some Compose APIs and it started hallucinating some (admittedly very cool APIs) that don't actually exist. It spoke about them in amazing detail complete with hallucinated docs and hallucinated usage examples.
9
1
40
@JimSproch
Jim Sproch
3 years
A huge THANK YOU to @shikasd_ for doing an incredible job getting this huge CL over the finish line! A giant leap closer to Compose for Web being a thing! Prime example of an ideal community contributor. It's inspiring what community contributions can achieve! #JetpackCompose
@shikasd_
Andrei Shikov
3 years
Kotlin/JS support for Compose compiler has been merged 🎉🎉🎉 After ~100 revisions and 6 months of work, we've done it! *some of it is not that plain and simple though:
11
43
356
1
4
40
@JimSproch
Jim Sproch
2 years
@blendthink The Compose Compiler version does not need to match the version number for the rest of the Compose libraries. Even if you are using older/stable versions of other Compose libraries, you should feel comfortable bumping your Compose Compiler. (eg: ComposeUI=1.1,ComposeCompiler=1.2)
0
8
38
@JimSproch
Jim Sproch
10 months
@X1nto I think he is just saying that an understanding of other declarative frameworks will give you a better understanding of the Compose architecture, which is true. Correct me if I'm wrong, but I don't see anything objectionable about his original tweet.
1
0
39
@JimSproch
Jim Sproch
2 years
Don't know how I missed this release last year, but lately I've been seeing a bunch of positive feedback on this library! If you're looking for a navigation library, it's worth checking out! Thanks @adrielcafe ! #Compose #JetpackCompose #AndroidDev
@adrielcafe
Adriel Café 🇧🇷
3 years
Introducing Voyager: a pragmatic navigation library built for, and seamlessly integrated with, #JetpackCompose
1
9
38
3
7
39
@JimSproch
Jim Sproch
3 years
@miguelatwork This is why it's so important to spread the news about things like `BoxWithConstraints` which allows you to easily write widgets that are responsive to the space available. Allows widgets to naturally occupy the space available, whether due to screen size or orientation or other.
3
3
38
@JimSproch
Jim Sproch
3 years
Games of Snake seem to be a popular use of #JetpackCompose 🐍 I think "Pacman" and "Breakout" are still unattempted if anyone is looking for other arcade games to add to the collection 😉
@crjacinro
Serge Nino Martin Villasica
3 years
I just recreated the classic Snake game using Kotlin Compose for Desktop! I know it's not as amazing as Fruit Ninja or Asteroids (as what I have seen on twitter) but at least I got my hands a little dirty. #JetpackCompose #desktop #Kotlin #snake
4
6
54
2
4
36
@JimSproch
Jim Sproch
3 years
Playing with bezier curves is fun with Compose Illustrator for Desktop ➰➿
@ppvi
Jose Alcérreca
3 years
I made all this to recreate a bounding box algorithm (brilliantly explained by @FreyaHolmer ) for beziers! ~600LOC. By the way I'm not opening an Android emulator ever again. #ComposeDesktop #JetpackCompose
3
7
64
1
7
35
@JimSproch
Jim Sproch
3 years
Inspiring Animation; built with Compose for Desktop!
@CuriousNikhyl
Nikhil Chaudhari
3 years
Matrix digital green-rain in #JetpackCompose I'm just using Cistercian numerals, "digital" rain kinda became "ancient" rain 😛. Take a look -
3
4
47
2
1
35
@JimSproch
Jim Sproch
1 year
If you're looking for a great way to start playing with Compose on iOS... and simultaneous build something useful... while contributing to the compose community...
@renaud_mathieu
Renaud Mathieu
1 year
Hey! I'm sure someone is already implementing an iOS theme in Compose for iOS, if you need help👋🙋‍♂️ #kotlinconf23 #AndroidDev
5
2
19
2
3
35
@JimSproch
Jim Sproch
3 years
@yanzm Yes, I am just finishing up that Kotlin 1.5.0 upgrade now, will certainly be done long before Compose 1.0.
2
6
35
@JimSproch
Jim Sproch
3 years
Thanks to @Ch8n2 for adding another game to the list of games built with Compose for Desktop! ✅ Snake ✅ Asteroids ✅ Alien Invasion Compose for Desktop is rapidly becoming a game engine! So excited to see what's next!
@Ch8n2
Chetan Gupta
3 years
I build the Alien Invasion game in #jetpackCompose Desktop, checkout code from #androiddev #kotlin code reviews are highly appreciated
3
7
73
1
4
36
@JimSproch
Jim Sproch
4 months
Wow.
@mike_penz
Mike Penz
4 months
It's been a while... Introducing HypnoticCanvas ✨, a background shader modifier for Compose (Jetpack & Multiplatform including WASM) Featuring Haze by @chrisbanes to create a whole new immersive experience. WASM: GitHub:
3
18
120
2
2
36
@JimSproch
Jim Sproch
3 years
@AndroidDev There were some very real reasons the syntax existed, which maybe we'll go into in a blog post or something some day. Those early explorations had a major impact both on what Compose is today and what Kotlin can do today.
4
1
36
@JimSproch
Jim Sproch
3 years
Breakout built using #JetpackCompose for Desktop! Amazing! 🎉 This was always one of my favorite games as kid!
@anton_malinskiy
Anton Malinskiy
3 years
When you're tired of playing DOTA in the evening and decide to play around with Jetpack for Desktop
4
4
49
1
5
34
@JimSproch
Jim Sproch
3 years
@bluemix2 CompositionLocal should be thought of like ThreadLocal or Globals - they create implicit data dependencies and implicit API contracts that break modularity and make your code much less maintainable. You should feel bad every time you use it, prefer passing parameters explicitly.
2
4
35
@JimSproch
Jim Sproch
3 years
@hibetul Jetpack Compose should be going stable in less than a week 😉. We said that we intended to release in July, so less than a week left 🥳
1
2
34
@JimSproch
Jim Sproch
2 months
@fanatico120 @InosukeDrummer @marianorenteria The move was purely 100% a pragmatic way to improve the developer experience for Compose users by making it easier to get the correct version of Compose Compiler. The Android team is still 100% supportive of Compose and we are not backing away from framework development.
2
0
34
@JimSproch
Jim Sproch
2 months
@imShreyasPatil @joreilly I know people have made Compose run on iOS 12. SwiftUI requires iOS 13, so Compose has better version support than SwiftUI! 🤣😂🤣😇
3
5
34
@JimSproch
Jim Sproch
2 months
@Aidan_vii @gochev @ASalvadorini @goldinio @mraleph @MatejKnopp @yunusemrecetin_ @dancamdev Kotlin Multiplatform is native. Objects live in the same memory space as ObjectiveC/Swift, and code uses the same call stack, you can directly invoke iOS APIs from Kotlin. Kotlin uses the same LLVM backend and is just as native as ObjectiveC.
@JimSproch
Jim Sproch
1 year
@CFDevelop @ndiritu_michael @RealNeilC @arkann1985 Yes, targets the platform ABI. For example, on Android it compiles to Java class files. On iOS it uses LLVM (same compiler toolchain used by XCode/Swift). From that point, binary generation is identical to Apple's native toolchain (uses all the same tools). Web compiles to JS.
2
1
22
1
5
32
@JimSproch
Jim Sproch
2 years
I love that people are continuously building great things with Compose Multiplatform! Great job @Tunji_D !
@Tunji_D
Tunji Dahunsi
2 years
Took my Jetpack Compose desktop experiment a little further, it's now the primary WYSIWYG editor for my blog. The floating action button adapting with animation as it changes based on the current screen is one of my favorite things.
13
16
180
0
3
33
@JimSproch
Jim Sproch
3 years
@YazeedAlKhalaf All tech builds upon the learnings of prior technologies. Especially in the early days when designing Compose, I'd frequently have lunch with the Flutter team and bounce design ideas off them. Hopefully we can learn from each other and grow better together.
2
0
32
@JimSproch
Jim Sproch
1 year
Love seeing libraries like this! Looking forward to seeing more KMP Compose in 2023!
@Wavesonics
Adam Brown
1 year
Released a tiny library for #kotlin multiplatform compose for invoking native dialogs on Windows, Linux, OSX, and Android: #opensource
3
5
48
1
0
31
@JimSproch
Jim Sproch
1 month
@skyecodes_ The use of DI frameworks typically adds substantial unnecessary complexity to your codebase.
@JimSproch
Jim Sproch
3 months
@androiddevnotes With regards to it being necessary... No, I'm of the opinion that it adds more complexity than value.
1
1
9
3
6
31
@JimSproch
Jim Sproch
3 years
@itometeam @kr9ly @at_sushi_at はい、私がReact.jsチームに所属していたとき、ガベージコレクションはパフォーマンスの最大のボトルネックでした。 Composeを設計するときにその問題を回避したかったのです。
0
2
31
@JimSproch
Jim Sproch
3 years
@__velu @ThomasBurkhartB @manuelmaly @shakil807 @kyleve @StanTwinB I had lunch with the Flutter team on a regular basis when doing the initial designs for Compose, they were very helpful and we bounced lots of ideas around, so there was certainly influence. We also mentioned our inspirations at Google IO 2019 release:
1
2
30