Tag: Compose

Why Build a Pattern Library in Jetpack Compose?

In the dynamic and fast-paced landscape of modern app development, maintaining design consistency across diverse teams and applications remains a formidable challenge. Whether building for enterprises, businesses, or the common consumer, the quest for design consistency and efficient development is ...

Single-line Onboarding Using Docker Compose

All my career, I’ve worked at various startups that have had a very similar onboarding strategy. Because the company (and product) is small enough, it’s reasonable to ask the engineers to run the entirety of the product locally on their machine for development. If this sounds familiar, t...

Consuming flows safely in Jetpack Compose

Collecting flows in a lifecycle-aware manner is the recommended way to collect flows on Android. If you’re building an Android app with Jetpack Compose, use the collectAsStateWithLifecycle API to collect flows in a lifecycle-aware manner from your UI. collectAsStateWithL...

Mastering Jetpack Compose Preview: Pro Tips and Tricks

Jetpack Compose makes building Android app screens easier. One of its cool features is the @Preview annotation. This lets us quickly see how our designs look without running the full app. But sometimes, we need to see our designs in different ways, like in dark mode or light mode. Repeatin...

Introduction to Jetpack Compose: Building Android User Interfaces Made Easy

Introduction Are you tired of wrestling with XML layouts and cumbersome UI code in Android app development? Say hello to Jetpack Compose — a revolutionary UI toolkit that’s changing the way developers create beautiful Android interfaces. In this comprehensive guide, we’ll take y...

Basics of Jetpack Compose

Maybe you have seen or dabbled in a few other languages in the past and you want to learn something new. Maybe you want to try getting into mobile development. If the answer to any of those questions is yes, this is the place to start. An easy prerequisite If you haven’t already, you wil...

Use Jetpack Compose in your existing Project

In my recent technical talk about “Simplify Android Development with Jetpack Compose” in Google I/O Extended, I met several developers who were interested in using Jetpack Compose in their existing Android apps. They asked me two common questions: “How can I start using Jet...

Changing the Status Bar Color in Jetpack Compose

Every problem solved is a lesson learned. #AndroidTips #SolvedProblemToday Jetpack Compose Changing the status bar color is a common task when designing Android applications. With Jetpack Compose, it’s a simple process that can be done in just a few lines of code. (Only for Mate...

Jetpack Compose Side Effects in Details

Jetpack Compose has made UI development in Android a lot easier, but it’s still crucial to understand how to manage UI effects properly for better performance. In this article, we’ll explore three important Composable functions that help us manage UI effects effectively: SideEffect, Laun...

Custom Shape with Jetpack Compose

After exploring the Jetpack Compose Canvas in a previous article, this new post will explain how you can draw and use a custom Shape for your Composables to give them a specific outline. The Jetpack Compose foundation library already provides common shapes but we’ll see how...

Jetpack Compose Request Permissions

Jetpack Compose is a powerful toolkit for building modern Android user interfaces. One important aspect of many Android applications is the ability to request permissions from the user. In this article, we will explore how to request permissions in a Jetpack Compose application, with a basic example...

Multi-List Item Selection in Jetpack Compose

The option to select multiple items in a list is a very common functionality we can see in a lot of apps like Gmail, WhatsApp, Files, Messages, etc. Screenshot from Gmail and Files app (from Google) We will explore the process of developing a similar user interface (UI) using Jetpack C...

How to fix the Jetpack Compose Preview Error:ViewModels creation is not supported

