Trending

#Compose

Latest posts tagged with #Compose on Bluesky

Posts tagged #Compose

Docker Compose Tip #50: GPU support with deploy.resources Reserve and use GPU devices in your Compose services for ML, AI, and compute workloads

🐳 🐙 Docker Compose Tip #50

GPU access in Compose!

deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]

ML training, inference, video processing.

Guide: lours.me/posts/compose-tip-050-gpu-support/
#Docker #Compose #GPU #ML

8 4 0 0
Post image

Разбираем Remote Compose: как Google предлагает строить BDUI Технологии Backend-Driven UI уже давно используются во многих ком...

#android #compose #jetpack #compose #bdui #sdui #google #backend-driven #ui #remote #compose

Origin | Interest | Match

0 0 0 0
Original post on hackaday.com

Simulating the AVR8 for a browser-based Arduino emulator It’s always nice to simulate a project before soldering a board together. Tools like QUCS run locally and work quite well for analog circu...

#Android #Hacks #aarduino #Arduino-esp32 #avr8 #docker #docker […]

[Original post on hackaday.com]

0 0 0 0
Docker Compose Tip #49: Mixed platforms with Linux containers and Wasm Run Linux containers and WebAssembly modules side by side in the same Compose stack

🐳 🐙 Docker Compose Tip #49

Mix Linux containers and Wasm in one stack!

platform: wasi/wasm
runtime: io.containerd.wasmtime.v1

nginx + Wasm API + Postgres — all in one Compose file.

Guide: lours.me/posts/compose-tip-049-mixed-platforms-wasm/

#Docker #Compose #Wasm #Advanced

6 3 1 0
main changes in the main docker-compose file of CVAT: deleted configurations of postgres (cvat_db) and redis containers; environment variables for connection to postgres went to the main anchor (where variables are gathered to avoid repeating) and on this level CVAT_ was added to them. apparently, as I made the conclusion from logs - to override the default connection config, which was adjusted for server and DB created by the postgres instance from the container, that I deleted

main changes in the main docker-compose file of CVAT: deleted configurations of postgres (cvat_db) and redis containers; environment variables for connection to postgres went to the main anchor (where variables are gathered to avoid repeating) and on this level CVAT_ was added to them. apparently, as I made the conclusion from logs - to override the default connection config, which was adjusted for server and DB created by the postgres instance from the container, that I deleted

more changes for the CVAT docker compose file, that's its end. of course removed the volumes related to unnecessary containers too, and this extra_hosts section I added to all the rest of containers, just in case

more changes for the CVAT docker compose file, that's its end. of course removed the volumes related to unnecessary containers too, and this extra_hosts section I added to all the rest of containers, just in case

successfully logged in and started using CVAT, though so far i dunno what to do with it next but thats another story :D more details on how I was setting this up - in the post right below

successfully logged in and started using CVAT, though so far i dunno what to do with it next but thats another story :D more details on how I was setting this up - in the post right below

today I had to use CVAT (data segmentation program) which is launched with docker compose

the docker compose included postgresql and redis

which I both already have

so I removed their config from the file and connected the rest outwards

(1/2)

#devops #docker #compose #containers #software

1 0 1 0
Docker Compose Tip #48: Network debugging with docker compose port Find out which host port maps to a container port with docker compose port

🐳 🐙 Docker Compose Tip #48

Which host port maps to your container?

docker compose port web 80
→ 0.0.0.0:8080

Works with scaled services too — use --index!

Guide: lours.me/posts/compose-tip-048-network-debugging-port/

#Docker #Compose #Debugging #Networking

4 2 2 1
Docker Compose Tip #47: Sidecar container patterns Use sidecar containers to add capabilities without modifying your main application

🐳 🐙 Docker Compose Tip #47

Sidecars with Compose-native features!

network_mode: service:app # Share network
volumes_from: app:ro # Share volumes

TLS proxy, log forwarding, pod-like patterns.

Guide: lours.me/posts/compose-tip-047-sidecar-patterns/

#Docker #Compose #Architecture #Patterns

4 2 0 0
Post image

