
CommunityNews
In 2025, Apple still makes it hard to play your own MP3s, so I wrote my own app
In 2025, playing your own music on an iPhone is surprisingly hard, unless you pay Apple or navigate a maze of limitations. So I built my own player from scratch, with full text search, iCloud support, and a local-first experience. GitHub link
Why I Built My Own Audio Player Like many people, I’ve picked up too many subscriptions, some through Apple (iCloud, Apple Music), others got lost in random platforms (like Netflix, which I forgot I was still paying for). I actually used Apple Music regularly (and previously Spotify), but the streaming turned out to be more convenience than necessity. With a curated local library, I didn’t lose much, just the lock-in.
Read in full here:
Popular Ios topics

Introduction to structured concurrency in Swift: continuations, tasks, and cancellation
14 January, 2021
This article is a part of my se...
New

Structured concurrency is a new term for most Swift developers. This is an attempt to decipher its meaning.
New

Async await in Swift explained with code examples.
Async await in Swift allows to write asynchronous tasks with structured concurrency. ...
New

Tasks in Swift explained with code examples.
Tasks in Swift allow us to create an environment in which we can run async methods using aw...
New

How a Saudi woman’s iPhone revealed hacking around the world.
A single activist helped turn the tide against NSO Group, one of the world...
New

Core team to form language workgroup.
Moderator note: this post was originally in the light-weight same-type requirement syntax thread, ...
New

The impact of iOS 16 Lockdown mode in Safari.
A look at how the new iOS lockdown mode affects web performances and features.
New

Design the next iPhone.
Apple is running out of ideas and needs your help.
New

Swift was always going to be part of the OS.
Someone complained that putting Swift in the OS has only made things worse for developers. ...
New

How I transformed my old iPhone 8 into a solar-powered Vision OCR server using Apple’s native framework and an EcoFlow River 2 Pro. Runni...
New
Other popular topics
New

I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me.
I think the Planck and the Preonic (o...
New

In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first:
asdf plugin-upd...
New

A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New

Build efficient applications that exploit the unique benefits of a pure functional language, learning from an engineer who uses Haskell t...
New

Author Spotlight
Jamis Buck
@jamis
This month, we have the pleasure of spotlighting author Jamis Buck, who has written Mazes for Prog...
New

I am trying to crate a game for the Nintendo switch, I wanted to use Java as I am comfortable with that programming language. Can you use...
New

Author Spotlight
Rebecca Skinner
@RebeccaSkinner
Welcome to our latest author spotlight, where we sit down with Rebecca Skinner, auth...
New

Programming Ruby is the most complete book on Ruby, covering both the language itself and the standard library as well as commonly used t...
New

A Brief Review of the Minisforum V3 AMD Tablet.
Update: I have created an awesome-minisforum-v3 GitHub repository to list information fo...
New
Categories:
Sub Categories:
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /rails
- /js
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /emacs
- /haskell
- /java
- /onivim
- /svelte
- /typescript
- /crystal
- /kotlin
- /c-plus-plus
- /tailwind
- /gleam
- /ocaml
- /react
- /elm
- /flutter
- /vscode
- /ash
- /opensuse
- /centos
- /html
- /php
- /deepseek
- /zig
- /scala
- /textmate
- /lisp
- /sublime-text
- /nixos
- /debian
- /react-native
- /agda
- /kubuntu
- /arch-linux
- /revery
- /ubuntu
- /django
- /spring
- /manjaro
- /nodejs
- /diversity
- /lua
- /julia
- /c
- /slackware
- /markdown