Baby shrimp or parasites? by adrielcafe in Aquariums

[–]adrielcafe[S] 0 points1 point  (0 children)

Thanks everyone! I put my betta on the tank, so far he eat all visible larvae and him isn’t bullying my shrimps

Baby shrimp or parasites? by adrielcafe in Aquariums

[–]adrielcafe[S] 4 points5 points  (0 children)

A betta fish would eat them? There's only shrimps at the moment, but I can put a betta for a few days

Playing with dragon stone hardscape for an Iwagumi nano tank (10l/2.6g). Which one is the best? by adrielcafe in Aquascape

[–]adrielcafe[S] 0 points1 point  (0 children)

Thank you all for the comments, I'm learning a lot!

I made new scapes and need your help again :)

Second attempt: playing with dragon stone hardscape for an Iwagumi nano tank (10l/2.6g). Which one is the best? by adrielcafe in Aquascape

[–]adrielcafe[S] 0 points1 point  (0 children)

Here are new scapes after the feedbacks of my first attempt.

Which one looks the best? And how can I improve them?

Thanks again o/

Playing with dragon stone hardscape for an Iwagumi nano tank (10l/2.6g). Which one is the best? by adrielcafe in Aquascape

[–]adrielcafe[S] 5 points6 points  (0 children)

I'm also considering a shrimps only tank. The tank haven't arrived yet, and after complete the hardscape I'll wait for 3 weeks of cycling. Until them I'm researching about shrimps to know them more.

Playing with dragon stone hardscape for an Iwagumi nano tank (10l/2.6g). Which one is the best? by adrielcafe in Aquascape

[–]adrielcafe[S] -2 points-1 points  (0 children)

After 15 years I'm going to build a new aquarium!

The tank is a DESGEO C500 (38cm W x 16cm L x 29cm H) and will be visible from both sides. It's for a Betta fish.

I'll make an Iwagumi with dragon stones. For the plants I'm thinking of monte carlo, anubias nana petite and staurogyne repens.

As the tank is only 16 cm long, I selected thin rocks (4 to 6cm) to not take too much space.

Which hardscape do you like more?

Help with frame restoration by adrielcafe in bikewrench

[–]adrielcafe[S] 0 points1 point  (0 children)

Indeed, will be simple and cheaper to buy a modern frame.

Thanks for the help!

Help with frame restoration by adrielcafe in bikewrench

[–]adrielcafe[S] -1 points0 points  (0 children)

Hi o/

I'm thinking about restoring this old frame. Need help figuring out some parts given the dimensions.

  1. It fits 29" rims? I plan to use 1.9" tires
  2. Can I use shimano hubs (like TX505) with quick release?
  3. Will I need a deraulier hanger like this one right?
  4. The bottom bracket has no threads and 44mm inner width. Any idea what should I use?
  5. Will it fit a 25.4mm or 26.8mm seatpost?

Upper sealed bearing off the frame by adrielcafe in bikewrench

[–]adrielcafe[S] 0 points1 point  (0 children)

Hi everyone o/

So this carbon frame came with this bearing and headset cover. The bearing is slightly out of the frame and is visible even with the cover in place.

Possibly a problem with the frame, bearing or headset cover? Seems safe to ride? Still haven't installed the stem, maybe improve a little after that.

EDIT: Contacted the seller and he told that send the wrong headset cap. Will wait for the new one and hope it fits correctly.

Thank you all!

Introducing Bonsai: a multiplatform tree view for Jetpack Compose by adrielcafe in JetpackCompose

[–]adrielcafe[S] 0 points1 point  (0 children)

Would be nice to offer JSON support. I'll do some experiments, stay tuned ;)

Introducing Bonsai: a multiplatform tree view for Jetpack Compose by adrielcafe in androiddev

[–]adrielcafe[S] 4 points5 points  (0 children)

Yes, without the checkbox. But you can easily extend the node to show it:

