Open source, crafted with care.
Flutter, Android, iOS and Rust projects I build in the open. Free for anyone to use, learn from, and contribute to.
- Flutter
- Kotlin
- Swift
- Rust
$ cargo run -p oxdrop-desktop
Compiling oxdrop-core v0.1.0
Compiling oxdrop-desktop v0.1.0
Finished `dev` profile in 4.12s
Running target/debug/oxdrop-desktopTransfer ready
Scan with your phone to receive 3 items
class Card
extends StatelessWidget
build(context)Flutter from zero · 18
Building custom widgets
- Stateless or stateful
- Composing layouts
- Quiz: widget tree
Connected to MacBook Air
3 items for you
- lecture-notes.pdfSent2.4 MB
- design-assets.zip62%184 MB
- demo-recording.movWaiting41 MB
pub fn start(items: Vec<Item>)
-> Result<Transfer> {
let link = Link::random();
let t = Transfer::new(items, link);
qr::show(&t.link());
Ok(t)
}Good evening, Linh
Continue learning
Lesson 18 of 24
Building custom widgets
Your courses
- Flutter from zero24 lessons
- State management12 lessons
- Animations in Dart9 lessons
Projects
Everything I make is on GitHub. Read the code, open an issue, or send a pull request.
- e-learningOnline Course App - A modern e-learning mobile application built with Flutter.Dart24 stars
- oxdropSend files from your Mac or PC to an Android phone over local Wi-Fi: scan a QR code and download in the browserRust2 stars
- expandable_sheetA customizable, draggable, and scrollable bottom sheet for Flutter with smooth interactions and flexible behaviorDart2 stars
- mobile-release-guardStop mobile releases that log users out or lose data after a store update. Claude Code plugin + Python CLI for iOS, Android, Flutter & React NativePython0 stars

Made by Andrew Do
I'm Tung, though Andrew is easier to remember. I'm a mobile engineer. I build apps natively for Android and iOS and in Flutter, and I reach for Rust when a tool needs to be fast and small. yh.Labs is where I build in the open, so other developers can use the work, learn from it, and make it better.
I'm open to mobile and Rust work, and to collaborating on open source. Email is the quickest way to reach me.