Как автор книг по Kotlin проверял мой проект: разбор ошибок в Coroutines и архитектуре Проведя аудит GitHub, я обнаружи...

#Android #Kotlin #Coroutines #Jetpack #Compose #AI #Gemini #AI #Structured #Concurrency #Проектирование

Origin | Interest | Match

0 0 0 0
Docker Compose Tip #46: Build args vs environment variables Understand the difference between build-time args and runtime environment variables

🐙 Docker Compose Tip #46

Build args vs env vars: different times, different jobs!

build.args → build time only (ARG)
environment → runtime only (ENV)

Don't mix them up! And never put secrets in build args.

Guide: lours.me/posts/compose-tip-046-build-args-vs-env/

#Docker #Compose #Configuration

2 4 0 0
Preview
Meet FlexBox: The Powerful New Layout System for Compose Jetpack Compose continues to evolve, and with the introduction of the new FlexBox layout, we finally have a powerful, flexible way to…

🧱 𝐂𝐨𝐦𝐩𝐨𝐬𝐞 𝐣𝐮𝐬𝐭 𝐠𝐨𝐭 𝐦𝐨𝐫𝐞 𝐟𝐥𝐞𝐱𝐢𝐛𝐥𝐞!

📝 I just published 𝗠𝗲𝗲𝘁 𝗙𝗹𝗲𝘅𝗕𝗼𝘅: 𝗧𝗵𝗲 𝗣𝗼𝘄𝗲𝗿𝗳𝘂𝗹 𝗡𝗲𝘄 𝗟𝗮𝘆𝗼𝘂𝘁 𝗦𝘆𝘀𝘁𝗲𝗺 𝗳𝗼𝗿 𝗖𝗼𝗺𝗽𝗼𝘀𝗲 ✨

🔗 navczydev.medium.com/meet-flexbox...

#JetpackCompose #Android #AndroidDev #Kotlin #Compose #FlexBox #GDE

3 0 0 0

🐳 🐙 Docker Compose Tip #45

One Dockerfile, multiple targets!

build:
context: .
target: dev # or production

Different images for dev and prod from the same file.

Guide: lours.me/posts/compose-tip-045-multi-stage-target/

#Docker #Compose #Build #DevOps

11 6 0 1
Preview
Release 1.11.0-beta01 · JetBrains/compose-multiplatform Changes since 1.11.0-alpha04 Breaking Changes iOS Dialog and Popup container views are now located on a system transition view above the root view controller, but below modally presented view cont...

🚀 Compose Multiplatform 1.11.0-beta01

Major iOS fixes + overall stability improvements across platforms.

⚠️ Breaking: popup/dialog layering change on iOS

🔗 github.com/JetBrains/co...

#Kotlin #Compose #Multiplatform #AndroidDev #iOSDev

2 0 0 0
Post image

🚀 AndroidX updates — March 25, 2026

New releases across Compose, Navigation, Room, Wear, Camera, XR & more.

Take a look:
developer.android.com/jetpack/andr...

#AndroidDev #AndroidX #Jetpack #Compose #Android #Kotlin

0 0 0 0
Docker Compose Tip #44: Signal handling in containers Control how your containers receive and handle stop signals for graceful shutdowns

🐳 🐙 Docker Compose Tip #44

Graceful shutdowns need the right signal!

```
stop_signal: SIGQUIT
stop_grace_period: 30s
init: true
```

Control what happens when you stop.

Guide: lours.me/posts/compose-tip-044-signal-handling/

#Docker #Compose #Runtime #Containers

4 2 5 0
Docker Compose Tip #43: Read-only root filesystems Harden your containers by making the root filesystem read-only

🐳 🐙 Docker Compose Tip #43

Harden containers in one line!

read_only: true
tmpfs:
- /tmp:size=50M

Immutable filesystem + writable only where needed.

Guide: lours.me/posts/compose-tip-043-read-only-rootfs/

#Docker #Compose #Security #Containers

10 6 8 0
Docker Compose Tip #42: Variable substitution and defaults Use variable substitution with defaults, required values, and error messages in Compose files

