├── .gitignore ├── .tool-versions ├── .vscode └── settings.json ├── Gemfile ├── Gemfile.lock ├── LICENSE ├── README.md ├── _config.yml ├── _data ├── clients │ ├── 0xchat.yml │ ├── Amethyst.yml │ ├── Arcade.yml │ ├── Blowater.yml │ ├── Coracle.yml │ ├── Current.yml │ ├── Damus.yml │ ├── Flycat.yml │ ├── FreeFrom.yml │ ├── Gossip.yml │ ├── Habla.yml │ ├── Iris.yml │ ├── Iris_old.yml │ ├── Listr.yml │ ├── Lume.yml │ ├── Nos.yml │ ├── Nostrmo.yml │ ├── Nostros.yml │ ├── Nostur.yml │ ├── Oddbean.yml │ ├── Plebstr.yml │ ├── Primal.yml │ ├── Rabbit.yml │ ├── Satellite.yml │ ├── Snort.yml │ ├── Voyage.yml │ ├── YakiHonne.yml │ ├── Zapddit.yml │ ├── noStrudel.yml │ ├── nostr_band.yml │ └── zap_stream.yml ├── features.yml └── order.yml ├── _includes ├── footer.html └── header.html ├── _layouts └── home.html ├── _sass └── minima │ └── _layout.scss └── index.md /.gitignore: -------------------------------------------------------------------------------- 1 | .gitattributes 2 | .jekyll-cache 3 | .jekyll-metadata 4 | .sass-cache 5 | _site 6 | vendor 7 | -------------------------------------------------------------------------------- /.tool-versions: -------------------------------------------------------------------------------- 1 | ruby 3.2.2 2 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "markdownlint.config": { 3 | "MD033": false, 4 | "MD041": false, 5 | } 6 | } -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | # Hello! This is where you manage which Jekyll version is used to run. 3 | # When you want to use a different version, change it below, save the 4 | # file and run `bundle install`. Run Jekyll with `bundle exec`, like so: 5 | # 6 | # bundle exec jekyll serve 7 | # 8 | # This will help ensure the proper Jekyll version is running. 9 | # Happy Jekylling! 10 | # gem "jekyll", "~> 4.3.2" 11 | # This is the default theme for new Jekyll sites. You may change this to anything you like. 12 | # gem "minima", "~> 2.5" 13 | # If you want to use GitHub Pages, remove the "gem "jekyll"" above and 14 | # uncomment the line below. To upgrade, run `bundle update github-pages`. 15 | gem "github-pages", "~> 228", group: :jekyll_plugins 16 | gem "webrick", "~> 1.8" 17 | # If you have any plugins, put them here! 18 | group :jekyll_plugins do 19 | gem "jekyll-feed", "~> 0.12" 20 | end 21 | 22 | # Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem 23 | # and associated library. 24 | platforms :mingw, :x64_mingw, :mswin, :jruby do 25 | gem "tzinfo", ">= 1", "< 3" 26 | gem "tzinfo-data" 27 | end 28 | 29 | # Performance-booster for watching directories on Windows 30 | gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin] 31 | 32 | # Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem 33 | # do not have a Java counterpart. 34 | gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby] 35 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GEM 2 | remote: https://rubygems.org/ 3 | specs: 4 | activesupport (7.0.8) 5 | concurrent-ruby (~> 1.0, >= 1.0.2) 6 | i18n (>= 1.6, < 2) 7 | minitest (>= 5.1) 8 | tzinfo (~> 2.0) 9 | addressable (2.8.5) 10 | public_suffix (>= 2.0.2, < 6.0) 11 | base64 (0.1.1) 12 | coffee-script (2.4.1) 13 | coffee-script-source 14 | execjs 15 | coffee-script-source (1.11.1) 16 | colorator (1.1.0) 17 | commonmarker (0.23.10) 18 | concurrent-ruby (1.2.2) 19 | dnsruby (1.70.0) 20 | simpleidn (~> 0.2.1) 21 | em-websocket (0.5.3) 22 | eventmachine (>= 0.12.9) 23 | http_parser.rb (~> 0) 24 | ethon (0.16.0) 25 | ffi (>= 1.15.0) 26 | eventmachine (1.2.7) 27 | execjs (2.9.1) 28 | faraday (2.7.11) 29 | base64 30 | faraday-net_http (>= 2.0, < 3.1) 31 | ruby2_keywords (>= 0.0.4) 32 | faraday-net_http (3.0.2) 33 | ffi (1.16.2) 34 | forwardable-extended (2.6.0) 35 | gemoji (3.0.1) 36 | github-pages (228) 37 | github-pages-health-check (= 1.17.9) 38 | jekyll (= 3.9.3) 39 | jekyll-avatar (= 0.7.0) 40 | jekyll-coffeescript (= 1.1.1) 41 | jekyll-commonmark-ghpages (= 0.4.0) 42 | jekyll-default-layout (= 0.1.4) 43 | jekyll-feed (= 0.15.1) 44 | jekyll-gist (= 1.5.0) 45 | jekyll-github-metadata (= 2.13.0) 46 | jekyll-include-cache (= 0.2.1) 47 | jekyll-mentions (= 1.6.0) 48 | jekyll-optional-front-matter (= 0.3.2) 49 | jekyll-paginate (= 1.1.0) 50 | jekyll-readme-index (= 0.3.0) 51 | jekyll-redirect-from (= 0.16.0) 52 | jekyll-relative-links (= 0.6.1) 53 | jekyll-remote-theme (= 0.4.3) 54 | jekyll-sass-converter (= 1.5.2) 55 | jekyll-seo-tag (= 2.8.0) 56 | jekyll-sitemap (= 1.4.0) 57 | jekyll-swiss (= 1.0.0) 58 | jekyll-theme-architect (= 0.2.0) 59 | jekyll-theme-cayman (= 0.2.0) 60 | jekyll-theme-dinky (= 0.2.0) 61 | jekyll-theme-hacker (= 0.2.0) 62 | jekyll-theme-leap-day (= 0.2.0) 63 | jekyll-theme-merlot (= 0.2.0) 64 | jekyll-theme-midnight (= 0.2.0) 65 | jekyll-theme-minimal (= 0.2.0) 66 | jekyll-theme-modernist (= 0.2.0) 67 | jekyll-theme-primer (= 0.6.0) 68 | jekyll-theme-slate (= 0.2.0) 69 | jekyll-theme-tactile (= 0.2.0) 70 | jekyll-theme-time-machine (= 0.2.0) 71 | jekyll-titles-from-headings (= 0.5.3) 72 | jemoji (= 0.12.0) 73 | kramdown (= 2.3.2) 74 | kramdown-parser-gfm (= 1.1.0) 75 | liquid (= 4.0.4) 76 | mercenary (~> 0.3) 77 | minima (= 2.5.1) 78 | nokogiri (>= 1.13.6, < 2.0) 79 | rouge (= 3.26.0) 80 | terminal-table (~> 1.4) 81 | github-pages-health-check (1.17.9) 82 | addressable (~> 2.3) 83 | dnsruby (~> 1.60) 84 | octokit (~> 4.0) 85 | public_suffix (>= 3.0, < 5.0) 86 | typhoeus (~> 1.3) 87 | html-pipeline (2.14.3) 88 | activesupport (>= 2) 89 | nokogiri (>= 1.4) 90 | http_parser.rb (0.8.0) 91 | i18n (1.14.1) 92 | concurrent-ruby (~> 1.0) 93 | jekyll (3.9.3) 94 | addressable (~> 2.4) 95 | colorator (~> 1.0) 96 | em-websocket (~> 0.5) 97 | i18n (>= 0.7, < 2) 98 | jekyll-sass-converter (~> 1.0) 99 | jekyll-watch (~> 2.0) 100 | kramdown (>= 1.17, < 3) 101 | liquid (~> 4.0) 102 | mercenary (~> 0.3.3) 103 | pathutil (~> 0.9) 104 | rouge (>= 1.7, < 4) 105 | safe_yaml (~> 1.0) 106 | jekyll-avatar (0.7.0) 107 | jekyll (>= 3.0, < 5.0) 108 | jekyll-coffeescript (1.1.1) 109 | coffee-script (~> 2.2) 110 | coffee-script-source (~> 1.11.1) 111 | jekyll-commonmark (1.4.0) 112 | commonmarker (~> 0.22) 113 | jekyll-commonmark-ghpages (0.4.0) 114 | commonmarker (~> 0.23.7) 115 | jekyll (~> 3.9.0) 116 | jekyll-commonmark (~> 1.4.0) 117 | rouge (>= 2.0, < 5.0) 118 | jekyll-default-layout (0.1.4) 119 | jekyll (~> 3.0) 120 | jekyll-feed (0.15.1) 121 | jekyll (>= 3.7, < 5.0) 122 | jekyll-gist (1.5.0) 123 | octokit (~> 4.2) 124 | jekyll-github-metadata (2.13.0) 125 | jekyll (>= 3.4, < 5.0) 126 | octokit (~> 4.0, != 4.4.0) 127 | jekyll-include-cache (0.2.1) 128 | jekyll (>= 3.7, < 5.0) 129 | jekyll-mentions (1.6.0) 130 | html-pipeline (~> 2.3) 131 | jekyll (>= 3.7, < 5.0) 132 | jekyll-optional-front-matter (0.3.2) 133 | jekyll (>= 3.0, < 5.0) 134 | jekyll-paginate (1.1.0) 135 | jekyll-readme-index (0.3.0) 136 | jekyll (>= 3.0, < 5.0) 137 | jekyll-redirect-from (0.16.0) 138 | jekyll (>= 3.3, < 5.0) 139 | jekyll-relative-links (0.6.1) 140 | jekyll (>= 3.3, < 5.0) 141 | jekyll-remote-theme (0.4.3) 142 | addressable (~> 2.0) 143 | jekyll (>= 3.5, < 5.0) 144 | jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0) 145 | rubyzip (>= 1.3.0, < 3.0) 146 | jekyll-sass-converter (1.5.2) 147 | sass (~> 3.4) 148 | jekyll-seo-tag (2.8.0) 149 | jekyll (>= 3.8, < 5.0) 150 | jekyll-sitemap (1.4.0) 151 | jekyll (>= 3.7, < 5.0) 152 | jekyll-swiss (1.0.0) 153 | jekyll-theme-architect (0.2.0) 154 | jekyll (> 3.5, < 5.0) 155 | jekyll-seo-tag (~> 2.0) 156 | jekyll-theme-cayman (0.2.0) 157 | jekyll (> 3.5, < 5.0) 158 | jekyll-seo-tag (~> 2.0) 159 | jekyll-theme-dinky (0.2.0) 160 | jekyll (> 3.5, < 5.0) 161 | jekyll-seo-tag (~> 2.0) 162 | jekyll-theme-hacker (0.2.0) 163 | jekyll (> 3.5, < 5.0) 164 | jekyll-seo-tag (~> 2.0) 165 | jekyll-theme-leap-day (0.2.0) 166 | jekyll (> 3.5, < 5.0) 167 | jekyll-seo-tag (~> 2.0) 168 | jekyll-theme-merlot (0.2.0) 169 | jekyll (> 3.5, < 5.0) 170 | jekyll-seo-tag (~> 2.0) 171 | jekyll-theme-midnight (0.2.0) 172 | jekyll (> 3.5, < 5.0) 173 | jekyll-seo-tag (~> 2.0) 174 | jekyll-theme-minimal (0.2.0) 175 | jekyll (> 3.5, < 5.0) 176 | jekyll-seo-tag (~> 2.0) 177 | jekyll-theme-modernist (0.2.0) 178 | jekyll (> 3.5, < 5.0) 179 | jekyll-seo-tag (~> 2.0) 180 | jekyll-theme-primer (0.6.0) 181 | jekyll (> 3.5, < 5.0) 182 | jekyll-github-metadata (~> 2.9) 183 | jekyll-seo-tag (~> 2.0) 184 | jekyll-theme-slate (0.2.0) 185 | jekyll (> 3.5, < 5.0) 186 | jekyll-seo-tag (~> 2.0) 187 | jekyll-theme-tactile (0.2.0) 188 | jekyll (> 3.5, < 5.0) 189 | jekyll-seo-tag (~> 2.0) 190 | jekyll-theme-time-machine (0.2.0) 191 | jekyll (> 3.5, < 5.0) 192 | jekyll-seo-tag (~> 2.0) 193 | jekyll-titles-from-headings (0.5.3) 194 | jekyll (>= 3.3, < 5.0) 195 | jekyll-watch (2.2.1) 196 | listen (~> 3.0) 197 | jemoji (0.12.0) 198 | gemoji (~> 3.0) 199 | html-pipeline (~> 2.2) 200 | jekyll (>= 3.0, < 5.0) 201 | kramdown (2.3.2) 202 | rexml 203 | kramdown-parser-gfm (1.1.0) 204 | kramdown (~> 2.0) 205 | liquid (4.0.4) 206 | listen (3.8.0) 207 | rb-fsevent (~> 0.10, >= 0.10.3) 208 | rb-inotify (~> 0.9, >= 0.9.10) 209 | mercenary (0.3.6) 210 | mini_portile2 (2.8.4) 211 | minima (2.5.1) 212 | jekyll (>= 3.5, < 5.0) 213 | jekyll-feed (~> 0.9) 214 | jekyll-seo-tag (~> 2.1) 215 | minitest (5.20.0) 216 | nokogiri (1.15.4) 217 | mini_portile2 (~> 2.8.2) 218 | racc (~> 1.4) 219 | octokit (4.25.1) 220 | faraday (>= 1, < 3) 221 | sawyer (~> 0.9) 222 | pathutil (0.16.2) 223 | forwardable-extended (~> 2.6) 224 | public_suffix (4.0.7) 225 | racc (1.7.1) 226 | rb-fsevent (0.11.2) 227 | rb-inotify (0.10.1) 228 | ffi (~> 1.0) 229 | rexml (3.2.6) 230 | rouge (3.26.0) 231 | ruby2_keywords (0.0.5) 232 | rubyzip (2.3.2) 233 | safe_yaml (1.0.5) 234 | sass (3.7.4) 235 | sass-listen (~> 4.0.0) 236 | sass-listen (4.0.0) 237 | rb-fsevent (~> 0.9, >= 0.9.4) 238 | rb-inotify (~> 0.9, >= 0.9.7) 239 | sawyer (0.9.2) 240 | addressable (>= 2.3.5) 241 | faraday (>= 0.17.3, < 3) 242 | simpleidn (0.2.1) 243 | unf (~> 0.1.4) 244 | terminal-table (1.8.0) 245 | unicode-display_width (~> 1.1, >= 1.1.1) 246 | typhoeus (1.4.0) 247 | ethon (>= 0.9.0) 248 | tzinfo (2.0.6) 249 | concurrent-ruby (~> 1.0) 250 | unf (0.1.4) 251 | unf_ext 252 | unf_ext (0.0.8.2) 253 | unicode-display_width (1.8.0) 254 | webrick (1.8.1) 255 | 256 | PLATFORMS 257 | ruby 258 | 259 | DEPENDENCIES 260 | github-pages (~> 228) 261 | http_parser.rb (~> 0.6.0) 262 | jekyll-feed (~> 0.12) 263 | tzinfo (>= 1, < 3) 264 | tzinfo-data 265 | wdm (~> 0.1.1) 266 | webrick (~> 1.8) 267 | 268 | BUNDLED WITH 269 | 2.4.20 270 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 nostorg 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Viewing 2 | 3 | View the deployed webpage [here](https://nostorg.github.io/clients/) or via the link in the sidebar. 4 | 5 | ## Contributing 6 | 7 | Where to make changes: 8 | 9 | - [landing page](index.md) 10 | - [feature columns](_data/features.yml) 11 | - [client row order](_data/order.yml) 12 | - [client info & features](_data/clients/) 13 | 14 | Serve locally for testing: 15 | 16 | ```bash 17 | brew install asdf 18 | asdf plugin add ruby 19 | asdf install # install ruby from .tool-versions 20 | asdf exec bundle install # install from gemfile 21 | asdf exec jekyll serve 22 | ``` 23 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | title: Feature Matrix for Nostr Clients 2 | # baseurl: "" # the subpath of your site, e.g. /blog 3 | # url: "" # the base hostname & protocol for your site, e.g. http://example.com 4 | 5 | remote_theme: jekyll/minima@2863624b903b17f838d6ce8d2f77900fa9d3c864 6 | plugins: 7 | - jekyll-remote-theme 8 | 9 | minima: 10 | skin: auto 11 | social_links: 12 | - { platform: github, user_url: "https://github.com/nostorg" } 13 | 14 | exclude: 15 | - README.md 16 | - vendor 17 | 18 | -------------------------------------------------------------------------------- /_data/clients/0xchat.yml: -------------------------------------------------------------------------------- 1 | alias: 0xchat 2 | site: https://0xchat.com/ 3 | repo: https://github.com/0xchat-app/0xchat-core 4 | latest: 1.1.4 5 | purpose: Chat 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: ✅ 25 | eventDeletion: 26 | zaps: 27 | reactions: 28 | customEmoji: 29 | microblogging: ❌ 30 | directMessage: ✅ 31 | chatrooms: ✅ 32 | communities: 33 | longform: 34 | report: 35 | mute: 36 | pins: 37 | bookmarks: 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Amethyst.yml: -------------------------------------------------------------------------------- 1 | alias: Amethyst 2 | site: https://amethyst.social/ 3 | repo: https://github.com/vitorpamplona/amethyst 4 | latest: 0.79.2 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ✅ 15 | eventRelays: 🟡 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: ❌ 19 | followHashtag: ✅ 20 | localFeeds: ✅ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ✅ 23 | machineTranslation: ✅ 24 | pushNotification: ✅ 25 | eventDeletion: ✅ 26 | zaps: ✅ 27 | reactions: ✅ 28 | customEmoji: 🟡 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ✅ 32 | communities: ✅ 33 | longform: ✅ 34 | report: ✅ 35 | mute: ✅ 36 | pins: ❌ 37 | bookmarks: ✅ 38 | badges: ✅ 39 | search: ✅ 40 | contentWarning: ✅ 41 | subjectTag: ✅ 42 | liveStreaming: ✅ 43 | liveStatus: ✅ 44 | classifieds: ✅ 45 | calendarEvents: ❌ 46 | marketplaces: ❌ 47 | walletConnect: ✅ 48 | nostrConnect: ❌ 49 | mnemonicSeed: ❌ 50 | proofOfWork: ❌ 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Arcade.yml: -------------------------------------------------------------------------------- 1 | alias: Arcade 2 | site: https://thearcapp.com/ 3 | repo: https://github.com/ArcadeLabsInc/arcade 4 | latest: 0.3.2 (1) 5 | purpose: Chat 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: '?' 25 | eventDeletion: 26 | zaps: ❌ 27 | reactions: ❌ 28 | customEmoji: 29 | microblogging: ❌ 30 | directMessage: ✅ 31 | chatrooms: ✅ 32 | communities: 33 | longform: 34 | report: ❌ 35 | mute: ❌ 36 | pins: 37 | bookmarks: 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Blowater.yml: -------------------------------------------------------------------------------- 1 | alias: Blowater 2 | site: https://blowater.app/ 3 | repo: https://github.com/BlowaterNostr/blowater 4 | latest: (2023-10-21) 5 | purpose: Chat 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: 15 | eventRelays: 16 | relayList: 17 | relayInfo: 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: 🟡 25 | eventDeletion: ❌ 26 | zaps: ❌ 27 | reactions: ❌ 28 | customEmoji: ❌ 29 | microblogging: ❌ 30 | directMessage: ✅ 31 | chatrooms: '?' 32 | communities: 33 | longform: 34 | report: 35 | mute: 36 | pins: 37 | bookmarks: 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Coracle.yml: -------------------------------------------------------------------------------- 1 | alias: Coracle 2 | site: https://coracle.social/ 3 | repo: https://github.com/coracle-social/coracle 4 | latest: 0.3.10 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ✅ 15 | eventRelays: 🟡 16 | relayList: ✅ 17 | relayInfo: 🟡 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: ✅ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ✅ 23 | machineTranslation: ❌ 24 | pushNotification: 25 | eventDeletion: ❌ 26 | zaps: ✅ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ✅ 34 | report: ❌ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: ✅ 41 | subjectTag: ❌ 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: ✅ 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: ✅ 52 | -------------------------------------------------------------------------------- /_data/clients/Current.yml: -------------------------------------------------------------------------------- 1 | alias: Current 2 | site: https://app.getcurrent.io/ 3 | repo: https://github.com/starbackr-com/current 4 | latest: 0.1.4 (3) 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ✅⚡ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: ❌ 17 | relayInfo: ❌ 18 | json: ❌ 19 | followHashtag: ❌ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: ✅⚡ 25 | eventDeletion: ❌ 26 | zaps: ✅⚡ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: 34 | report: ✅ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ✅ 39 | search: 🟡 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: ✅ 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Damus.yml: -------------------------------------------------------------------------------- 1 | alias: Damus 2 | site: https://damus.io/ 3 | repo: https://github.com/damus-io/damus 4 | latest: 1.6 (23) 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: ✅ 19 | followHashtag: ✅ 20 | localFeeds: ✅ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ✅ 23 | machineTranslation: 🟡 24 | pushNotification: 🟡 25 | eventDeletion: ❌ 26 | zaps: ✅ 27 | reactions: ✅ 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ✅ 34 | report: ✅ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: 🟡 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: ❌ 41 | subjectTag: ❌ 42 | liveStreaming: ❌ 43 | liveStatus: ✅ 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Flycat.yml: -------------------------------------------------------------------------------- 1 | alias: Flycat 2 | site: https://flycat.club/ 3 | repo: https://github.com/digi-monkey/flycat-web 4 | latest: 0.2.0 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 🟡 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: ✅ 19 | followHashtag: ✅ 20 | localFeeds: ✅ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: 25 | eventDeletion: ❌ 26 | zaps: 🟡 27 | reactions: ❌ 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: ✅ 33 | longform: ✅ 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: '?' 38 | badges: ❌ 39 | search: ✅ 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/FreeFrom.yml: -------------------------------------------------------------------------------- 1 | alias: FreeFrom 2 | site: https://freefrom.space/ 3 | repo: 4 | latest: 1.1.5 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: 19 | followHashtag: ❌ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ❌ 23 | machineTranslation: 🟡 24 | pushNotification: 🟡 25 | eventDeletion: 🟡 26 | zaps: ❌ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ✅ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: 39 | search: ✅ 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Gossip.yml: -------------------------------------------------------------------------------- 1 | alias: Gossip 2 | site: 3 | repo: https://github.com/mikedilger/gossip 4 | latest: 0.8.1 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ✅ 9 | linuxApp: ✅ 10 | macApp: ✅ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 🟡 16 | relayList: ✅ 17 | relayInfo: ✅ 18 | json: ✅ 19 | followHashtag: ❌ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: 🟡 26 | zaps: 🟡 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: 🟡 34 | report: ❌ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: ✅ 41 | subjectTag: ✅ 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 🟡 49 | mnemonicSeed: 50 | proofOfWork: ✅ 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Habla.yml: -------------------------------------------------------------------------------- 1 | alias: Habla 2 | site: https://habla.news/ 3 | repo: https://github.com/verbiricha/habla.news 4 | latest: (2023-10-15) 5 | purpose: Articles 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: ✅ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: ❌ 26 | zaps: 🟡 27 | reactions: ❌ 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: 🟡 33 | longform: ✅ 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: ✅ 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Iris.yml: -------------------------------------------------------------------------------- 1 | alias: Iris 2 | site: https://iris.to/ 3 | repo: https://git.v0l.io/mmalmi/snort 4 | latest: '?' 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: '?' 13 | integratedWallet: ❌ 14 | multipleAccounts: '?' 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: 19 | followHashtag: 20 | localFeeds: ✅ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: 23 | machineTranslation: '?' 24 | pushNotification: 25 | eventDeletion: 🟡 26 | zaps: ✅ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ❌ 35 | mute: 🟡 36 | pins: 🟡 37 | bookmarks: 🟡 38 | badges: ✅ 39 | search: ✅ 40 | contentWarning: ✅ 41 | subjectTag: ❌ 42 | liveStreaming: '?' 43 | classifieds: 44 | calendarEvents: 45 | marketplaces: 46 | walletConnect: 47 | nostrConnect: 48 | mnemonicSeed: 49 | proofOfWork: 50 | relayReviews: 51 | -------------------------------------------------------------------------------- /_data/clients/Iris_old.yml: -------------------------------------------------------------------------------- 1 | alias: Iris (old) 2 | site: https://old.iris.to/ 3 | repo: https://github.com/irislib/iris-messenger 4 | latest: 0.2.1 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ✅ 9 | linuxApp: ✅ 10 | macApp: ✅ 11 | iosApp: ❌ 12 | androidApp: '?' 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 🟡 16 | relayList: ❌ 17 | relayInfo: 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ✅ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: 🟡 26 | zaps: ✅ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ✅ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: ✅ 40 | contentWarning: ❌ 41 | subjectTag: ❌ 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Listr.yml: -------------------------------------------------------------------------------- 1 | alias: Listr 2 | site: https://listr.lol/ 3 | repo: https://github.com/erskingardner/listr 4 | latest: 2.0.0 5 | purpose: Lists 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: ✅ 17 | relayInfo: 🟡 18 | json: ❌ 19 | followHashtag: ❌ 20 | localFeeds: 🟡 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ❌ 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: 🟡 26 | zaps: 🟡 27 | reactions: 🟡 28 | customEmoji: 29 | microblogging: 30 | directMessage: 31 | chatrooms: 32 | communities: 33 | longform: 34 | report: 35 | mute: ✅ 36 | pins: ✅ 37 | bookmarks: ✅ 38 | badges: 39 | search: ✅ 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Lume.yml: -------------------------------------------------------------------------------- 1 | alias: Lume 2 | site: https://lume.nu/ 3 | repo: https://github.com/luminous-devs/lume 4 | latest: 1.1.1 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ✅ 9 | linuxApp: ✅ 10 | macApp: ✅ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 🟡 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: ❌ 19 | followHashtag: ✅ 20 | localFeeds: ✅ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: 25 | eventDeletion: 26 | zaps: ✅ 27 | reactions: ✅ 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: 33 | longform: 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: ❌ 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: ✅ 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Nos.yml: -------------------------------------------------------------------------------- 1 | alias: Nos 2 | site: https://www.nos.social/ 3 | repo: https://github.com/planetary-social/nos 4 | latest: 0.1 (81) 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: 🟡 25 | eventDeletion: 🟡 26 | zaps: ❌ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: 🟡 34 | report: ✅ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Nostrmo.yml: -------------------------------------------------------------------------------- 1 | alias: Nostrmo 2 | site: https://github.com/haorendashu/nostrmo_faq 3 | repo: https://github.com/haorendashu/nostrmo 4 | latest: 1.8.0 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ✅ 9 | linuxApp: ❌ 10 | macApp: ✅ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ✅ 15 | eventRelays: 🟡 16 | relayList: 🟡 17 | relayInfo: 18 | json: ✅ 19 | followHashtag: ✅ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ✅ 23 | machineTranslation: ✅ 24 | pushNotification: ❌ 25 | eventDeletion: ✅ 26 | zaps: ✅ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: 33 | longform: 34 | report: '?' 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Nostros.yml: -------------------------------------------------------------------------------- 1 | alias: Nostros 2 | site: 3 | repo: https://github.com/KoalaSat/nostros 4 | latest: 0.3.2.5 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: 15 | eventRelays: 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: 26 | zaps: ✅ 27 | reactions: 28 | customEmoji: 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: 33 | longform: 34 | report: 35 | mute: 36 | pins: 37 | bookmarks: ✅ 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Nostur.yml: -------------------------------------------------------------------------------- 1 | alias: Nostur 2 | site: https://nostur.com/ 3 | repo: https://github.com/nostur-com/nostur-ios-public 4 | latest: 1.8.0 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ✅ 11 | iosApp: ✅ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ✅ 15 | eventRelays: ✅ 16 | relayList: ❌ 17 | relayInfo: ❌ 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: ✅ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ✅ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: ✅ 26 | zaps: ✅ 27 | reactions: ✅ 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ✅ 34 | report: ✅ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: 🟡 38 | badges: ✅ 39 | search: ✅ 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Oddbean.yml: -------------------------------------------------------------------------------- 1 | alias: Oddbean 2 | site: https://oddbean.com/ 3 | repo: 4 | latest: (2023-10-10) 5 | purpose: Aggregator 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: ❌ 17 | relayInfo: ❌ 18 | json: ✅ 19 | followHashtag: ❌ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: ❌ 26 | zaps: 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ❌ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: 34 | report: '?' 35 | mute: 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: 39 | search: ❌ 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Plebstr.yml: -------------------------------------------------------------------------------- 1 | alias: Plebstr 2 | site: https://plebstr.com/ 3 | repo: 4 | latest: 0.7.6 (56) 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: ❌ 26 | zaps: 🟡 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: 34 | report: ✅ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Primal.yml: -------------------------------------------------------------------------------- 1 | alias: Primal 2 | site: https://primal.net/ 3 | repo: https://github.com/PrimalHQ 4 | latest: 0.81.3 (web) 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ✅ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: ❌ 18 | json: ✅ 19 | followHashtag: ✅ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ✅ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: ❌ 26 | zaps: 🟡 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ✅ 35 | mute: ✅ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: ✅ 40 | contentWarning: ❌ 41 | subjectTag: ❌ 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Rabbit.yml: -------------------------------------------------------------------------------- 1 | alias: Rabbit 2 | site: https://rabbit.syusui.net/ 3 | repo: https://github.com/syusui-s/rabbit 4 | latest: (2024-01-21) 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: ❌ 17 | relayInfo: ❌ 18 | json: ✅ 19 | followHashtag: ✅ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: 🟡 26 | zaps: 🟡 27 | reactions: ✅ 28 | customEmoji: 🟡 29 | microblogging: ✅ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ❌ 35 | mute: 🟡 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: ✅ 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Satellite.yml: -------------------------------------------------------------------------------- 1 | alias: Satellite 2 | site: https://satellite.earth/ 3 | repo: https://github.com/lovvtide/satellite-web 4 | latest: (2023-10-15) 5 | purpose: Communities 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: ❌ 17 | relayInfo: ❌ 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: 23 | machineTranslation: ❌ 24 | pushNotification: 25 | eventDeletion: ✅ 26 | zaps: 🟡 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ✅ 33 | longform: ❌ 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: 🟡 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Snort.yml: -------------------------------------------------------------------------------- 1 | alias: Snort 2 | site: https://snort.social/ 3 | repo: https://git.v0l.io/Kieran/snort 4 | latest: 0.1.12 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: '?⚡' 15 | eventRelays: ❌ 16 | relayList: 🟡 17 | relayInfo: ✅ 18 | json: 19 | followHashtag: 20 | localFeeds: ✅ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: 23 | machineTranslation: '?⚡' 24 | pushNotification: 25 | eventDeletion: 🟡 26 | zaps: ✅ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ❌ 35 | mute: 🟡 36 | pins: 🟡 37 | bookmarks: 🟡 38 | badges: ✅ 39 | search: ✅ 40 | contentWarning: ✅ 41 | subjectTag: ❌ 42 | liveStreaming: '?' 43 | classifieds: 44 | calendarEvents: 45 | marketplaces: 46 | walletConnect: 47 | nostrConnect: ✅ 48 | mnemonicSeed: 49 | proofOfWork: 50 | relayReviews: 51 | -------------------------------------------------------------------------------- /_data/clients/Voyage.yml: -------------------------------------------------------------------------------- 1 | alias: Voyage 2 | site: 3 | repo: https://github.com/dluvian/voyage 4 | latest: 0.4.0 5 | purpose: Microblogging 6 | features: 7 | webApp: ❌ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ✅ 13 | integratedWallet: ❌ 14 | multipleAccounts: 🟡 15 | eventRelays: ❌ 16 | relayList: ✅ 17 | relayInfo: ✅ 18 | json: ❌ 19 | followHashtag: ✅ 20 | localFeeds: ❌ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ❌ 23 | machineTranslation: ❌ 24 | pushNotification: ❌ 25 | eventDeletion: ✅ 26 | zaps: ❌ 27 | reactions: ✅ 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: ❌ 33 | longform: ❌ 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: ❌ 39 | search: ❌ 40 | contentWarning: ❌ 41 | subjectTag: ✅ 42 | liveStreaming: ❌ 43 | liveStatus: ❌ 44 | classifieds: ❌ 45 | calendarEvents: ❌ 46 | marketplaces: ❌ 47 | walletConnect: ❌ 48 | nostrConnect: ❌ 49 | mnemonicSeed: 🟡 50 | proofOfWork: ❌ 51 | relayReviews: ❌ 52 | -------------------------------------------------------------------------------- /_data/clients/YakiHonne.yml: -------------------------------------------------------------------------------- 1 | alias: YakiHonne 2 | site: https://yakihonne.com/ 3 | repo: 4 | latest: (2023-10-15) 5 | purpose: Articles 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: 🟡 26 | zaps: 27 | reactions: 28 | customEmoji: ❌ 29 | microblogging: 30 | directMessage: 31 | chatrooms: 32 | communities: 33 | longform: ✅ 34 | report: 35 | mute: 36 | pins: 37 | bookmarks: 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/Zapddit.yml: -------------------------------------------------------------------------------- 1 | alias: Zapddit 2 | site: https://zapddit.com/ 3 | repo: https://github.com/vivganes/zapddit 4 | latest: (2023-10-15) 5 | purpose: Communities 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ❌ 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: 26 | zaps: ✅ 27 | reactions: 🟡 28 | customEmoji: ❌ 29 | microblogging: ✅ 30 | directMessage: ❌ 31 | chatrooms: ❌ 32 | communities: ✅ 33 | longform: ❌ 34 | report: ❌ 35 | mute: ❌ 36 | pins: ❌ 37 | bookmarks: ❌ 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/noStrudel.yml: -------------------------------------------------------------------------------- 1 | alias: noStrudel 2 | site: https://nostrudel.ninja/ 3 | repo: https://github.com/hzrd149/nostrudel 4 | latest: (2023-10-10) 5 | purpose: Microblogging 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ✅ 15 | eventRelays: ✅ 16 | relayList: ✅ 17 | relayInfo: ✅ 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: ✅ 21 | algorithmicFeeds: ❌ 22 | rebroadcast: ✅ 23 | machineTranslation: ❌ 24 | pushNotification: 25 | eventDeletion: 🟡 26 | zaps: ✅ 27 | reactions: ✅ 28 | customEmoji: ✅ 29 | microblogging: ✅ 30 | directMessage: 🟡 31 | chatrooms: ❌ 32 | communities: ✅ 33 | longform: 🟡 34 | report: ❌ 35 | mute: ✅ 36 | pins: 🟡 37 | bookmarks: ✅ 38 | badges: ✅ 39 | search: 🟡 40 | contentWarning: ✅ 41 | subjectTag: ❌ 42 | liveStreaming: ✅ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: ✅ 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: ✅ 52 | -------------------------------------------------------------------------------- /_data/clients/nostr_band.yml: -------------------------------------------------------------------------------- 1 | alias: nostr.band 2 | site: https://nostr.band/ 3 | repo: https://github.com/nostrband/nostr-band-app 4 | latest: '?' 5 | purpose: Search Index 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: ✅ 16 | relayList: ✅ 17 | relayInfo: 18 | json: ✅ 19 | followHashtag: 20 | localFeeds: ❌ 21 | algorithmicFeeds: ✅ 22 | rebroadcast: ❌ 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: ❌ 26 | zaps: ✅ 27 | reactions: 28 | customEmoji: ❌ 29 | microblogging: 30 | directMessage: 31 | chatrooms: 32 | communities: 33 | longform: 🟡 34 | report: 35 | mute: 36 | pins: 37 | bookmarks: 38 | badges: 39 | search: ✅ 40 | contentWarning: ❌ 41 | subjectTag: ❌ 42 | liveStreaming: ❌ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: ✅ 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/clients/zap_stream.yml: -------------------------------------------------------------------------------- 1 | alias: zap.stream 2 | site: https://zap.stream/ 3 | repo: 4 | latest: '?' 5 | purpose: Live Streaming 6 | features: 7 | webApp: ✅ 8 | windowsApp: ❌ 9 | linuxApp: ❌ 10 | macApp: ❌ 11 | iosApp: ❌ 12 | androidApp: ❌ 13 | integratedWallet: ❌ 14 | multipleAccounts: ❌ 15 | eventRelays: 16 | relayList: 17 | relayInfo: 18 | json: 19 | followHashtag: 20 | localFeeds: 21 | algorithmicFeeds: 22 | rebroadcast: 23 | machineTranslation: 24 | pushNotification: 25 | eventDeletion: 26 | zaps: ✅ 27 | reactions: ✅ 28 | customEmoji: 29 | microblogging: ❌ 30 | directMessage: ✅ 31 | chatrooms: ❌ 32 | communities: 33 | longform: ❌ 34 | report: ❌ 35 | mute: 🟡 36 | pins: 37 | bookmarks: 38 | badges: 39 | search: 40 | contentWarning: 41 | subjectTag: 42 | liveStreaming: ✅ 43 | liveStatus: 44 | classifieds: 45 | calendarEvents: 46 | marketplaces: 47 | walletConnect: 48 | nostrConnect: 49 | mnemonicSeed: 50 | proofOfWork: 51 | relayReviews: 52 | -------------------------------------------------------------------------------- /_data/features.yml: -------------------------------------------------------------------------------- 1 | webApp: Web App 2 | windowsApp: Windows App 3 | linuxApp: Linux App 4 | macApp: Mac App 5 | iosApp: iOS App 6 | androidApp: Android App 7 | integratedWallet: Integrated Wallet 8 | multipleAccounts: Multiple Accounts 9 | eventRelays: Event Relays 10 | relayList: Relay List (65) 11 | relayInfo: Relay Info (11) 12 | json: Access JSON 13 | followHashtag: Follow Hashtags 14 | localFeeds: Local Feeds 15 | algorithmicFeeds: Algorithmic Feeds 16 | rebroadcast: Rebroadcast 17 | machineTranslation: Machine Translation 18 | pushNotification: Push Notification 19 | eventDeletion: Event Deletion (9) 20 | zaps: Zaps (57) 21 | reactions: Reactions (25) 22 | customEmoji: Custom Emoji (30) 23 | microblogging: Microblogging [1] 24 | directMessage: Direct Message (4) 25 | chatrooms: Chat Rooms (28) 26 | communities: Communities (172) 27 | longform: Long-form Content (23) 28 | report: Report (56) 29 | mute: Mute (51) [10000] 30 | pins: Pins (51) [10001] 31 | bookmarks: Bookmarks (51) [30001] 32 | badges: Badges (58) 33 | search: Search (50) 34 | contentWarning: Content Warning (36) 35 | subjectTag: Subject Tag (14) 36 | liveStreaming: Live Streaming (53) 37 | liveStatus: Live Status (38) 38 | classifieds: Classifieds (99) 39 | calendarEvents: Calendar Events (52) 40 | marketplaces: Marketplaces (15) 41 | walletConnect: Wallet Connect (47) 42 | nostrConnect: Nostr Connect (46) 43 | mnemonicSeed: Mnemonic Seed (6) 44 | proofOfWork: Proof of Work (13) 45 | relayReviews: Relay Reviews (32) [1985] 46 | -------------------------------------------------------------------------------- /_data/order.yml: -------------------------------------------------------------------------------- 1 | - Gossip 2 | - Lume 3 | - Amethyst 4 | - Nostros 5 | - Plebstr 6 | - Current 7 | - Damus 8 | - Nos 9 | - Nostur 10 | - Primal 11 | - Nostrmo 12 | - Iris_old 13 | - Iris 14 | - Snort 15 | - Coracle 16 | - noStrudel 17 | - Flycat 18 | - Rabbit 19 | - FreeFrom 20 | - Satellite 21 | - Zapddit 22 | - Habla 23 | - YakiHonne 24 | - Oddbean 25 | - nostr_band 26 | - zap_stream 27 | - Arcade 28 | - 0xchat 29 | - Blowater 30 | - Listr 31 | - Voyage 32 | -------------------------------------------------------------------------------- /_includes/footer.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_includes/header.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_layouts/home.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: base 3 | --- 4 | 5 |
6 | {%- if page.title -%} 7 | 8 | {%- endif -%} 9 | 10 | {{ content }} 11 | 12 | 13 | {% if site.paginate %} 14 | {% assign posts = paginator.posts %} 15 | {% else %} 16 | {% assign posts = site.posts %} 17 | {% endif %} 18 | 19 | 20 | {%- if posts.size > 0 -%} 21 | {%- if page.list_title -%} 22 |

