KT

Aura

Open-source Zedge alternative — wallpapers, video wallpapers, ringtones, YouTube integration

KotlinAndroid
Delivery
Source-first
Browse code, README, and release notes on GitHub.
Primary lane
Kotlin / Android lane
The clearest adjacent context for this project inside the portfolio.
Freshness
Updated Jun 7, 2026
Latest release
v6.31.1
Published Jun 3, 2026

Preview

Using the generated project card as a clean fallback until a live capture is available.

Aura card

Source at github.com/SysAdminDoc/Aura.

README

Cached at build time, cleaned up for in-site reading, and linked back to the canonical GitHub source.

5 min read 940 words 10 sections
Contents
  1. What Makes Aura Different
  2. Quick Start
  3. Privacy
  4. Features
  5. Content Sources
  6. Architecture
  7. Tech Stack
  8. Building
  9. Contributing
  10. License

Aura

Aura

Version License Platform Kotlin Jetpack Compose

Open-source alternative to Zedge — wallpapers, video wallpapers, ringtones, and sounds for Android. YouTube integration, yt-dlp powered.

Aura Screenshot

What Makes Aura Different

  • Quality-ranked YouTube sounds — ringtones, notifications, and alarms use intent-specific YouTube searches with tight duration windows and cleaner result filtering.
  • Video wallpapers from multiple sources — browse Reddit, Pexels, Pixabay, and YouTube, import local videos/GIFs, then tune loop, crop, Fill, or Fit before applying.
  • Multi-source personalization — Wallhaven, Bing, Pexels, Pixabay, Reddit, YouTube, legacy Freesound attributions, and community uploads.
  • Instant startup — Discover feed is cached locally. On subsequent launches wallpapers appear immediately while fresh results load in the background.
  • Performance proof path — Baseline Profile and Macrobenchmark tests cover startup, Wallpaper Detail, and the main media grids on a physical-device runner.
  • 5 bottom nav tabs — Wallpapers, Videos, Sounds, Favorites, Settings.

Quick Start

git clone https://github.com/SysAdminDoc/Aura.git
cd Aura

Open in Android Studio and run. Core browsing works out of the box; optional provider keys can be added later in Settings or local.properties.

Privacy

Aura has no ads, no subscription, and no cross-app tracking. The public privacy policy is tracked at docs/privacy/privacy-policy.md; the same link is available in Settings > About > Privacy policy.

Features

Feature Description
HD/4K Wallpapers Discover feed from Wallhaven, Pexels, Pixabay, Bing & Reddit
Wallpaper Quality Filters Discover chips for For You, AMOLED, 4K+, Portrait, and Icon Safe with curated ranking
Community Wallpapers Upload phone-cropped gallery images with tags, Palette colors, and community voting
Creator Profiles View upload stats, votes, followed creators, followed uploads, and top creator leaderboard
Shareable Collections Share wallpaper collections as Aura links, QR codes, or JSON files and import them on another device
Video Wallpapers Browse YouTube video wallpapers with ExoPlayer auto-preview or import local clips/GIFs
Video Quality Hints Loop-safe, low-battery, and phone-fit filters plus per-card motion hints
Video Fit Modes Fill for full-screen crop or Fit to preserve the full frame
Video Loop & Crop Editor Trim intros/outros with frame thumbnails, preview the loop, and convert landscape videos to portrait
Video Battery Dashboard Live wallpaper-service heartbeat, battery status, effective FPS, and automatic low-battery capping
Parallax Wallpapers ML Kit depth segmentation for layered tilt-responsive live wallpapers
Weather Wallpapers Live weather effects overlay on wallpapers
Touch-Reactive Effects Optional ripple and sparkle bursts on live wallpaper touches
YouTube Sounds YouTube-first ringtone, notification, and alarm discovery with duration-aware searches powered by NewPipe + yt-dlp
Community Sound Uploads Pick or record sounds, tag them, vote on community picks, and share via Firebase Storage
Sound Source Badges Color-coded source indicators on every sound card
Sound Quality Filters Best, Clean, Short, Calm, and Punchy filters with intent-aware badges
Real-Time Waveform Mini waveform on each sound card tracks actual playback position
Configurable Search Customize YouTube search queries and blocked words per sound tab
Ringtones & Sounds Tab-based browsing: Ringtones (5-45s), Notifications (0-8s), Alarms (5-60s)
Sound Editor Waveform trim, fade in/out, normalize, format convert (MP3/OGG/WAV/FLAC/M4A)
Wallpaper Editor Brightness, contrast, saturation, blur with 6 filter presets
Crop & Position Pinch-zoom with aspect ratio presets (9:16, 16:9, 1:1)
Collections Organize wallpapers into named folders with 2x2 cover previews
Home Widget Glance-based widget for quick shuffle with error feedback
Auto Wallpaper Rotation schedule + source selection including favorites
Shuffle FAB One-tap random wallpaper from current tab
Per-Contact Ringtones Assign custom ringtones to individual contacts
Dual Wallpapers Coordinated home + lock screen wallpaper pairs
Favorites Export JSON export/import with full metadata via Android SAF
Community Voting Upvote/downvote wallpapers and sounds via Firebase
OLED Dark Theme Deep blacks, zero burn-in, Material 3

