notedeck

One damus client to rule them all
git clone git://jb55.com/notedeck
Log | Files | Refs | README | LICENSE

ModeNameSize
-rw-r--r--.cargo/config.toml2L
-rw-r--r--.envrc18L
-rw-r--r--.github/workflows/build-and-test.yml29L
-rw-r--r--.github/workflows/rust.yml258L
-rw-r--r--.gitignore18L
-rw-r--r--.rustfmt.toml1L
-rw-r--r--Cargo.lock5503L
-rw-r--r--Cargo.toml61L
-rw-r--r--LICENSE15L
-rw-r--r--Makefile11L
-rw-r--r--README.md96L
-rw-r--r--SECURITY.md5L
-rw-r--r--Trunk.toml3L
-rw-r--r--assets/Logo-Gradient-2x.png18616B
-rw-r--r--assets/Welcome to Nostrdeck 2x.png52397B
-rw-r--r--assets/app_icon.icns633843B
-rw-r--r--assets/damus-app-icon.png271986B
-rw-r--r--assets/damus-app-icon.svg261L
-rw-r--r--assets/damus.ico293138B
-rw-r--r--assets/damus.svg184L
-rw-r--r--assets/damus_rounded.svg334L
-rw-r--r--assets/damus_rounded_80.png6812B
-rwxr-xr-xassets/favicon.ico15406B
-rw-r--r--assets/fonts/DejaVuSans-Bold-SansEmoji.ttf497128B
-rw-r--r--assets/fonts/DejaVuSans-Bold.ttf705684B
-rw-r--r--assets/fonts/DejaVuSans.ttf757076B
-rw-r--r--assets/fonts/DejaVuSansSansEmoji.ttf560848B
-rw-r--r--assets/fonts/Inconsolata-Regular.ttf108684B
-rw-r--r--assets/fonts/NotoEmoji-Regular.ttf878892B
-rw-r--r--assets/fonts/NotoSansCJK-Regular.ttc19484784B
-rw-r--r--assets/fonts/NotoSansThai-Regular.ttf47484B
-rw-r--r--assets/fonts/ark/ark-pixel-10px-proportional-latin.ttf328720B
-rw-r--r--assets/fonts/onest/OnestBlack1602-hint.ttf105716B
-rw-r--r--assets/fonts/onest/OnestBold1602-hint.ttf100424B
-rw-r--r--assets/fonts/onest/OnestExtraBold1602-hint.ttf101988B
-rw-r--r--assets/fonts/onest/OnestLight1602-hint.ttf91836B
-rw-r--r--assets/fonts/onest/OnestMedium1602-hint.ttf92992B
-rw-r--r--assets/fonts/onest/OnestRegular1602-hint.ttf93048B
-rw-r--r--assets/fonts/onest/OnestThin1602-hint.ttf94300B
-rw-r--r--assets/fonts/pressstart/PressStart2P.ttf82480B
-rw-r--r--assets/icons/add_account_icon_4x.png3081B
-rw-r--r--assets/icons/add_column_dark_4x.png1150B
-rw-r--r--assets/icons/add_column_light_4x.png1267B
-rw-r--r--assets/icons/column_delete_icon_4x.png806B
-rw-r--r--assets/icons/column_delete_icon_light_4x.png1089B
-rw-r--r--assets/icons/connected_icon_4x.png1872B
-rw-r--r--assets/icons/connecting_icon_4x.png1733B
-rw-r--r--assets/icons/delete_icon_4x.png1057B
-rw-r--r--assets/icons/disconnected_icon_4x.png1863B
-rw-r--r--assets/icons/help_icon_dark_4x.png1230B
-rw-r--r--assets/icons/help_icon_inverted_4x.png554B
-rw-r--r--assets/icons/home_icon_dark_4x.png2847B
-rw-r--r--assets/icons/new_deck_icon_4x_dark.png4837B
-rw-r--r--assets/icons/notifications_icon_dark_4x.png3403B
-rw-r--r--assets/icons/plus_icon_4x.png340B
-rw-r--r--assets/icons/profile_icon_4x.png4010B
-rw-r--r--assets/icons/reply-dark.png912B
-rw-r--r--assets/icons/reply.png1205B
-rw-r--r--assets/icons/reply.svg1L
-rw-r--r--assets/icons/repost_icon_4x.png808B
-rw-r--r--assets/icons/repost_light_4x.png1145B
-rw-r--r--assets/icons/select_icon_3x.png1405B
-rw-r--r--assets/icons/settings_dark_4x.png3886B
-rw-r--r--assets/icons/settings_light_4x.png3055B
-rw-r--r--assets/icons/signout_icon_4x.png1420B
-rw-r--r--assets/icons/universe_icon_dark_4x.png3323B
-rw-r--r--assets/manifest.json28L
-rw-r--r--assets/sw.js25L
-rwxr-xr-xcheck11L
-rw-r--r--crates/enostr/Cargo.lock1870L
-rw-r--r--crates/enostr/Cargo.toml19L
-rw-r--r--crates/enostr/src/client/message.rs59L
-rw-r--r--crates/enostr/src/client/mod.rs3L
-rw-r--r--crates/enostr/src/error.rs55L
-rw-r--r--crates/enostr/src/filter.rs1L
-rw-r--r--crates/enostr/src/keypair.rs139L
-rw-r--r--crates/enostr/src/lib.rs23L
-rw-r--r--crates/enostr/src/note.rs135L
-rw-r--r--crates/enostr/src/profile.rs38L
-rw-r--r--crates/enostr/src/pubkey.rs124L
-rw-r--r--crates/enostr/src/relay/message.rs290L
-rw-r--r--crates/enostr/src/relay/mod.rs100L
-rw-r--r--crates/enostr/src/relay/pool.rs254L
-rw-r--r--crates/notedeck/Cargo.toml33L
-rw-r--r--crates/notedeck/src/accounts.rs569L
-rw-r--r--crates/notedeck/src/app.rs5L
-rw-r--r--crates/notedeck/src/args.rs118L
-rw-r--r--crates/notedeck/src/context.rs19L
-rw-r--r--crates/notedeck/src/error.rs64L
-rw-r--r--crates/notedeck/src/filter.rs282L
-rw-r--r--crates/notedeck/src/fonts.rs58L
-rw-r--r--crates/notedeck/src/imgcache.rs77L
-rw-r--r--crates/notedeck/src/lib.rs44L
-rw-r--r--crates/notedeck/src/muted.rs61L
-rw-r--r--crates/notedeck/src/note.rs70L
-rw-r--r--crates/notedeck/src/notecache.rs57L
-rw-r--r--crates/notedeck/src/result.rs3L
-rw-r--r--crates/notedeck/src/storage/file_key_storage.rs167L
-rw-r--r--crates/notedeck/src/storage/file_storage.rs271L
-rw-r--r--crates/notedeck/src/storage/key_storage_impl.rs88L
-rw-r--r--crates/notedeck/src/storage/mod.rs11L
-rw-r--r--crates/notedeck/src/storage/security_framework_key_storage.rs198L
-rw-r--r--crates/notedeck/src/style.rs52L
-rw-r--r--crates/notedeck/src/theme.rs101L
-rw-r--r--crates/notedeck/src/theme_handler.rs76L
-rw-r--r--crates/notedeck/src/time.rs55L
-rw-r--r--crates/notedeck/src/timecache.rs41L
-rw-r--r--crates/notedeck/src/ui.rs24L
-rw-r--r--crates/notedeck/src/unknowns.rs356L
-rw-r--r--crates/notedeck/src/user_account.rs9L
-rw-r--r--crates/notedeck_chrome/Cargo.toml92L
-rw-r--r--crates/notedeck_chrome/src/android.rs108L
-rw-r--r--crates/notedeck_chrome/src/app.rs191L
-rw-r--r--crates/notedeck_chrome/src/app_size.rs85L
-rw-r--r--crates/notedeck_chrome/src/fonts.rs146L
-rw-r--r--crates/notedeck_chrome/src/lib.rs11L
-rw-r--r--crates/notedeck_chrome/src/notedeck.rs202L
-rw-r--r--crates/notedeck_chrome/src/preview.rs110L
-rw-r--r--crates/notedeck_chrome/src/setup.rs79L
-rw-r--r--crates/notedeck_chrome/src/theme.rs132L
-rw-r--r--crates/notedeck_columns/Cargo.toml57L
-rw-r--r--crates/notedeck_columns/build.rs10L
-rw-r--r--crates/notedeck_columns/src/abbrev.rs20L
-rw-r--r--crates/notedeck_columns/src/accounts/mod.rs122L
-rw-r--r--crates/notedeck_columns/src/accounts/route.rs13L
-rw-r--r--crates/notedeck_columns/src/actionbar.rs162L
-rw-r--r--crates/notedeck_columns/src/app.rs728L
-rw-r--r--crates/notedeck_columns/src/app_creation.rs1L
-rw-r--r--crates/notedeck_columns/src/app_style.rs13L
-rw-r--r--crates/notedeck_columns/src/args.rs159L
-rw-r--r--crates/notedeck_columns/src/colors.rs5L
-rw-r--r--crates/notedeck_columns/src/column.rs224L
-rw-r--r--crates/notedeck_columns/src/deck_state.rs64L
-rw-r--r--crates/notedeck_columns/src/decks.rs326L
-rw-r--r--crates/notedeck_columns/src/draft.rs46L
-rw-r--r--crates/notedeck_columns/src/error.rs31L
-rw-r--r--crates/notedeck_columns/src/frame_history.rs50L
-rw-r--r--crates/notedeck_columns/src/images.rs257L
-rw-r--r--crates/notedeck_columns/src/key_parsing.rs235L
-rw-r--r--crates/notedeck_columns/src/lib.rs47L
-rw-r--r--crates/notedeck_columns/src/login_manager.rs186L
-rw-r--r--crates/notedeck_columns/src/multi_subscriber.rs143L
-rw-r--r--crates/notedeck_columns/src/nav.rs422L
-rw-r--r--crates/notedeck_columns/src/notes_holder.rs220L
-rw-r--r--crates/notedeck_columns/src/post.rs122L
-rw-r--r--crates/notedeck_columns/src/profile.rs133L
-rw-r--r--crates/notedeck_columns/src/relay_pool_manager.rs54L
-rw-r--r--crates/notedeck_columns/src/route.rs220L
-rw-r--r--crates/notedeck_columns/src/storage/decks.rs820L
-rw-r--r--crates/notedeck_columns/src/storage/migration.rs697L
-rw-r--r--crates/notedeck_columns/src/storage/mod.rs5L
-rw-r--r--crates/notedeck_columns/src/subscriptions.rs32L
-rw-r--r--crates/notedeck_columns/src/support.rs148L
-rw-r--r--crates/notedeck_columns/src/test_data.rs109L
-rw-r--r--crates/notedeck_columns/src/test_utils.rs36L
-rw-r--r--crates/notedeck_columns/src/thread.rs93L
-rw-r--r--crates/notedeck_columns/src/timeline/kind.rs280L
-rw-r--r--crates/notedeck_columns/src/timeline/mod.rs721L
-rw-r--r--crates/notedeck_columns/src/timeline/route.rs178L
-rw-r--r--crates/notedeck_columns/src/ui/account_login_view.rs133L
-rw-r--r--crates/notedeck_columns/src/ui/accounts.rs192L
-rw-r--r--crates/notedeck_columns/src/ui/add_column.rs590L
-rw-r--r--crates/notedeck_columns/src/ui/anim.rs138L
-rw-r--r--crates/notedeck_columns/src/ui/column/header.rs297L
-rw-r--r--crates/notedeck_columns/src/ui/column/mod.rs3L
-rw-r--r--crates/notedeck_columns/src/ui/configure_deck.rs330L
-rw-r--r--crates/notedeck_columns/src/ui/edit_deck.rs91L
-rw-r--r--crates/notedeck_columns/src/ui/mention.rs114L
-rw-r--r--crates/notedeck_columns/src/ui/mod.rs65L
-rw-r--r--crates/notedeck_columns/src/ui/note/contents.rs322L
-rw-r--r--crates/notedeck_columns/src/ui/note/context.rs194L
-rw-r--r--crates/notedeck_columns/src/ui/note/mod.rs670L
-rw-r--r--crates/notedeck_columns/src/ui/note/options.rs71L
-rw-r--r--crates/notedeck_columns/src/ui/note/post.rs305L
-rw-r--r--crates/notedeck_columns/src/ui/note/quote_repost.rs65L
-rw-r--r--crates/notedeck_columns/src/ui/note/reply.rs135L
-rw-r--r--crates/notedeck_columns/src/ui/note/reply_description.rs157L
-rw-r--r--crates/notedeck_columns/src/ui/preview.rs37L
-rw-r--r--crates/notedeck_columns/src/ui/profile/mod.rs93L
-rw-r--r--crates/notedeck_columns/src/ui/profile/picture.rs221L
-rw-r--r--crates/notedeck_columns/src/ui/profile/preview.rs332L
-rw-r--r--crates/notedeck_columns/src/ui/relay.rs214L
-rw-r--r--crates/notedeck_columns/src/ui/side_panel.rs640L
-rw-r--r--crates/notedeck_columns/src/ui/support.rs85L
-rw-r--r--crates/notedeck_columns/src/ui/thread.rs127L
-rw-r--r--crates/notedeck_columns/src/ui/timeline.rs299L
-rw-r--r--crates/notedeck_columns/src/ui/username.rs94L
-rw-r--r--crates/notedeck_columns/src/unknowns.rs69L
-rw-r--r--crates/notedeck_columns/src/view_state.rs19L
-rw-r--r--damus.keystore2726B
-rw-r--r--entitlements.plist12L
-rw-r--r--index.html140L
-rwxr-xr-xpreview4L
-rwxr-xr-xscripts/dev_setup.sh19L
-rwxr-xr-xscripts/macos_build.sh88L
-rw-r--r--scripts/pre_commit_hook.sh4L
-rwxr-xr-xscripts/svg_to_icns.sh59L
-rw-r--r--scripts/windows-installer.iss18L
-rw-r--r--shell.nix65L