When you create complex enough Views in Jetpack Compose, you reach the point when you need to couple the View with an IO operation controller. One of the standard solutions for that that I prefer, for now, is the MVVM pattern and the HiltViewModel. Usually, when a view appears on the screen (duri...

Exploring the official Pager in Compose

With the release of version 1.4, Jetpack Compose has officially received support for a paging layout. While this is something the View-based system has had for a long time in the form of a ViewPager widget, the developers had to use the Accompanist library implementation to achie...

Add blur effect to Image in Jetpack Compose

Hi guys, today I want to share this little article where I briefly explain how to create a blurry image on Android. Without so much introduction, let’s get to the point.  Blur is a visual effect that is often used in graphics software to reduce the clarity or sharpness of an image or v...

Jetpack Compose — Drawing custom shapes (Circle, Rect, Paths)

Before starting, it’s good to have a grid notebook, something you can just use pen and paper and draw what you want to draw there first. The 0,0 is always in the top left corner. It’s basicly the reverse coordinate system. In a grid of 100x100, the bottom right corner is 100,100. All the...

Monitoring and Logging Stack with Docker Compose

In this blog we are going to learn about the Docker Compose while orchestrating more than one containers of different monitoring and logging tools. Here the monitoring and logging tools we are using are Elastic Search, Logstash, Kibana , Prometheus and Grafana for which we will create a docker co...

The Whole Shebang: Compose Files

You can read more about it from the official docs, but to simplify, consider the following: you use Docker to manage containers, images, volumes, etc. When you do docker run you are basically executing a single container. If you want to start a second container, th...

Run Keycloak locally with Docker compose

Follow up on my previous blog about running Keycloak in Docker with an external DB, in this document, I’d like to show you how you can achieve with docker compose easily Note: source codes can be found at https://github.com/ozbillwang/keycloak-compose Step One Update you...

Run PostgreSQL and PGAdmin using docker compose

Running PostgreSQL on native operating system is always a hassle. First we have to perform the installation on the respective operating system be it Linux, Windows or MacOS. The procedure of installation varies from OS to OS. We will use Docker (docker compose precisely) to deploy PostgreSQL alon...

Application migration from Docker Compose to Kubernetes. How, why, and what problems we’ve encountered. Part 1

Often, an application that has significant growth in its user base isn’t ready for this. Requirements for speed and availability are growing, and infrastructure and application architecture don`t allow them to be met. My task was to improve the application infrastructure and quality. The ap...

The Way of Dockerize a Spring Boot and MySQL Application With Docker Compose.

You can get instruction about docker installation from https://docs.docker.com/desktop/install/windows-install/.I have downloaded docker desktop to my local pc and It is wrapped up docker with docker compose. So no need to install docker compose separately. Overview My sample application ...

Creating and filling a Postgres DB with Docker compose

Many times we need to populate and eventually share a database with dummy data, either to test our pipelines, test queries, make a demo of the operation of a new service, or perhaps as a tool to apply testing to the future members of the company. Github repo: https://github.com/jdaarevalo/...

Docker-Compose and Mosquitto MQTT: Simplifying Broker Deployment

Eclipse Mosquitto is an open-source MQTT broker that implements MQTT protocols versions 5.0, 3.1.1, and 3.1. It is a lightweight system that can be installed on a variety of devices, from single-board computers like Raspberry Pi to servers. MQTT protocol provides an efficient and fast way to transmi...

Go projects and docker compose watch

docker compose watch (AKA hot reload) is now available to everyone. It’s a nice tool for automatic updating of running containers upon save. Something I haven’t seen discussed much on the internet or from Googling is how to use it with a Go project, so I thought I’d do...

Day 19: A Comprehensive Guide to Volumes, Networks, and Docker Compose

Docker, the powerhouse of containerization, empowers developers to create, deploy, and scale applications seamlessly. In this immersive guide, we’ll deep dive into advanced Docker concepts: volumes, networks, and Docker Compose. Prepare to unlock the potential of these tools and elevate your c...

WebView in Jetpack Compose

A WebView in a native app is a view component that allows you to display web content, seamlessly enhancing your Android applications with web functionality. They are relatively easy to use. Let’s build an Android app that integrates the Longman Dictionary using a WebView. Now, what do we ne...

MVVM Architecture in Android with Jetpack Compose

In the ever-evolving world of Android app development, choosing the right architecture is crucial. It can make the difference between a codebase that’s easy to maintain, test, and extend and one that becomes a tangled web of complexity. One architecture pattern that has gained widespread adopt...

Picking Images From Gallery Using Jetpack Compose

Grab a cup of coffee  and let’s see how to pick images from the gallery using Jetpack Compose. Setup We need to use a dependency called Coil in order to display the images. To add it just open :app/build.gradle.kts and paste this into the dependencies block. ...

Creating Rich Interactions with Custom Gestures in Compose

In the world of mobile app development, creating rich and intuitive user interactions is crucial for delivering a top-notch user experience. In this blog, we’ll explore how to use custom gestures in Jetpack Compose to build beautiful and engaging interactions for your Android app. By the end o...

Life Cycle In Jetpack Compose

In Android, the life cycle refers to the series of states that an application component, such as an Activity or Fragment, goes through during its lifespan. Each component has a set of life cycle methods that are called by the Android system at different stages, allowing developers to execute code an...

Input Validation With Clean Architecture In Jetpack Compose

Input validation is an essential aspect of app development as it helps to prevent unexpected user input, data corruption, and security vulnerabilities. With the increasing popularity of Jetpack Compose in Android development, it is important to understand how input validation fits into the Clean Arc...