# rainbow

Published articles for rainbow.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Shipyard 2025: IPFS Year in Review

DevFeed: [Shipyard 2025: IPFS Year in Review](<https://devfeed.tech/articles/shipyard-2025-ipfs-year-in-review-35645.md>)

Original publisher: [Read original article](<https://ipshipyard.com/blog/2025-shipyard-ipfs-year-in-review/>)

Author: lidel; Shipyard

Published: 2025-12-19T00:00:00Z

Content type: article

Language: en

Sources: [IPFS](<https://devfeed.tech/sources/ipfs.md>)

Topics: [IPFS](<https://devfeed.tech/topics/ipfs.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [releases](<https://devfeed.tech/topics/releases.md>), [browser](<https://devfeed.tech/topics/browser.md>), [HTTP](<https://devfeed.tech/topics/http.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [boxo](<https://devfeed.tech/tags/boxo.md>), [browser](<https://devfeed.tech/tags/browser.md>), [decentralized](<https://devfeed.tech/tags/decentralized.md>), [dht](<https://devfeed.tech/tags/dht.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [dweb](<https://devfeed.tech/tags/dweb.md>), [ecosystem](<https://devfeed.tech/tags/ecosystem.md>), [helia](<https://devfeed.tech/tags/helia.md>), [http](<https://devfeed.tech/tags/http.md>), [ipfs](<https://devfeed.tech/tags/ipfs.md>), [kubo](<https://devfeed.tech/tags/kubo.md>), [libp2p](<https://devfeed.tech/tags/libp2p.md>), [p2p](<https://devfeed.tech/tags/p2p.md>), [peer-to-peer](<https://devfeed.tech/tags/peer-to-peer.md>), [rainbow](<https://devfeed.tech/tags/rainbow.md>), [releases](<https://devfeed.tech/tags/releases.md>), [review](<https://devfeed.tech/tags/review.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [storage](<https://devfeed.tech/tags/storage.md>), [web](<https://devfeed.tech/tags/web.md>), [web3](<https://devfeed.tech/tags/web3.md>), [year-in-review](<https://devfeed.tech/tags/year-in-review.md>)

### AI overview

A review of IPFS developments in 2025, highlighting seven Kubo releases and related ecosystem updates. It focuses on DHT Provide Sweep, AutoTLS, HTTP retrieval, and Helia-based browser retrieval as improvements for self-hosted nodes and trustless access.

### Source excerpt

Seven Kubo releases made self-hosted IPFS practical. Highlights: DHT Provide Sweep, AutoTLS, HTTP retrieval, and Helia for trustless browser retrieval.

## Provide Sweep: Solving the DHT Bottleneck for Self-Hosting IPFS at Scale

DevFeed: [Provide Sweep: Solving the DHT Bottleneck for Self-Hosting IPFS at Scale](<https://devfeed.tech/articles/provide-sweep-solving-the-dht-bottleneck-for-self-hosting-ipfs-at-scale-35644.md>)

Original publisher: [Read original article](<https://ipshipyard.com/blog/2025-dht-provide-sweep/>)

Author: guillaumemichel; Shipyard

Published: 2025-11-26T00:00:00Z

Content type: article

Language: en

Sources: [IPFS](<https://devfeed.tech/sources/ipfs.md>)

Topics: [IPFS](<https://devfeed.tech/topics/ipfs.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>)

Tags: [boxo](<https://devfeed.tech/tags/boxo.md>), [decentralized](<https://devfeed.tech/tags/decentralized.md>), [dht](<https://devfeed.tech/tags/dht.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [dweb](<https://devfeed.tech/tags/dweb.md>), [ecosystem](<https://devfeed.tech/tags/ecosystem.md>), [helia](<https://devfeed.tech/tags/helia.md>), [ipfs](<https://devfeed.tech/tags/ipfs.md>), [kubo](<https://devfeed.tech/tags/kubo.md>), [libp2p](<https://devfeed.tech/tags/libp2p.md>), [p2p](<https://devfeed.tech/tags/p2p.md>), [peer-to-peer](<https://devfeed.tech/tags/peer-to-peer.md>), [performance](<https://devfeed.tech/tags/performance.md>), [rainbow](<https://devfeed.tech/tags/rainbow.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [routing](<https://devfeed.tech/tags/routing.md>), [scale](<https://devfeed.tech/tags/scale.md>), [self-hosting](<https://devfeed.tech/tags/self-hosting.md>), [storage](<https://devfeed.tech/tags/storage.md>), [web](<https://devfeed.tech/tags/web.md>), [web3](<https://devfeed.tech/tags/web3.md>)

### AI overview

This article explains how Kubo v0.39's Provide Sweep becomes the default provider system for IPFS. By batching CIDs associated with the same DHT servers and systematically sweeping keyspace regions, it reports a 97% reduction in DHT lookups for a node providing 100,000 CIDs, alongside smart resume capabilities and memory optimizations.

### Source excerpt

Provide Sweep: Solving the DHT Bottleneck for Self-Hosting IPFS at Scale

## Animating Rainbow Text

DevFeed: [Animating Rainbow Text](<https://devfeed.tech/articles/animating-rainbow-text-32036.md>)

Original publisher: [Read original article](<https://www.maiatoday.net/p/animating-rainbow-text/>)

Published: 2021-06-26T22:13:10Z

Content type: tutorial

Language: en

Sources: [maiatoday](<https://devfeed.tech/sources/maiatoday.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [color](<https://devfeed.tech/topics/color.md>), [Font](<https://devfeed.tech/topics/font.md>), [Website](<https://devfeed.tech/topics/website.md>)

Tags: [90s-website](<https://devfeed.tech/tags/90s-website.md>), [animate](<https://devfeed.tech/tags/animate.md>), [animation](<https://devfeed.tech/tags/animation.md>), [code](<https://devfeed.tech/tags/code.md>), [color](<https://devfeed.tech/tags/color.md>), [compose](<https://devfeed.tech/tags/compose.md>), [jetpack](<https://devfeed.tech/tags/jetpack.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [rainbow](<https://devfeed.tech/tags/rainbow.md>), [recompose](<https://devfeed.tech/tags/recompose.md>), [repo](<https://devfeed.tech/tags/repo.md>), [test](<https://devfeed.tech/tags/test.md>), [typography](<https://devfeed.tech/tags/typography.md>)

### AI overview

A tutorial on building animated rainbow text with Jetpack Compose. It covers custom colors and typography, per-character coloring, continuous transitions, keyframes, and staggered animations, with a test screen and source repository.

### Source excerpt

Do you remember web pages in the nineties? Everything was pulsing, rotating and animating. I am exploring Jetpack Compose animations and I figured if I can reproduce a 90s web page look, I can do anything. Also June is the month of Rainbows. So to kick off this series I am building animating rainbow text. First I need a rainbow. It needs to be flexible enough for me to be able to swap in any rainbow. val RainbowRed = Color(0xFFDA034E) val RainbowOrange = Color(0xFFFF9800) val RainbowYellow = Color(0xFFFFEB3B) val RainbowGreen = Color(0xFF4CAF50) val RainbowBlue = Color(0xFF2196F3) val RainbowIndigo = Color(0xFF3F51B5) val RainbowViolet = Color(0xFF9C27B0) val SkittlesRainbow = listOf( RainbowRed, RainbowOrange, RainbowYellow, RainbowGreen, RainbowBlue, RainbowIndigo, RainbowViolet ) Since web pages in the nineties used Times New Roman and Helvetica, I added a free version of a serif font. I chose Source Serif. I included the ttf files in the project and made a FontFamily and hooked this into the theme. val SourceSerif = FontFamily( Font(R.font.source_serif_pro_regular), Font(R.font.source_serif_pro_bold, FontWeight.Bold), Font(R.font.source_serif_pro_light, FontWeight.Light), Font(R.font.source_serif_pro_black, FontWeight.Black), Font(R.font.source_serif_pro_extra_light, FontWeight.ExtraLight), ) val Typography = Typography(defaultFontFamily = SourceSerif) MaterialTheme( colors = colors, typography = Typography, shapes = Shapes, content = content ) Next I made a composable that would colour each letter of a string. This simple composable took as many text parameters in and then split the string colouring each character to the colour of the rainbow in the parameter. The startColor index is used to pick which colour the first letter will be. @Composable fun MultiColorText( modifier: Modifier = Modifier, text: String, style: TextStyle = LocalTextStyle.current, rainbow: List<Color> = SkittlesRainbow, startColor: Int = 0, ) { Row(modifier) { var index = startColor for (l

## Building a Pride Rainbow Easter Egg into the Over Android App 🏳🌈

DevFeed: [Building a Pride Rainbow Easter Egg into the Over Android App 🏳🌈](<https://devfeed.tech/articles/building-a-pride-rainbow-easter-egg-into-the-over-android-app-27882.md>)

Original publisher: [Read original article](<https://riggaroo.dev/building-a-pride-rainbow-easter-egg-into-the-over-android-app/>)

Author: Rebecca Franks

Published: 2021-06-13T09:39:08Z

Content type: tutorial

Language: en

Sources: [Rebecca Franks - @riggaroo](<https://devfeed.tech/sources/rebecca-franks-riggaroo.md>)

Topics: [OpenGL](<https://devfeed.tech/topics/opengl.md>), [Android](<https://devfeed.tech/topics/android.md>), [glsl](<https://devfeed.tech/topics/glsl.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [render](<https://devfeed.tech/topics/render.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [glsl](<https://devfeed.tech/tags/glsl.md>), [guide](<https://devfeed.tech/tags/guide.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [opengl](<https://devfeed.tech/tags/opengl.md>), [pride](<https://devfeed.tech/tags/pride.md>), [rainbow](<https://devfeed.tech/tags/rainbow.md>), [render](<https://devfeed.tech/tags/render.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial explains how the Over Android app implements a Pride-themed Easter egg: text containing selected LGBTQ+ terms changes a text-layer outline into an animated rainbow. It focuses on rendering the gradient bounding box with OpenGL, Android SurfaceView, and GLSL shaders.

### Source excerpt

This post originally appeared here on the GoDaddy Engineering blog. The Over App is a playground for creating beautiful content for social media. As developers on the app, we are often inspired by the pictures and videos that our users make. To inspire our users a bit more, we decided to create a small easter [...] The post Building a Pride Rainbow Easter Egg into the Over Android App 🏳🌈 appeared first on Rebecca Franks - @riggaroo.

## Hybrid Rainbow DB

DevFeed: [Hybrid Rainbow DB](<https://devfeed.tech/articles/hybrid-rainbow-db-27552.md>)

Original publisher: [Read original article](<https://gagor.pro/2012/11/hybrid-rainbow-db/>)

Author: Tom

Published: 2012-11-07T00:00:00Z

Content type: article

Language: pl

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [hash](<https://devfeed.tech/topics/hash.md>), [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [hash](<https://devfeed.tech/tags/hash.md>), [rainbow](<https://devfeed.tech/tags/rainbow.md>), [rainbow-tables](<https://devfeed.tech/tags/rainbow-tables.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

The article discusses hybrid rainbow tables for password-hash recovery. It explains that conventional tables can suffer from collisions and generate many effectively random candidate passwords, while hybrid reduction functions generate candidates based on likely human password patterns such as dictionary words with capitalization or trailing digits.

### Source excerpt

Jakiś czas temu napisałem swoją własną tęczową tablicę i odkąd zainteresowałem się tym tematem zastanawiałem się jak jeszcze bardziej usprawnić tę aplikację. Testowałem różne długości łańcuchów i zauważyłem że zwiększanie długości łańcucha bardzo szybko powoduje znaczne zwiększenie ilości kolizji, co drastycznie obniżało wydajność (nie wspominając o czasie potrzebnym na wygenerowanie całej tablicy). Z tego powodu ostateczna implementacja choć była rzeczywiście tęczową tablicą działała bardziej jak tablica hashy - bo łańcuchy były bardzo krótkie. Ponadto ze statystyk wynikało że bardzo rzadko hasła były odzyskiwane ze środka łańcucha - zdecydowana większość trafień pochodziła z pierwszego hasła w łańcuchu. Pierwsze hasło było przeważnie słownikowe, plus czasem jakiś dodatek w postaci cyfry/zmienionej wielkości liter, itp. Pozostałe hasła w łańcuchu były praktycznie losowe.

## RainbowDB: A Password Hash Lookup Database Using Rainbow Tables

DevFeed: [RainbowDB: A Password Hash Lookup Database Using Rainbow Tables](<https://devfeed.tech/articles/rainbowdb-27490.md>)

Original publisher: [Read original article](<https://gagor.pro/2011/08/rainbowdb/>)

Author: Tom

Published: 2011-08-27T00:00:00Z

Content type: article

Language: pl

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [rainbow](<https://devfeed.tech/tags/rainbow.md>), [rainbow-tables](<https://devfeed.tech/tags/rainbow-tables.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

The author describes RainbowDB, a database containing password candidates and chains generated from their hashes using rainbow-table techniques. It reportedly contained more than 200 million passwords with chains of length 10 and could query other hash databases when its own database failed to recognize a hash. The site was later replaced by Hybrid Rainbow DB.

### Source excerpt

Pewnego popołudnia przeczytałem artykuł o tęczowych tabelach i pod jego wpływem zacząłem kombinować jak zrobić coś takiego ale swojego. Do bazy wrzuciłem cały słownik z aspell'a dla języka polskiego (słowa z ogonkami i bez), angielskiego, kilka słowników z popularnymi hasłami, długą listę haseł z yourock i kilka innych. Sporo się nakombinowałem aby wygenerować dużo kombinacji szczególnie pod kątem polskich haseł (wszystkie: misiaczki, dupeczki, itp...) razem z różnymi popularnymi modyfikacjami (typu: misiaczki1, DUPECZKI, etc...). Na tym etapie miałem już wystarczająco dużo haseł aby bawić się dalej.