🚀 New feature on Quran.com!
You can now embed Quran verses anywhere to help share the words of Allah 🌙
The new embed builder lets you:
• choose a surah/ayah (or a verse range)
• select translations
• enable audio, word-by-word, themes, mushaf styles, etc.
• get a ready-to-use embed code in seconds
Perfect for blogs, mosque websites, apps, and community projects.
https://quran.com/embed
You can now embed Quran verses anywhere to help share the words of Allah 🌙
The new embed builder lets you:
• choose a surah/ayah (or a verse range)
• select translations
• enable audio, word-by-word, themes, mushaf styles, etc.
• get a ready-to-use embed code in seconds
Perfect for blogs, mosque websites, apps, and community projects.
https://quran.com/embed
❤6🤩1
E-Book Converter Bot has been updated with new features
Major Features
- Added interactive conversion options flow.
- Added localized format-specific controls and simplified options flow.
- Added EPUB background removal option.
- Added KePub conversion support.
- Added PDF input conversion support.
- Added Shamela
Conversion UX & Behavior
- Made option state updates idempotent.
- Added DOCX float CSS filtering (fixes converting some cases).
- Hardened converter callback state and reply-mode handling.
- Added queue expiration, periodic cleanup, and user-facing expired-request messages.
- Added dynamic supported format counts in
Reliability & Security
- Reworked restart state handling with
- Hardened restart notices and shutdown cleanup.
- Added Telegram retry behavior for flood/slow-mode waits.
- Removed shell exec risk and unsafe download path usage.
Broadcast & i18n
- Improved localized broadcast status formatting.
- Switched broadcast completion to built-in localized message source.
- Migrated gettext workflow from Makefile tasks to
Database & Infra
- Switched DB access to per-call SQLAlchemy sessions.
- Added missing analytics format columns.
- Updated Docker localtime mount placement.
Dev/Test Tooling
- Migrated type checking from
- Added/updated pytest tasks via
- Migrated EPUB OPF tests to pytest.
- General dependency and typing cleanup.
All commits
Try the bot new update: @ebook_converter_bot
If you like my work, you may consider supporting it via a donation. A donation was never necessary, but It's making life easier for me and guarantees paying server costs as well as keeping projects active and without annoying ads. My works are free and open-source, that cost money, time, and many efforts. You can do this using GitHub Sponsors, LibrePay, or PayPal.
Stay tuned for new updates!
Major Features
- Added interactive conversion options flow.
- Added localized format-specific controls and simplified options flow.
- Added EPUB background removal option.
- Added KePub conversion support.
- Added PDF input conversion support.
- Added Shamela
.bok input support.Conversion UX & Behavior
- Made option state updates idempotent.
- Added DOCX float CSS filtering (fixes converting some cases).
- Hardened converter callback state and reply-mode handling.
- Added queue expiration, periodic cleanup, and user-facing expired-request messages.
- Added dynamic supported format counts in
/start.Reliability & Security
- Reworked restart state handling with
restart.json.- Hardened restart notices and shutdown cleanup.
- Added Telegram retry behavior for flood/slow-mode waits.
- Removed shell exec risk and unsafe download path usage.
Broadcast & i18n
- Improved localized broadcast status formatting.
- Switched broadcast completion to built-in localized message source.
- Migrated gettext workflow from Makefile tasks to
mise.toml.Database & Infra
- Switched DB access to per-call SQLAlchemy sessions.
- Added missing analytics format columns.
- Updated Docker localtime mount placement.
Dev/Test Tooling
- Migrated type checking from
mypy to ty.- Added/updated pytest tasks via
mise.- Migrated EPUB OPF tests to pytest.
- General dependency and typing cleanup.
All commits
Try the bot new update: @ebook_converter_bot
If you like my work, you may consider supporting it via a donation. A donation was never necessary, but It's making life easier for me and guarantees paying server costs as well as keeping projects active and without annoying ads. My works are free and open-source, that cost money, time, and many efforts. You can do this using GitHub Sponsors, LibrePay, or PayPal.
Stay tuned for new updates!
GitHub
GitHub - yshalsager/ebook-converter-bot: Convert ebooks with few clicks on Telegram!
Convert ebooks with few clicks on Telegram! Contribute to yshalsager/ebook-converter-bot development by creating an account on GitHub.
❤2
Compiling https://github.com/BurntSushi/ripgrep/ for android
#!/usr/bin/env bash
set -euo pipefail
target='aarch64-linux-android'
if [[ $# -gt 0 && "$1" != -* ]]; then
target="$1"
shift
fi
api="${RG_ANDROID_API:-21}"
if [[ -n "${RG_ANDROID_NDK_HOME:-}" ]]; then
ndk_home="$RG_ANDROID_NDK_HOME"
elif [[ -n "${ANDROID_NDK_HOME:-}" ]]; then
ndk_home="$ANDROID_NDK_HOME"
elif [[ -n "${ANDROID_NDK_ROOT:-}" ]]; then
ndk_home="$ANDROID_NDK_ROOT"
else
ndk_home="$(ls -d "$HOME"/Library/Android/sdk/ndk/* 2>/dev/null | sort -V | tail -n1)"
fi
if [[ -z "${ndk_home:-}" || ! -d "$ndk_home" ]]; then
echo 'error: Android NDK not found. Set RG_ANDROID_NDK_HOME, ANDROID_NDK_HOME or ANDROID_NDK_ROOT.' >&2
exit 1
fi
ndk_prebuilt="$(ls -d "$ndk_home"/toolchains/llvm/prebuilt/* 2>/dev/null | head -n1)"
if [[ -z "${ndk_prebuilt:-}" || ! -d "$ndk_prebuilt" ]]; then
echo "error: NDK LLVM prebuilt toolchain not found in $ndk_home." >&2
exit 1
fi
case "$target" in
aarch64-linux-android) clang_triple='aarch64-linux-android' ;;
x86_64-linux-android) clang_triple='x86_64-linux-android' ;;
i686-linux-android) clang_triple='i686-linux-android' ;;
armv7-linux-androideabi|arm-linux-androideabi) clang_triple='armv7a-linux-androideabi' ;;
*)
echo "error: unsupported Android target '$target'." >&2
exit 1
;;
esac
linker="$ndk_prebuilt/bin/${clang_triple}${api}-clang"
ar="$ndk_prebuilt/bin/llvm-ar"
if [[ ! -x "$linker" ]]; then
echo "error: linker not found: $linker" >&2
exit 1
fi
if [[ ! -x "$ar" ]]; then
echo "error: archiver not found: $ar" >&2
exit 1
fi
target_upper="${target//-/_}"
target_upper="$(printf '%s' "$target_upper" | tr '[:lower:]' '[:upper:]')"
target_lower="${target//-/_}"
export ANDROID_NDK_HOME="$ndk_home"
export "CARGO_TARGET_${target_upper}_LINKER=$linker"
export "CARGO_TARGET_${target_upper}_AR=$ar"
export "CC_${target_lower}=$linker"
export "AR_${target_lower}=$ar"
rustup target add "$target"
cargo build --release --target "$target" --bin rg "$@"
🔥4❤1
Release notes from calibre-with-kfx:
This update adds the ability to pass KFX Input / Output's CLI options.
e.g. Convert to KFX with approximate page numbers (auto):
When converting to KFX, extra args are passed to the KFX Output plugin (`calibre-debug -r "KFX Output" -- ...`). Useful flags include:
-
-
-
-
-
-
When converting from KFX to other formats, this image uses
The KFX Input plugin also provides a separate CLI (useful for print replica PDF extraction, CBZ creation, resource unpacking, etc):
Common KFX Input CLI flags:
-
-
-
-
-
-
KFX Input has one calibre "Convert Books" option:
https://github.com/yshalsager/calibre-with-kfx/releases/tag/20260220-2041
This update adds the ability to pass KFX Input / Output's CLI options.
e.g. Convert to KFX with approximate page numbers (auto):
docker run --rm -it -v "$(pwd):/app:rw" yshalsager/calibre-with-kfx book.epub book.kfx --pages 0When converting to KFX, extra args are passed to the KFX Output plugin (`calibre-debug -r "KFX Output" -- ...`). Useful flags include:
-
--pages N create approximate page numbers if missing (`0` = auto)-
--book mark as EBOK (vs default PDOC)-
--asin BXXXXXXXXX set an ASIN-
--logs include Kindle Previewer conversion logs-
--quality include Kindle Previewer quality report-
--timeout stop conversions lasting over ~15 minutesWhen converting from KFX to other formats, this image uses
ebook-convert normally. Any ebook-convert CLI options can be passed as extra args.The KFX Input plugin also provides a separate CLI (useful for print replica PDF extraction, CBZ creation, resource unpacking, etc):
docker run --rm -it -v "$(pwd):/app:rw" --entrypoint calibre-debug yshalsager/calibre-with-kfx \
-r "KFX Input" -- /app/book.kfx --help
Common KFX Input CLI flags:
-
--epub (default), --epub2-
--pdf extract/produce PDF (print replica, comics/children's)-
--cbz create CBZ (print replica, comics/children's)-
--unpack extract resources to a ZIP-
--json-content create JSON content/position file-
--cover force a generic EPUB cover if missingKFX Input has one calibre "Convert Books" option:
allow_conversion_with_errors (default off). It also has plugin preferences used by its CLI/From-KFX UI (for example splitting landscape comic images when creating PDF).https://github.com/yshalsager/calibre-with-kfx/releases/tag/20260220-2041
GitHub
Release 20260220-2041 · yshalsager/calibre-with-kfx
ghcr.io/yshalsager/calibre-with-kfx:20260220-2041 Built using:
base: python:3.14-slim-trixie
calibre: v9.3.0
kfx_input: 2.29.0
kfx_output: 2.18.0
kindle_previewer: 2026-02-05
wine: 11.0.0.0~trixie-1
base: python:3.14-slim-trixie
calibre: v9.3.0
kfx_input: 2.29.0
kfx_output: 2.18.0
kindle_previewer: 2026-02-05
wine: 11.0.0.0~trixie-1
Release notes from calibre-with-kfx:
https://github.com/yshalsager/calibre-with-kfx/releases/tag/20260301-0038
https://github.com/yshalsager/calibre-with-kfx/releases/tag/20260301-0038
GitHub
Release 20260301-0038 · yshalsager/calibre-with-kfx
ghcr.io/yshalsager/calibre-with-kfx:20260301-0038 Built using:
base: python:3.14-slim-trixie
calibre: v9.4.0
kfx_input: 2.29.0
kfx_output: 2.18.0
kindle_previewer: 2026-02-05
wine: 11.0.0.0~trixie-1
base: python:3.14-slim-trixie
calibre: v9.4.0
kfx_input: 2.29.0
kfx_output: 2.18.0
kindle_previewer: 2026-02-05
wine: 11.0.0.0~trixie-1
yshalsager's Channel
https://github.com/yshalsager/SuntimesPrayerTimesAddon/releases/tag/v0.3.0
GitHub
Release v0.4.0 · yshalsager/SuntimesPrayerTimesAddon
Changelog
v0.3.1...v0.4.0
compare changes
🚀 Enhancements
settings: Add about section with version and links (57fb9b1)
launcher: Add static shortcuts for calendar and settings (e57ef67)
widget: Ada...
v0.3.1...v0.4.0
compare changes
🚀 Enhancements
settings: Add about section with version and links (57fb9b1)
launcher: Add static shortcuts for calendar and settings (e57ef67)
widget: Ada...
❤3
Shizuku Shortcuts
Tiny launcher shortcuts and custom shell actions for Android through Shizuku.
https://github.com/yshalsager/ShizukuShortcuts
vibe-coded engineered using GPT 5.4.
I needed a solution that can trigger notification's bar pull without accessibility from launcher gesture, then thought it's nice to build it as general purpose.
Tiny launcher shortcuts and custom shell actions for Android through Shizuku.
https://github.com/yshalsager/ShizukuShortcuts
vibe-
I needed a solution that can trigger notification's bar pull without accessibility from launcher gesture, then thought it's nice to build it as general purpose.
❤1
Release v0.5.0 · yshalsager/SuntimesPrayerTimesAddon
https://github.com/yshalsager/SuntimesPrayerTimesAddon/releases/tag/v0.5.0
https://github.com/yshalsager/SuntimesPrayerTimesAddon/releases/tag/v0.5.0
GitHub
Release v0.5.0 · yshalsager/SuntimesPrayerTimesAddon
Changelog
v0.4.3...v0.5.0
compare changes
🚀 Enhancements
ui: Open app shortcuts through deep links (20e2bc3)
calendar: Expose prayer times calendars to Suntimes (d7c2bd4)
🩹 Fixes
core: Ignore in...
v0.4.3...v0.5.0
compare changes
🚀 Enhancements
ui: Open app shortcuts through deep links (20e2bc3)
calendar: Expose prayer times calendars to Suntimes (d7c2bd4)
🩹 Fixes
core: Ignore in...
A local-first desktop and web application for browsing, searching, and analyzing AI agent coding sessions. Supports Claude Code, Codex, OpenCode, and 8 other agents.
https://github.com/wesm/agentsview
https://github.com/wesm/agentsview
GitHub
GitHub - kenn-io/agentsview: Local-first session search, analytics, insights, and token use statistics for coding agents, supporting…
Local-first session search, analytics, insights, and token use statistics for coding agents, supporting Claude Code, Codex, and more than 20 other agents. - kenn-io/agentsview
https://github.com/tiendnm/zukulock
A simple app that can be used as double tab to turn screen off via Shizuku without accessibility permissions
A simple app that can be used as double tab to turn screen off via Shizuku without accessibility permissions
GitHub
GitHub - tiendnm/zukulock
Contribute to tiendnm/zukulock development by creating an account on GitHub.
Telegram Feedback Bots Builder new update
https://github.com/yshalsager/telegram-feedback-bot
• add bidirectional reaction mirroring
• add support for new threaded bots feature
https://github.com/yshalsager/telegram-feedback-bot
• add bidirectional reaction mirroring
• add support for new threaded bots feature
Show HN: Sonar – A tiny CLI to see and kill whatever's running on localhost
https://github.com/RasKrebs/sonar
https://github.com/RasKrebs/sonar
GitHub
GitHub - raskrebs/sonar: CLI tool for inspecting and managing services listening on localhost ports
CLI tool for inspecting and managing services listening on localhost ports - raskrebs/sonar
👍2❤1
E-Book Converter Bot has been updated with new features
Major Features
- Added splitting EPUB based on top level headers.
- Added standardizing EPUB footnotes.
- Added EPUB cover compression.
The bot is now running based on:
- calibre: v9.5.0
- kfx_input: 2.29.0
- kfx_output: 2.18.0
- kindle_previewer: 3.103.0 (2026-03-11)
Try the bot new update: @ebook_converter_bot
If you like my work, you may consider supporting it via a donation. A donation was never necessary, but It's making life easier for me and guarantees paying server costs as well as keeping projects active and without annoying ads. My works are free and open-source, that cost money, time, and efforts. You can do this using GitHub Sponsors, LibrePay, or PayPal.
Stay tuned for new updates!
Major Features
- Added splitting EPUB based on top level headers.
- Added standardizing EPUB footnotes.
- Added EPUB cover compression.
The bot is now running based on:
- calibre: v9.5.0
- kfx_input: 2.29.0
- kfx_output: 2.18.0
- kindle_previewer: 3.103.0 (2026-03-11)
Try the bot new update: @ebook_converter_bot
If you like my work, you may consider supporting it via a donation. A donation was never necessary, but It's making life easier for me and guarantees paying server costs as well as keeping projects active and without annoying ads. My works are free and open-source, that cost money, time, and efforts. You can do this using GitHub Sponsors, LibrePay, or PayPal.
Stay tuned for new updates!