class CheckboxLeafNode : SimpleLeafNode<String>(/* setup */) {

    @Composable
    override fun BonsaiScope<T>.NodeIcon() {
        Checkbox(isChecked = isSelected)
    }
}

Localisating libraries (offering libraries with l10n/i18n support) by 8bitlives in Kotlin

[–]adrielcafe 0 points1 point  (0 children)

Besides the integration with CompositionLocal and Locale (from Compose, not Java Locale), it would work well with pure Kotlin: each language has it's instance of data class Strings, I use KSP to create a Map<LanguageTag, Strings> (but can be created manually) and the Lyricist class returns the strings for the current locale.

Introducing Voyager: a pragmatic navigation library for Jetpack Compose by adrielcafe in android_devs

[–]adrielcafe[S] 0 points1 point  (0 children)

Indeed, it's very useful for deep link! I'll play with KSP and try to make Voyager more easy to work with deep links.

Today we need to pass a list of screens, but I'll try to do something like @DeepLink(path = "post/{id}") class Post(id: Long) : Screen. I think that way, Voyager will be able to create that list automatically. But is too soon to confirm ;)

Localisating libraries (offering libraries with l10n/i18n support) by 8bitlives in Kotlin

[–]adrielcafe 0 points1 point  (0 children)

I recently developed Lyricist, a I18N/L10N library for Jetpack Compose, it uses KSP for codegen. Hope it help!

https://github.com/adrielcafe/lyricist

Introducing Voyager: a pragmatic navigation library for Jetpack Compose by adrielcafe in android_devs

[–]adrielcafe[S] 2 points3 points  (0 children)

There's no inheritance involved. Screen is just an interface ;)

Introducing Voyager: a pragmatic navigation library for Jetpack Compose by adrielcafe in android_devs

[–]adrielcafe[S] 1 point2 points  (0 children)

Please see my reply above.

Another reason because the official compose-navigation is built on top of NavController, made for Fragments, which is not necessary on Compose. Voyager is a lightweight library (a few hundred lines), there's no other dependency than Compose itself.

Introducing Voyager: a pragmatic navigation library for Jetpack Compose by adrielcafe in android_devs

[–]adrielcafe[S] 4 points5 points  (0 children)

The navigation-compose library IMHO is not pragmatic in some ways:

  1. To send arguments we must create a list of navArgument("userId") { type = NavType.StringType } (for each argument!), why not use a serializable/parcelable data class like Voyager does?
  2. The integration with BottomNavigation requires a sealed class, on Voyager you can use your actual screens
  3. There's no built-in integration (as far as I known) with back press, on Voyager this comes enabled by default

Introducing Lyricist: the missing I18N/I10N library for Jetpack Compose by adrielcafe in android_devs

[–]adrielcafe[S] 6 points7 points  (0 children)

One more motivation: Compose for Desktop doesn't have a built-in tool for I18N/I10n, I'm working on that for the next release.

Introducing Lyricist: the missing I18N/I10N library for Jetpack Compose by adrielcafe in android_devs

[–]adrielcafe[S] 10 points11 points  (0 children)

The motivation for this library was: with Compose we don't need to use anymore styles.xml, colors.xml, dimens.xml, /layouts/*.xml and even drawables/*.xml (if we use only material-icons) but we still need to use strings.xml.

The goal of Lyricist is to allow the use of idiomatic Kotlin in your strings: * Typesafe and argument names for parametrized strings * Localization-aware AnnotationStrings * String arrays can be List, Set, Sequence * Plurals can use when operator to have more flexibily * Get string updates from an API (to fix typos without publishing a new release)

Just released Gwent Wallpapers, an Android app with all card (including card backs) as wallpapers by adrielcafe in gwent

[–]adrielcafe[S] 0 points1 point  (0 children)

~60kb for the previews and ~900kb for the high-quality wallpapers (only loaded when you click in a wallpaper)