You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Silberengel 7976310232 add british english to supported languages 2 weeks ago
build fix electron refresh 1 month ago
docs change jumble to imwald 4 weeks ago
electron bug-fixes 2 weeks ago
nip66-cron bug-fixes 1 month ago
public update opengraph 4 weeks ago
resources fix coloring 4 weeks ago
screenshots Revert "refactor: 💨" 1 year ago
scripts add british english to supported languages 2 weeks ago
services/piper-tts-proxy add british english to supported languages 2 weeks ago
src add british english to supported languages 2 weeks ago
.dockerignore feat: add docker deployment configuration (#311) 12 months ago
.env.development bug-fixes 2 weeks ago
.gitignore bug-fixes 2 weeks ago
.prettierignore refactor: remove electron-related code 1 year ago
.prettierrc.yaml 🎉 2 years ago
CITATION_TEST_CONTENT.adoc citation embedding 5 months ago
CITATION_TEST_README.md citation embedding 5 months ago
Dockerfile implement advanced codemirror editor, with grammar check and translation 2 weeks ago
FILES_TO_UPDATE.md speed up relay fetches 1 month ago
LICENSE chore: add LICENSE 1 year ago
LOGGING.md change jumble to imwald 4 weeks ago
MIGRATION_GUIDE.md speed up relay fetches 1 month ago
PROXY_SETUP.md add british english to supported languages 2 weeks ago
README.md change jumble to imwald 4 weeks ago
REFACTORING_COMPLETE.md change jumble to imwald 4 weeks ago
REFACTORING_PLAN.md speed up relay fetches 1 month ago
components.json refactor: remove electron-related code 1 year ago
docker-compose.dev.yml add british english to supported languages 2 weeks ago
docker-compose.prod.yml add british english to supported languages 2 weeks ago
docker-compose.yml add british english to supported languages 2 weeks ago
docker-entrypoint.sh expand payto:// handling 2 months ago
eslint.config.js create Electron app 1 month ago
index.html bug-fixes 3 weeks ago
jsconfig.json make cache more accessible 3 weeks ago
knip.json reduce repo size some more 3 weeks ago
package-lock.json add british english to supported languages 2 weeks ago
package.json add british english to supported languages 2 weeks ago
postcss.config.js refactor: remove electron-related code 1 year ago
tailwind.config.js fix coloring 4 weeks ago
tsconfig.app.json speed up relay fetches 1 month ago
tsconfig.json refactor: remove electron-related code 1 year ago
tsconfig.node.json refactor: remove electron-related code 1 year ago
vite.config.ts bug-fixes 2 weeks ago

README.md

Imwald logo

logo designed by Daniel David

Imwald

Maintainer: Silberengel · Evolved from Cody Tseng’s Jumble

A Nostr web client focused on relay feeds, discovery, and spells. Imwald keeps the same core ideas as upstream, with a substantial navigation and information-architecture rewrite (see below). The public instance lives at jumble.imwald.eu.


Major rewrite (this line)

High-level changes versus a “stock” Jumble-style layout:

Home vs feed

  • Home is the Explore experience: relay directory, Following’s Favorites, and related discovery — not a duplicate of your main timeline.
  • Feed is a dedicated primary area for favorite relays, displaying their diverse social content as a feed: short text notes (microblogging), longform articles, wiki pages, media notes, calendar entries, etc.

RSS

  • RSS is a separate primary page with its own title bar, refresh, and filters
  • Sidebar RSS opens that page directly when enabled in settings.

Spells & faux feeds

  • Built-in faux spells (notifications, discussions, following, follow packs, media, interests, bookmarks, calendar) all run through the same NoteList path as user-defined kind-777 spells.
  • Sidebar Notifications and Discussions navigate to the correct faux feed with proper active states; primary page props are merged through the lazy Suspense boundary correctly.
  • Following faux feed respects global kind filters and Notes/Replies mode; bookmarks faux uses classic e-tag ids from the bookmark list.

Profiles

  • Pinned notes (kind 10001 lists) appear first with a pin marker; the rest of the profile timeline uses main-feed-style kind and reply rules, with a clear split when pins exist.
  • Profiles with no pins behave like a normal timeline (no empty pin chrome).

Explore quality-of-life

  • Search for Relays on Explore (below Favorite Relays): paste wss://… or a host, submit, and open the relay page with the same navigation as the relay cards. While typing, suggestions come from the NIP-66 monitoring (public lively) list on partial or full URL/host matches; you can still submit any URL the app does not know.

Other

  • Sidebar layout tuned for long translations (e.g. German) so labels don’t sit on the divider.

Features

  • Relay feeds: Browse content through relays, sets, and favorites
  • Relay-friendly requests: Efficient subscriptions where possible
  • Relay sets: Switch between saved relay groups
  • Spells: Portable filters (kind 777) plus built-in faux feeds above

Screenshots

Imwald screenshot 01
Imwald screenshot 02 Imwald screenshot 03 Imwald screenshot 04

Run locally

git clone https://github.com/Silberengel/jumble.git
cd jumble
npm install
npm run dev

Run with Docker

git clone https://github.com/Silberengel/jumble.git
cd jumble
docker compose up --build -d

Then open: http://localhost:8089

Linux desktop (.deb / AppImage)

Built packages are not committed to this repository (only source). They are published as release assets when a maintainer uploads them.

  • Download: GitHub Releases — latest — get the *.deb (or AppImage) attached to a release.
  • Install the .deb: sudo apt install ./Imwald_*_amd64.deb (use the exact filename from the download folder; ./ is required so apt uses the local file). After install, Imwald should appear in your app menu (often under Network).

Maintainers — build artifacts locally:

npm install
npm run electron:pack

Outputs land in release/ (.deb, .AppImage). Upload those files when you create or edit a GitHub Release for that version.

License

MIT