Weekly Weather 3 gave the app a radar map. 4.0 is the biggest update it has had: the weather card became four pages you swipe through, from the weather now to tonight’s sky, and the map got a rain forecast, labels for every city and a layer for dark skies. It went to Google Play today.
There are a hundred “what I self-host” posts out there, and most of them are a list of apps. Mine runs a lot of the same apps, so the list isn’t the interesting part. What’s different is how it’s put together and how it’s run:
- Two machines with different jobs. A cloud droplet for everything public, a mini PC at home for everything private.
- Nothing at home is reachable from the internet. Not even Jellyfin. No port forwards at all.
- The whole setup lives in one git repo, and I run it day to day with Claude Code as a co-admin, with guardrails.
sBrowser started life as a teaching app for a workshop at 091 Labs: a WebView, an address bar and a few buttons. It grew bookmarks, an ad blocker and a video player over the years, was rewritten in Kotlin and Jetpack Compose in January 2024 (3.x), and 4.4 shipped in March this year. When Google Play’s new rule to target Android 16 (API 36) came due, I sat down to bump a number and ended up rebuilding most of it. sBrowser 5.0 went to Google Play for review today.
Hyperliquid is an on-chain exchange for perpetuals and spot that feels like a centralised one: an order book, sub-second fills and a public API for everything. Its website works on a phone if you’re patient, but I wanted a real app in my pocket. So in March I started Hyprr, a native client for it. It’s been on Google Play since the end of June, and version 1.1.1 went out today.
Years ago I found out that the Spanish Ministry publishes the price of every petrol station in the country as open data, updated live. I started an app around it, got as far as a list of stations, and left it in a folder. This month I picked it up again with a better question: not “where is fuel cheap?” but “where along the way I’m already driving does it actually pay to stop?” The result is Gas On Route, now waiting for review on Google Play.
If you maintain shared libraries across multiple Android or Kotlin Multiplatform projects, you’ve probably considered publishing them to a Maven repository. Maven Central works, but the publishing process is heavy — GPG signing, Sonatype staging, approval delays. For private or small-scale libraries, that’s overkill. If you already self-host a Git server like Gitea or Gogs, you can use it as a Maven repository with zero additional infrastructure.
Umami is a great privacy-focused, self-hosted alternative to Google Analytics. But its documentation assumes you’re tracking a website. If you want to use it in a mobile app, the docs point you toward embedding a WebView — which is clunky, adds overhead, and feels wrong for native apps. There’s a better way: hit the Umami API directly.
FreqDroid 1.2 is out with two notification upgrades: a new in-app notification history screen and support for rich exit notifications via FreqTrade’s strategy callback — giving you Telegram-style trade alerts without Telegram.
Version 3 of Weekly Weather is out, and it’s a significant update. The headline addition is an interactive radar map with animated precipitation overlays, but there’s a lot more packed into this release.
How ClaudeBot brought my Gogs server to its knees and taught me about the hidden costs of the AI gold rush
Today I want to share how I built a complete cryptocurrency mining monitoring app in just one day, from initial concept to Google Play Store submission, using Cursor as my IDE.
When ChatGPT was released on November 30, 2022, few of us understood how dramatically it would transform the software development landscape. As someone who’s worked through this transition, I’ve witnessed firsthand the remarkable shift in how we approach coding and problem-solving.
You can move the /home folder on Ubuntu, but you must do it carefully to avoid breaking your system. Below are the steps to safely move /home to a new location.
Introduction
In the ever-evolving world of mobile app development, choosing the right cross-platform framework can be a game-changer for businesses and developers alike. Two prominent contenders in this space are React Native and Kotlin Multiplatform (KMP). Both offer unique approaches to the challenge of writing code once and deploying it across multiple platforms. This article will dive deep into the strengths and considerations of each, helping you make an informed decision for your next project.
Model-View-Intent (MVI) is a powerful architectural pattern for building user interfaces, especially in Android development. In this post, we’ll explore a helper class that simplifies the implementation of MVI, making it easier to manage state, handle user intents, and emit actions in your application.
As developers, we’ve all been there. You’ve added a file or folder to your .gitignore, but Git keeps tracking it anyway. What gives? Let’s dive into why this happens and how to fix it.
When working with Git repositories, you often need to authenticate using SSH keys. While you can configure SSH settings globally, there are times when you need to use a specific SSH key for just one command. This is particularly useful when cloning a new repository or adding a submodule, where there isn’t yet a local .git/config file to modify.