🐳 🐙 Docker Compose Tip #42

Smart variable substitution!

${TAG:-latest} # default value
${TAG:?required} # fail if missing

Flexible configs with safety built in.

Guide: lours.me/posts/compose-tip-042-variable-substitution/

#Docker #Compose #Configuration #DevOps

13 7 1 1
Preview
Release 1.10.3 · JetBrains/compose-multiplatform Changes since 1.10.2 Fixes Multiple Platforms Remove check for arbitrary transforms in Matrix conversions due to incorrect detection of regular rotation. Now the behaviour is aligned with Android ...

Compose Multiplatform v1.10.3 is out 🚀

Better matrix transform handling + library updates.

Full released notes:
github.com/JetBrains/co...

#Kotlin #Compose #Multiplatform #AndroidDev #Android

0 0 0 0
Preview
Python Docker Environment Setup & application development Data Analysis & Software Architecture Projects for £2-5 GBP / hour. I need a Python developer to help me containerise a local development environment with Docker on a Win



#Automation #Data #Analysis #Docker #Docker #Compose #Linux #OpenClaw #Python #Software #Architecture

Origin | Interest | Match

0 0 0 0
Docker Compose Tip #41: Container lifecycle hooks Run commands at specific points in a container's lifecycle with post_start and pre_stop hooks

🐳 🐙 Docker Compose Tip #41

Run commands at container lifecycle events!

post_start:
- command: /app/init.sh
pre_stop:
- command: /app/drain.sh

Init after start, cleanup before stop.

Guide: lours.me/posts/compose-tip-041-lifecycle-hooks/

#Docker #Compose #Runtime #Containers

5 1 2 0

🐳 🐙 Docker Compose Tip #40

Labels cost nothing but unlock a lot!

labels:
com.example.team: "backend"
com.example.env: "production"

Filter, organize, integrate with Traefik & Prometheus.

Guide: lours.me/posts/compose-tip-040-labels/

#Docker #Compose #Configuration #Monitoring

4 3 1 0

Chromogène de la chatte

Un chromogène est un composé chimique qui, lorsqu'il est exposé à une certaine condition, produit une couleur visible. Ces substances sont souvent utilisées en chimie et en biologie pour des tests de détection. #Chromogene #Compose #Couleur #Chimie #Biologie

0 0 0 0
Post image

Как я пытался чинить анимацию в Jetpack Compose LazyColumn Привет, Хабр! Я Витя Стро е ску, последние пять лет в свободное...

#android #android #development #kotlin #compose #jetpack #compose #lazycolumn #animations #expand #collapse

Origin | Interest | Match