{{ page.list_title }}

23 | {%- endif -%} 24 | 40 | 41 | {% if site.paginate %} 42 |
43 | 56 |
57 | {%- endif %} 58 | 59 | {%- endif -%} 60 | 61 |
-------------------------------------------------------------------------------- /_sass/minima/_layout.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Site header 3 | */ 4 | .site-header { 5 | // border-top: 5px solid $border-color-03; 6 | border-bottom: 1px solid $border-color-01; 7 | min-height: $spacing-unit * 1.865; 8 | line-height: $base-line-height * $base-font-size * 2.25; 9 | 10 | // Positioning context for the mobile navigation icon 11 | position: relative; 12 | } 13 | 14 | .site-title { 15 | @include relative-font-size(1.625); 16 | font-weight: 300; 17 | letter-spacing: -1px; 18 | margin-bottom: 0; 19 | float: left; 20 | 21 | @include media-query($on-palm) { 22 | padding-right: 45px; 23 | } 24 | 25 | &, 26 | &:visited { 27 | color: $site-title-color; 28 | } 29 | } 30 | 31 | .site-nav { 32 | position: absolute; 33 | top: 9px; 34 | right: $spacing-unit * .5; 35 | background-color: $background-color; 36 | border: 1px solid $border-color-01; 37 | border-radius: 5px; 38 | text-align: right; 39 | 40 | .nav-trigger { 41 | display: none; 42 | } 43 | 44 | .menu-icon { 45 | float: right; 46 | width: 36px; 47 | height: 26px; 48 | line-height: 0; 49 | padding-top: 10px; 50 | text-align: center; 51 | 52 | > svg path { 53 | fill: $border-color-03; 54 | } 55 | } 56 | 57 | label[for="nav-trigger"] { 58 | display: block; 59 | float: right; 60 | width: 36px; 61 | height: 36px; 62 | z-index: 2; 63 | cursor: pointer; 64 | } 65 | 66 | input ~ .trigger { 67 | clear: both; 68 | display: none; 69 | } 70 | 71 | input:checked ~ .trigger { 72 | display: block; 73 | padding-bottom: 5px; 74 | } 75 | 76 | .page-link { 77 | color: $text-color; 78 | line-height: $base-line-height; 79 | display: block; 80 | padding: 5px 10px; 81 | 82 | // Gaps between nav items, but not on the last one 83 | &:not(:last-child) { 84 | margin-right: 0; 85 | } 86 | margin-left: 20px; 87 | } 88 | 89 | @media screen and (min-width: $on-medium) { 90 | position: static; 91 | float: right; 92 | border: none; 93 | background-color: inherit; 94 | 95 | label[for="nav-trigger"] { 96 | display: none; 97 | } 98 | 99 | .menu-icon { 100 | display: none; 101 | } 102 | 103 | input ~ .trigger { 104 | display: block; 105 | } 106 | 107 | .page-link { 108 | display: inline; 109 | padding: 0; 110 | 111 | &:not(:last-child) { 112 | margin-right: 20px; 113 | } 114 | margin-left: auto; 115 | } 116 | } 117 | } 118 | 119 | 120 | 121 | /** 122 | * Site footer 123 | */ 124 | .site-footer { 125 | border-top: 1px solid $border-color-01; 126 | padding: $spacing-unit 0; 127 | } 128 | 129 | .footer-heading { 130 | @include relative-font-size(1.125); 131 | margin-bottom: $spacing-unit * .5; 132 | } 133 | 134 | .feed-subscribe .svg-icon { 135 | padding: 5px 5px 2px 0 136 | } 137 | 138 | .contact-list, 139 | .social-media-list { 140 | list-style: none; 141 | margin-left: 0; 142 | } 143 | 144 | .footer-col-wrapper, 145 | .social-links { 146 | @include relative-font-size(0.9375); 147 | color: $brand-color; 148 | } 149 | 150 | .footer-col { 151 | margin-bottom: $spacing-unit * .5; 152 | } 153 | 154 | .footer-col-1, 155 | .footer-col-2 { 156 | width: calc(50% - (#{$spacing-unit} / 2)); 157 | } 158 | 159 | .footer-col-3 { 160 | width: calc(100% - (#{$spacing-unit} / 2)); 161 | } 162 | 163 | @media screen and (min-width: $on-large) { 164 | .footer-col-1 { 165 | width: calc(35% - (#{$spacing-unit} / 2)); 166 | } 167 | 168 | .footer-col-2 { 169 | width: calc(20% - (#{$spacing-unit} / 2)); 170 | } 171 | 172 | .footer-col-3 { 173 | width: calc(45% - (#{$spacing-unit} / 2)); 174 | } 175 | } 176 | 177 | @media screen and (min-width: $on-medium) { 178 | .footer-col-wrapper { 179 | display: flex 180 | } 181 | 182 | .footer-col { 183 | width: calc(100% - (#{$spacing-unit} / 2)); 184 | padding: 0 ($spacing-unit * .5); 185 | 186 | &:first-child { 187 | padding-right: $spacing-unit * .5; 188 | padding-left: 0; 189 | } 190 | 191 | &:last-child { 192 | padding-right: 0; 193 | padding-left: $spacing-unit * .5; 194 | } 195 | } 196 | } 197 | 198 | 199 | 200 | /** 201 | * Page content 202 | */ 203 | .page-content { 204 | padding: $spacing-unit 0; 205 | flex: 1 0 auto; 206 | } 207 | 208 | .page-heading { 209 | @include relative-font-size(2); 210 | } 211 | 212 | .post-list-heading { 213 | @include relative-font-size(1.75); 214 | } 215 | 216 | .post-list { 217 | margin-left: 0; 218 | list-style: none; 219 | 220 | > li { 221 | margin-bottom: $spacing-unit; 222 | } 223 | } 224 | 225 | .post-meta { 226 | font-size: $small-font-size; 227 | color: $brand-color; 228 | } 229 | 230 | .post-link { 231 | display: block; 232 | @include relative-font-size(1.5); 233 | } 234 | 235 | 236 | 237 | /** 238 | * Posts 239 | */ 240 | .post-header { 241 | margin-bottom: $spacing-unit; 242 | } 243 | 244 | .post-title, 245 | .post-content h1 { 246 | @include relative-font-size(2.625); 247 | letter-spacing: -1px; 248 | line-height: 1.15; 249 | 250 | @media screen and (min-width: $on-large) { 251 | @include relative-font-size(2.625); 252 | } 253 | } 254 | 255 | .post-content { 256 | margin-bottom: $spacing-unit; 257 | 258 | h1, h2, h3, h4, h5, h6 { margin-top: $spacing-unit } 259 | 260 | h2 { 261 | @include relative-font-size(1.75); 262 | 263 | @media screen and (min-width: $on-large) { 264 | @include relative-font-size(2); 265 | } 266 | } 267 | 268 | h3 { 269 | @include relative-font-size(1.375); 270 | 271 | @media screen and (min-width: $on-large) { 272 | @include relative-font-size(1.625); 273 | } 274 | } 275 | 276 | h4 { 277 | @include relative-font-size(1.25); 278 | } 279 | 280 | h5 { 281 | @include relative-font-size(1.125); 282 | } 283 | h6 { 284 | @include relative-font-size(1.0625); 285 | } 286 | } 287 | 288 | 289 | .social-media-list { 290 | display: table; 291 | margin: 0 auto; 292 | li { 293 | float: left; 294 | margin: 5px 10px 5px 0; 295 | &:last-of-type { margin-right: 0 } 296 | a { 297 | display: block; 298 | padding: 10px 12px; 299 | border: 1px solid $border-color-01; 300 | &:hover { border-color: $border-color-02 } 301 | } 302 | } 303 | } 304 | 305 | 306 | 307 | /** 308 | * Pagination navbar 309 | */ 310 | .pagination { 311 | margin-bottom: $spacing-unit; 312 | @extend .social-media-list; 313 | li { 314 | a, div { 315 | min-width: 41px; 316 | text-align: center; 317 | box-sizing: border-box; 318 | } 319 | div { 320 | display: block; 321 | padding: $spacing-unit * .25; 322 | border: 1px solid transparent; 323 | 324 | &.pager-edge { 325 | color: $border-color-01; 326 | border: 1px dashed; 327 | } 328 | } 329 | } 330 | } 331 | 332 | 333 | 334 | /** 335 | * Grid helpers 336 | */ 337 | @media screen and (min-width: $on-large) { 338 | .one-half { 339 | width: calc(50% - (#{$spacing-unit} / 2)); 340 | } 341 | } 342 | 343 | 344 | 345 | /** 346 | * Big table, breakout from container, freeze row/column 347 | */ 348 | .bigtable { 349 | // Allow content to break out from div container 350 | // https://stackoverflow.com/a/37964247 351 | margin:1em -99%; /* old browsers fallback */ 352 | margin:1em calc(50% - 45vw); 353 | margin-top: 50px; 354 | margin-bottom: 50px; 355 | overflow: auto; 356 | height: 700px; 357 | } 358 | 359 | // freeze first column 360 | .bigtable td:first-child { 361 | position: sticky; 362 | left: 0; 363 | background-color: $background-color; 364 | } 365 | 366 | // freeze first row 367 | .bigtable th { 368 | position: sticky; 369 | top: 0; 370 | z-index: 1; 371 | } 372 | 373 | // freeze overlapping corner region 374 | .bigtable th:first-child { 375 | position: sticky; 376 | top: 0; 377 | left: 0; 378 | z-index: 2; 379 | } 380 | -------------------------------------------------------------------------------- /index.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: home 3 | --- 4 | 5 | Compendium of nostr clients and known features. 6 | 7 | Contribute on github: <{{ site.github.repository_url }}> 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | {% for feature in site.data.features %} 20 | 21 | {% endfor %} 22 | 23 | 24 | 25 | {% for client_order in site.data.order %} 26 | {% for client_hash in site.data.clients %} 27 | {% if client_hash[0] == client_order %} 28 | {% assign client = client_hash[1] %} 29 | 30 | 31 | {% if client.site %} 32 | 33 | {% else %} 34 | 35 | {% endif %} 36 | 37 | 38 | 39 | 40 | {% for feature_head in site.data.features %} 41 | 48 | {% endfor %} 49 | 50 | {% endif %} 51 | {% endfor %} 52 | {% endfor %} 53 | 54 |
Client \ Feature (NIP) [Kind]Source RepositoryLast Reviewed Version/DatePrimary Purpose{{ feature[1] }}
{{ client.alias }}{{ client.alias }}{{ client.repo | split: "://" | last | split: "/" | first }}{{ client.latest }}{{ client.purpose }} 42 | {% for feature_client in client.features %} 43 | {% if feature_client[0] == feature_head[0] %} 44 | {{ feature_client[1] }} 45 | {% endif %} 46 | {% endfor %} 47 |
55 |
56 | 57 | ## Legend 58 | 59 | - [NIPs](https://github.com/nostr-protocol/nips) 60 | - ✅ : mostly supported 61 | - 🟡 : partially supported 62 | - ❌ : mostly not supported 63 | - ⚡ : paid feature 64 | - `?` : reviewed but inconclusive 65 | -   : not yet reviewed 66 | 67 | ## Criteria for ✅ 68 | 69 | Any column with at least one 🟡 entry should have some criteria listed here. 70 | 71 | - Zaps: Can view who zapped what amounts on notes; can zap notes and profiles via integrated wallet, external application, or QR code. 72 | - Reactions: Can view who reacted with which reactions; can react with any unicode emoji. 73 | - Event Deletion: Can delete own notes and undo reactions by deletion. 74 | - Direct Messages: Can view and decrypt all past conversations; can encrypt and send new messages. 75 | - Local Feeds: Can view all recent notes from connected relays and filter by relay. 76 | - Algorithmic Feeds: Can view custom feeds determined by some open source or configurable algorithm (e.g. "trending"). 77 | - Mute List: Reads from and writes to the kind 10000 list, not a kind 30000 parameterized list. 78 | - Pins: Reads from and writes to the kind 10001 list, not a kind 30001 parameterized list. 79 | - Bookmarks: Reads from and writes to a kind 30001 parameterized list. 80 | - Relay List: Reads from and writes to the kind 10002 relay list; DOES NOT write relay list changes to the kind 3 contact list; shows relay lists for other users; can toggle read/write access for each connected relay. 81 | - Event Relays: Shows all connected relays where an event exists. 82 | - Relay Info: Shows all available relay metadata for all connected relays. 83 | - Long-form Content: Properly renders markdown; updated events are fully replaced or the update history is clearly indicated. 84 | - Search: On connected relays, returns any existing user by username or NIP-05, and returns any existing note by content. 85 | - Push Notifications: Received on device without requiring the client software to be actively running. 86 | - Machine Translation: Can do offline translation of notes with configurable language models. 87 | - Multiple Accounts: Saves multiple profiles to switch between views or logins for multiple accounts with public keys, private keys, or extension (NIP-07). 88 | 89 | Has a fully native desktop macOS app, not just a mobile app that can run on Apple Silicon. 90 | 91 | ## Similar projects 92 | 93 | - 94 | - 95 | - [Nostr Client Comparison Sheet (Google Docs)](https://docs.google.com/spreadsheets/d/1GjfN_eMiEywqXfKFHZMw4rLnoQLBXYEyl2NCEtsCXWw/edit) 96 | - 97 | - 98 | - 99 | - 100 | --------------------------------------------------------------------------------