Content Sources

Source Content Auth
Wallhaven 1M+ HD/4K wallpapers None (optional key for NSFW)
Pexels Curated HD photos + videos Built-in key
Pixabay Editor's choice photos + videos Built-in key
Reddit 7 wallpaper + 4 video subreddits None
YouTube Video wallpapers + active sound feed via NewPipe + yt-dlp None
Freesound Legacy sound attribution for older favorites Built-in key
Firebase Community wallpaper/sound uploads + voting Built-in

Architecture

Jetpack Compose UI (16+ screens, 5 bottom nav tabs)
  Wallpapers | Videos | Sounds | Favorites | Settings
  Editors | Collections | Downloads | Onboarding | Widget
ViewModels (Hilt) + Cache Layer
  Repos: Wallhaven, Pexels, Pixabay, Bing, Reddit, YouTube, Freesound legacy,
         Collections
  Services: WallpaperApplier, SoundApplier, VideoWallpaperService,
            ParallaxWallpaperService, WeatherWallpaperService, DualWallpaperService,
            DownloadManager, AudioTrimmer, BatchDownload,
            ContactRingtone, FavoritesExporter, OfflineFavorites
  YouTube: NewPipe Extractor (search) + yt-dlp (stream extraction + FFmpeg crop)
Room DB v14 (Favorites, Downloads, Search History, Wallpaper Cache,
            Wallpaper History, Collections)
DataStore (Settings, Onboarding)
Firebase RTDB (Community Voting + Uploads + Admin Moderation)

Tech Stack

Component Library
UI Jetpack Compose + Material 3
DI Hilt 2.53.1
Database Room 2.6.1
Network Retrofit 2.11.0 + OkHttp
JSON Moshi + KSP codegen
Images Coil 2.7.0
Audio/Video Media3 ExoPlayer
ML ML Kit Selfie Segmentation
YouTube Search NewPipe Extractor
YouTube Streams yt-dlp (youtubedl-android 0.18.1)
Scheduling WorkManager 2.10.0
Widget Glance 1.1.1
Performance Baseline Profile + Macrobenchmark 1.4.1
Min SDK 26 (Android 8.0)
Target SDK 35 (Android 15)
Kotlin 2.1.0

Building

Requires JDK 17+ and Android SDK 35. Android Studio Ladybug (2024.2.1) or later recommended.

./gradlew assembleDebug      # use gradlew.bat on Windows
./gradlew assembleRelease     # requires signing config

Always use the included Gradle wrapper. It pins Gradle 8.12 which is required by AGP 8.7.3.

Copy local.properties.example to local.properties for local SDK, optional API keys, and release signing values. GitHub tag releases use repository secrets to build a signed, non-debuggable release APK, verify it with apksigner, attach SHA256SUMS.txt, and create GitHub artifact attestations for GitHub/Obtainium users. See release signing docs, the distribution channel strategy, alternative-store disclosures, release metadata consistency, SBOM readiness, store asset planning, Android developer verification prep, and supply-chain verification.

Contributing

Issues and PRs welcome. Please follow existing code style (Kotlin, Compose, Hilt patterns). For crashes or ANRs, use Settings > Diagnostics > Crash diagnostics bundle and paste it into the crash report template; see crash diagnostics. For community identity deletion requests, use Settings > Community identity and the private request flow in community account deletion requests.

License

MIT License - see LICENSE for details.

Content from third-party sources retains its original license. YouTube content is accessed via NewPipe Extractor and yt-dlp under their respective open-source licenses.

Read on GitHub → github.com/SysAdminDoc/Aura

Recent Releases

Latest tagged notes pulled from GitHub release history for this project.

  • v6.31.1

    - **Sounds tab / YouTube search crash on Android 8–12** ([#2](https://github.com/SysAdminDoc/Aura/issues/2)). Opening the Sounds tab — or running any YouTube search — crashed instantly on devices below Android 13 with `N

  • v6.21.0

    - Sounds browsing and in-tab search now use YouTube results only. · - Removed Audius from the active Sounds experience and user-facing source copy. · - Default sound searches now seed from Ringtones, Notifications, and A

  • v6.17.0

    Secondary-flow premium polish release. · - Refined sound detail, contact assignment, wallpaper preview, video preview, wallpaper edit/crop, sound editor, and onboarding first-run surfaces. · - Added stronger empty/loadin

  • v6.15.0

    Deep audit pass — **11 real bugs** found in the v6.13–v6.14 deltas (AI wallpaper generation, Phase 6.2 dark/light auto-switch, Phase 6.4 adaptive tint, Phase 2.5 seasonal/Pexels). All fixes ship with unit-test regression

Esc
Start with the strongest work, a key route, or the full archive.