0 0 0 0
Preview
Embedded Android Photo Picker in Jetpack Compose The embedded photo picker is not “a custom gallery UI.” It is the system photo picker rendered inside your UI hierarchy, with the same security and privacy properties as the classic picker, because the system draws it into a dedicated `SurfaceView` (internally attached via `SurfaceView.setChildSurfacePackage`). That architectural choice is what unlocks the core product shift: the user stays in _your_ screen while browsing and selecting, and your app can react to selection updates in real time because your activity remains resumed. The embedded picker is currently supported on **Android 14 (API 34) devices with SDK Extensions 15+**. On devices that don’t meet that bar, Android’s guidance is to rely on the classic photo picker (including backported availability via Google Play services where applicable). Here is a minimal availability helper you can keep near your UI entrypoint: import android.os.Build import android.os.ext.SdkExtensions fun isEmbeddedPhotoPickerAvailable(): Boolean { // Embedded picker requires Android 14+ anyway. if (Build.VERSION.SDK_INT < 34) return false // SDK Extensions are the actual gate for embedded support. return SdkExtensions.getExtensionVersion(Build.VERSION_CODES.UPSIDE_DOWN_CAKE) >= 15 } ## Compose integration The Jetpack integration for embedded is shipped as `androidx.photopicker`, with a Compose artifact (`photopicker-compose`). dependencies { implementation("androidx.photopicker:photopicker-compose:1.0.0-alpha01") } The Compose entrypoint is the `EmbeddedPhotoPicker` composable and a state holder created via `rememberEmbeddedPhotoPickerState`. The official docs describe the composable as creating a `SurfaceView`, managing the service connection, and plumbing selected URIs back via callbacks. You minSdk has to be at least 34. Below is a Compose-first scaffold that keeps the picker logic isolated and makes the rest of the screen testable. The key points are: keep selected URIs in your own state, let the picker grant/revoke URI permissions through callbacks, and explicitly inform the picker when your container expands/collapses. import android.net.Uri import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.* import androidx.compose.foundation.lazy.grid.GridCells import androidx.compose.foundation.lazy.grid.LazyVerticalGrid import androidx.compose.foundation.lazy.grid.items import androidx.compose.material3.* import androidx.compose.runtime.* import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import kotlinx.coroutines.launch @OptIn(ExperimentalMaterial3Api::class) @Composable fun EmbeddedPickerHost( maxSelection: Int = 5, onDone: (List<Uri>) -> Unit, ) { var attachments by remember { mutableStateOf(emptyList<Uri>()) } val scope = rememberCoroutineScope() val sheetState = rememberBottomSheetScaffoldState( bottomSheetState = rememberStandardBottomSheetState( initialValue = SheetValue.Hidden, skipHiddenState = false ) ) // Feature configuration is explicit in the embedded picker sample: // max limit + ordered selection + accent color. // Keep this object stable. val featureInfo = remember { EmbeddedPhotoPickerFeatureInfo.Builder() .setMaxSelectionLimit(maxSelection) .setOrderedSelection(true) .build() } val pickerState = rememberEmbeddedPhotoPickerState( onSelectionComplete = { scope.launch { sheetState.bottomSheetState.hide() } onDone(attachments) }, onUriPermissionGranted = { granted -> attachments = attachments + granted }, onUriPermissionRevoked = { revoked -> attachments = attachments - revoked.toSet() } ) // Keep picker expansion in sync with the container. SideEffect { val expanded = sheetState.bottomSheetState.targetValue == SheetValue.Expanded pickerState.setCurrentExpanded(expanded) } BottomSheetScaffold( scaffoldState = sheetState, sheetPeekHeight = if (sheetState.bottomSheetState.isVisible) 400.dp else 0.dp, sheetContent = { // Dedicated picker surface area. EmbeddedPhotoPicker( modifier = Modifier .fillMaxWidth() .heightIn(min = 240.dp), state = pickerState, embeddedPhotoPickerFeatureInfo = featureInfo ) }, topBar = { TopAppBar(title = { Text("Composer") }) } ) { innerPadding -> Column(Modifier.padding(innerPadding).padding(16.dp)) { Row(horizontalArrangement = Arrangement.spacedBy(12.dp)) { Button(onClick = { scope.launch { sheetState.bottomSheetState.partialExpand() } }) { Text("Add from gallery") } Button( enabled = attachments.isNotEmpty(), onClick = { onDone(attachments) } ) { Text("Send") } } Spacer(Modifier.height(16.dp)) // Your own attachment UI is separate from the picker surface. LazyVerticalGrid( columns = GridCells.Adaptive(minSize = 88.dp), verticalArrangement = Arrangement.spacedBy(8.dp), horizontalArrangement = Arrangement.spacedBy(8.dp), ) { items(attachments) { uri -> AttachmentTile( uri = uri, onRemove = { scope.launch { // Inform the picker that the host UI removed something. pickerState.deselectUri(uri) // Keep host state consistent (deselectUri won't auto-update your list). attachments = attachments - uri } } ) } } } } } @Composable private fun AttachmentTile( uri: Uri, onRemove: () -> Unit ) { // Replace with your image loader. Keep it simple here. Surface( tonalElevation = 2.dp, modifier = Modifier .size(88.dp) .clickable { onRemove() } ) { /* preview */ } } Everything in this skeleton is aligned with the platform guidance: embedded picker is intended to sit inside your UI, selection changes are continuous, and the API surface is built around permission grants/revocations for content URIs instead of broad media permissions. ## Selection synchronization, URI lifetimes, and background work The embedded picker UX is at its best when your host UI and the picker behave like a single selection model. Android’s embedded picker docs call this out explicitly: when a user deselects in _your_ UI, you should notify the picker via `deselectUri` / `deselectUris`. There’s a crucial gotcha: these calls do not automatically trigger your `onUriPermissionRevoked` callback, so you must update your own state explicitly. That behavior is not accidental. It forces you to define ownership: the picker owns what is selectable; your app owns how selection is represented and persisted in your UI. In a messaging composer, the picker is a panel, not the source of truth. The other non-obvious “this will bite you later” concern is URI access lifetime. For the photo picker in general, Android documents that access is granted until the device restarts or until your app stops, and you can persist access longer by calling `takePersistableUriPermission()`. If your UX lets users queue uploads or drafts, this matters immediately. Be aware of the platform cap: Android notes that an app can have up to 5,000 media grants at a time, after which older grants are evicted. That is high enough for typical consumer flows, but it is relevant for apps that treat the picker as an ingestion pipeline. On the test side, the `androidx.photopicker` has a dedicated testing artifact and a `TestEmbeddedPhotoPickerProvider` to support testing flows that rely on the embedded picker. Photo by Ruben Mavarez on Unsplash ### Share this: * Share on X (Opens in new window) X * Share on Reddit (Opens in new window) Reddit * Share on LinkedIn (Opens in new window) LinkedIn * ### _Discover More_

Embedded Android Photo Picker in Jetpack Compose The embedded photo picker is not “a custom gallery UI.” It is the system photo picker rendered inside your UI hierarchy, with the same security ...

#Technology #android #jetpack #compose #kotlin

Origin | Interest | Match

0 0 0 0

🐳 🐙 Docker Compose Tip #37

3 ways to split Compose configs, each works differently!

Override files → project-level merge
extends → service-level inheritance
include → isolated sub-project import

Guide: lours.me/posts/compose-tip-037-include-extends-overrides/

#Docker #Configuration #Compose

7 5 1 0

Chlorhydrate de la chatte

Le chlorhydrate est un composé chimique, souvent utilisé comme sel pour faciliter la solubilité, notamment dans le domaine pharmaceutique. #Chlorhydrate #Compose #Chimique #Solubilité #Pharmaceutique

0 0 0 0

🐳 🐙 Docker Compose tip week starts tomorrow!

This week: a deep dive into managing multiple Compose files.

include, extends, override files — 3 mechanisms that look similar but work very differently.

3 tips, Mon/Wed/Fri. See you tomorrow!

#Docker #Compose #DockerCompose #DevOps

6 4 0 0
Post image

Todo Budget v5.0: переписал весь UI с нуля на Jetpack Compose — и теперь ищу тех, кто его сломает До пятой версии главный экр...

#котлин #мобильная #разработка #приложения #для #android #андроид #kotlin #jetpack #compose #android

Origin | Interest | Match

0 0 0 0
Post image

Todo Budget v5.0: переписал весь UI с нуля на Jetpack Compose — и теперь ищу тех, кто его сломает До пятой версии главный экр...

#котлин #мобильная #разработка #приложения #для #android #андроид #kotlin #jetpack #compose #android

Origin | Interest | Match

0 0 0 0
Post image

How to Use Docker Compose for Production Workloads — with Profiles, Watch Mode, and GPU Support There's a perception problem with Docker Compose. Ask a room full of platform engineers what th...

#Docker #Docker #compose #containers

Origin | Interest | Match

0 0 0 0
Docker Compose Tip #36: Using extra_hosts for custom DNS entries Add custom hostname mappings without modifying system hosts file

🐳 🐙 Docker Compose Tip #36

Custom DNS without touching /etc/hosts!

extra_hosts:
- "api.local:192.168.1.100"
- "host.docker:host-gateway"

Perfect for local development!

Learn: lours.me/posts/compose-tip-036-extra-hosts/

#Docker #Compose #Networking #DNS

7 6 1 0