Приложение для прослушивания аудио-проповедей, а также чтения текстового варианта проповедей https://app.slovo-propovedi.ru
  • TypeScript 97.1%
  • JavaScript 1.5%
  • Kotlin 0.7%
  • HTML 0.3%
  • Shell 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
egoreast 1bcb593f3e
All checks were successful
CI / dco (push) Successful in 9s
CI / checks (push) Successful in 5m22s
fix(web): hide haptics toggle in settings (no-op on web)
Signed-off-by: egoreast <egor.east@yandex.ru>
2026-10-06 15:33:57 +03:00
.agents/skills docs: add fsd skill 2026-08-25 14:19:14 +03:00
.forgejo/workflows fix: address review findings for admin lists and release signing 2026-10-05 22:41:45 +03:00
.husky chore(build): add patch guard script and test for expo-audio audio-focus patch 2026-10-03 21:28:11 +03:00
.ocx chore(opencode): migrate config to V2-native schema; move agent permissions to markdown agents 2026-09-21 00:46:27 +03:00
.omc chore: add omc config 2026-09-21 11:57:39 +03:00
.opencode chore(deps): update devdependencies (non-major) 2026-10-06 06:03:28 +00:00
.vscode docs: add CONTRIBUTING, SECURITY, CHANGELOG, MIGRATION + DCO automation 2026-07-28 16:01:30 +03:00
__mocks__ build: add expo-secure-store dependency 2026-09-30 14:29:08 +03:00
android feat: sign release builds with configurable release keystore 2026-10-05 14:54:44 +03:00
app feat: my playlists screen with header edit mode 2026-10-01 19:37:17 +03:00
assets docs: refresh README screenshots in numbered priority order 2026-09-23 23:11:16 +03:00
docs fix(web): hide haptics toggle in settings (no-op on web) 2026-10-06 15:33:57 +03:00
fastlane/metadata/android chore: bump version to 0.25.1 2026-10-02 17:08:39 +03:00
fdroid/metadata chore: bump version to 0.25.1 2026-10-02 17:08:39 +03:00
ios chore: bump version to 0.25.1 2026-10-02 17:08:39 +03:00
LICENSES docs: update and add license files 2026-07-27 23:13:30 +03:00
modules test: cover native-module JS boundaries 2026-10-01 02:09:22 +03:00
patches chore(build): add patch guard script and test for expo-audio audio-focus patch 2026-10-03 21:28:11 +03:00
plugins fix: address review findings for admin lists and release signing 2026-10-05 22:41:45 +03:00
public fix(web): eliminate 1px overflow, stray scrollbars and overscroll flash 2026-10-06 15:23:06 +03:00
scripts chore(build): add patch guard script and test for expo-audio audio-focus patch 2026-10-03 21:28:11 +03:00
src fix(web): hide haptics toggle in settings (no-op on web) 2026-10-06 15:33:57 +03:00
.dependency-cruiser.cjs refactor: eliminate Metro require cycles and ban shared re-exports via higher layers 2026-08-25 01:00:55 +03:00
.dockerignore ci(web): deploy the web PWA, split release into per-target jobs 2026-09-04 17:07:26 +03:00
.env.example fix: address review findings for admin lists and release signing 2026-10-05 22:41:45 +03:00
.gitignore feat: sign release builds with configurable release keystore 2026-10-05 14:54:44 +03:00
.prettierignore feat(web): offline audio cache, PWA, and build tooling 2026-09-04 17:02:54 +03:00
ADDITIONAL-PERMISSIONS.md feat(license): adopt GPL-3.0-or-later with REUSE compliance 2026-07-28 15:58:26 +03:00
AGENTS.md chore(build): add patch guard script and test for expo-audio audio-focus patch 2026-10-03 21:28:11 +03:00
AI_PROFILES.md feat(opencode): production failover — hard-quota attempt-1 activation via retry+http.response hooks 2026-09-21 15:48:54 +03:00
app.config.ts feat: sign release builds with configurable release keystore 2026-10-05 14:54:44 +03:00
AUTHORS feat(license): adopt GPL-3.0-or-later with REUSE compliance 2026-07-28 15:58:26 +03:00
babel.config.js fix: module-resolver must not rewrite imports from node_modules 2026-08-23 22:35:14 +03:00
CHANGELOG.md chore: bump version to 0.25.1 2026-10-02 17:08:39 +03:00
commitlint.config.ts fix: sign commits in bump-version and enforce DCO trailer via commitlint 2026-08-07 13:40:54 +03:00
CONTRIBUTING.md docs: split README into user-facing and DEVELOPMENT.md 2026-08-10 12:50:30 +03:00
debug.keystore fix(android): restore dev-client scheme launch and pin debug keystore across prebuild 2026-09-26 16:45:40 +03:00
declarations.d.ts refactor: fix elslint fixme and disabling comments 2026-07-10 19:39:54 +03:00
DEVELOPMENT.md feat(android): separate dev/prod via productFlavors 2026-08-12 17:41:14 +03:00
Dockerfile ci(web): deploy the web PWA, split release into per-target jobs 2026-09-04 17:07:26 +03:00
eslint.config.mts refactor: inline all named type imports and ban the standalone form 2026-09-29 15:59:27 +03:00
fsd-high-level-dependencies.html chore: update fsd visualize 2026-09-01 01:24:02 +03:00
jest.config.ts build: add expo-secure-store dependency 2026-09-30 14:29:08 +03:00
knip.config.ts refactor: inline all named type imports and ban the standalone form 2026-09-29 15:59:27 +03:00
LICENSE docs: update and add license files 2026-07-27 23:13:30 +03:00
lint-staged.config.js update packages and migrate from zustand to reatom 2026-03-09 20:12:22 +03:00
metro.config.js fix(ci): prevent release build OOM on 4GB runner 2026-08-24 10:03:51 +03:00
nginx.conf feat: serve android app links verification file on web 2026-09-26 12:35:05 +03:00
orval.config.ts fix(api): stop orval overwriting hand-written generated index 2026-09-15 23:41:46 +03:00
package.json chore(deps): update dependency orval to v8.40.0 2026-10-05 06:03:13 +00:00
prettier.config.cjs update packages and migrate from zustand to reatom 2026-03-09 20:12:22 +03:00
README.en.md docs: link release badge to latest and split platform badges 2026-09-23 23:26:15 +03:00
README.md docs: link release badge to latest and split platform badges 2026-09-23 23:26:15 +03:00
renovate.json build: cap Gradle wrapper at 9.3.x for KGP 2.1.20 compatibility 2026-09-16 13:32:57 +03:00
REUSE.toml docs: update and add license files 2026-07-27 23:13:30 +03:00
SECURITY.md docs: add CONTRIBUTING, SECURITY, CHANGELOG, MIGRATION + DCO automation 2026-07-28 16:01:30 +03:00
skills-lock.json docs: add fsd skill 2026-08-25 14:19:14 +03:00
slovo-istiny-mobile.code-workspace moved functions and objects 2024-01-22 23:27:37 +03:00
steiger.config.ts feat(player): auto-scroll playlist sheet to current sermon (#48) 2026-08-28 19:45:00 +03:00
THIRD-PARTY-LICENSES-DISCLAIMER.md fix(ui): resume marquee clock after jitter or cancelled gesture 2026-09-22 23:34:29 +03:00
THIRD-PARTY-LICENSES.md docs: update and add license files 2026-07-27 23:13:30 +03:00
tsconfig.json feat(android): apply native customizations via config plugins 2026-09-23 14:12:30 +03:00
yarn.lock Merge branch 'main' into renovate/devdependencies-(non-major) 2026-10-06 08:47:43 +00:00

Slovo.Propovedi

Slovo.Propovedi

Release Android Web/PWA License

English | Русский

An app for listening to Christian sermons online and offline.
No ads, no tracking, no analytics — privacy first.

📱 Screenshots

Listen (dark theme)
Listen (dark theme)
Listen
Listen
Playlists
Playlists
Playlist
Playlist
Player
Player
Player menu
Player menu
Playlist sheet
Playlist sheet
Search
Search
More
More
Offline
Offline
Listening history
Listening history
Settings
Settings
Share
Share
About
About

✨ Key Features

🎧 Listening

  • Audio streaming — play sermons straight from the server.
  • Fullscreen player — background playback with lock screen and notification controls.
  • Listening history — resume a sermon from the saved position.
  • Search — find sermons with cached results.

📁 Playlists

  • Playlist list — all your collections in one place.
  • Add to playlist — via a bottom sheet directly from the player.

📥 Offline

  • Audio caching — download a full sermon for listening without a network.
  • Offline screen — a list of downloaded sermons with offline playback.
  • Clear offline cache — remove downloaded files in one action.
  • Network-loss resilience — automatic fallback to the offline source when the connection drops.

🎨 Modern UI

  • Dark and light themes — switched automatically following the system setting.
  • Smooth animations — responsive transitions and gestures.
  • Russian-language UI — the entire app interface is in Russian.

🔧 Flexibility & Privacy

  • Configurable server — connect to any compatible sermon server.
  • No ads, tracking or analytics — no trackers and no data collection.
  • Update notifications — check for new app versions.
  • Web version — a PWA with offline audio caching.

📥 Download

Source Link
F-Droid Link will be added once published
Web (PWA) Open
Direct APK Download APK

📋 System Requirements

  • Android — a modern Android version; the app is also distributed as an APK build.
  • Web — any modern browser (a PWA that installs as an app and supports an offline audio cache).

The app requests only the permissions it needs: audio settings, a foreground service and media playback, notifications, and app update installation. Microphone access (RECORD_AUDIO) is explicitly blocked — the app only plays audio.

🛠️ Tech Stack

Technology Version
React Native 0.86.3
Expo ~57.0.24
TypeScript ~6.0.3
Reatom @reatom/*
Expo Router expo-router
expo-audio expo-audio
axios ^1.19.0
xml-js ^1.6.11

🚀 Roadmap

  • FB2 book reader — online reading of Christian books in FB2 format from the server (no local files).

🔨 Building from Source

Requirements: Node.js (LTS), Yarn, Git.

# Clone the repository
git clone https://git.lightnode.ru/Slovo_Propovedi/slovo-propovedi-mobile.git
cd slovo-propovedi-mobile

# Install dependencies
yarn install

# Start the development server
yarn start        # native app (Expo Dev Server)
yarn web          # web version

Release Android builds are produced with EAS:

yarn build:android

For details about the project architecture, build system, and development scripts, see DEVELOPMENT.md.

🤝 Contributing

  1. Create a branch for your change (feature/..., fix/...).
  2. Follow the Feature-Sliced Design architecture and update the docs in docs/ together with the code.
  3. Write commits following Conventional Commits.
  4. Open a merge request describing your changes.

The full guide to development setup, coding standards, and the contribution workflow is in CONTRIBUTING.md.

📄 License

This project is Free/Libre Open Source Software, licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later).

Distribution via the Apple App Store and Google Play Store is permitted under the App Store Additional Permission.


If the app is useful to you — star the repository and tell others about it.
Feedback, ideas and bug reports are welcome in the issue tracker.