opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

A fully functional Android app built with Kotlin and Jetpack Compose
GitHub RepoViews6

Project Description

View on GitHub

Want to See How a Modern Android App Is Actually Built? Start Here

You've read the architecture guides, watched the talks, and nodded along to phrases like "unidirectional data flow" and "fully modularized." But at some point you want to see what all of that looks like when it's actually assembled into a working app. Now in Android is that app—a fully functional Android application built entirely with Kotlin and Jetpack Compose, published by the Android team as a reference for how they think these things should be done.

What It Does

Now in Android is a running app that displays content from the Now in Android series—links to recent videos, articles, and other material about Android development. You can browse that content, follow topics you care about, and get notified when new content matches your interests. It's available on the Play Store as the prodRelease variant, though the team describes it as a work in progress.

Under the hood, it follows the official Android architecture guidance and is fully modularized. The repository is more than just source code, though—it ships with a design case study, an architecture learning journey, and a modularization learning journey, each documenting the reasoning behind the approach rather than just the result. The app uses Gradle as its build system and can be imported straight into Android Studio.

Why It's Cool

  • It's a reference implementation, not a demo. Plenty of sample apps show off a single library. This one shows how the pieces fit together—architecture, modularization, UI, and testing—in something that actually runs. The learning journey docs are the real draw here: they explain the why behind the decisions, which is usually the hard part to find.

  • The demo flavor means zero setup friction. The build uses product flavors to control where content comes from. The demo flavor loads static local data, so you can build and explore the UI immediately without touching a backend. The prod flavor makes real network calls, but the backend isn't publicly available right now—so demoDebug and demoRelease are your practical starting points.

  • There's a benchmark variant for startup performance. The benchmark variant of the app exists to test startup performance and generate a baseline profile. That's a detail you rarely see in sample projects, and it's a useful thing to study if you've been meaning to look into baseline profiles.

  • A separate catalog app for the design system. app-nia-catalog is a standalone app that displays the list of components stylized for Now in Android. If you've ever wondered how a team organizes and previews its UI components outside the main app, this is a nice concrete example.

  • It's honest about being unfinished. The README says plainly that the app is a work in progress. That matters—it means you're looking at a living codebase that gets updated, not a frozen tutorial.

How to Try It

  1. Grab the latest stable version of Android Studio.
  2. Clone the repository: github.com/android/nowinandroid
  3. Import the project—it uses Gradle and should open directly.
  4. Change the run configuration to app.
  5. Select the demoDebug or demoRelease build variant (the prod variants rely on a backend that isn't publicly available).

Once it's running, work through the architecture learning journey and modularization learning journey. They're written to be read alongside the code, and they'll make a lot more sense once you've poked around the project structure yourself. The design case study is worth a look too if you care about how the UI decisions were made.

Final Thoughts

This isn't a library you'll drop into your project—it's a study resource. If you're an Android developer who wants to see official architecture guidance applied end to end, or you're preparing for a role where modularization and Compose are front and center, this repository is one of the better places to spend an afternoon. It's a work in progress, so treat it as a living reference rather than gospel. But that's arguably the point: watching how a real app evolves is more instructive than reading a finished one.


Follow @githubprojects for more developer tools and open source projects.

Back to Projects
Project ID: nowinandroidLast updated: November 1, 2026 at 02:54 AM