FastSMRW
A fast, accessible Mastodon/Bluesky client for blind users — C++ rewrite of FastSM with a portable core and a pure Win32 front end.
File Explorer
- build.yml
- boundary.ogg
- close.ogg
- delete.ogg
- error.ogg
- follow.ogg
- home.ogg
- image.ogg
- like.ogg
- likes.ogg
- list.ogg
- max_length.ogg
- media.ogg
- mention.ogg
- mentions.ogg
- messages.ogg
- new.ogg
- notification.ogg
- open.ogg
- pinned.ogg
- poll.ogg
- README.txt
- ready.ogg
- search.ogg
- send_message.ogg
- send_post.ogg
- send_reply.ogg
- send_repost.ogg
- unfollow.ogg
- unlike.ogg
- user.ogg
- volume_changed.ogg
- CMakeLists.txt
- fastsm_jni.cpp
- FastSmCore.kt
- FastSmNative.kt
- HttpBridge.kt
- ComposeScreen.kt
- AccountPicker.kt
- HomeScreen.kt
- MenuAction.kt
- StatusRow.kt
- MediaScreen.kt
- ProfileScreen.kt
- AccountSettingsScreen.kt
- SettingsScreen.kt
- AddAccountScreen.kt
- Color.kt
- Theme.kt
- Type.kt
- AddTimelineScreen.kt
- CoreViewModel.kt
- ProfileEditorDialog.kt
- ReportDialog.kt
- CustomTabs.kt
- MainActivity.kt
- strings.xml
- themes.xml
- AndroidManifest.xml
- build.gradle.kts
- gradle-wrapper.jar
- gradle-wrapper.properties
- libs.versions.toml
- .gitignore
- build.gradle.kts
- gradle.properties
- gradlew
- gradlew.bat
- settings.gradle.kts
- AppState.swift
- CoreClient.swift
- CoreEvents.swift
- Movement.swift
- Windows10.keymap
- Windows8.1.keymap
- boundary.ogg
- close.ogg
- delete.ogg
- error.ogg
- follow.ogg
- home.ogg
- image.ogg
- like.ogg
- likes.ogg
- list.ogg
- max_length.ogg
- media.ogg
- mention.ogg
- mentions.ogg
- messages.ogg
- new.ogg
- notification.ogg
- open.ogg
- pinned.ogg
- poll.ogg
- README.txt
- ready.ogg
- search.ogg
- send_message.ogg
- send_post.ogg
- send_reply.ogg
- send_repost.ogg
- unfollow.ogg
- unlike.ogg
- user.ogg
- volume_changed.ogg
- bluesky_auth.hpp
- mastodon_auth.hpp
- fastsm_core.h
- keymap.hpp
- card.hpp
- media.hpp
- models.hpp
- notification.hpp
- platform.hpp
- serialization.hpp
- server_filter.hpp
- status.hpp
- timeline_item.hpp
- user.hpp
- curl_http_client.hpp
- darwin_http_client.hpp
- http_client.hpp
- sse_parser.hpp
- winhttp_client.hpp
- bluesky_account.hpp
- bluesky_credentials.hpp
- bluesky_map.hpp
- bluesky_richtext.hpp
- mastodon_account.hpp
- mastodon_credentials.hpp
- mastodon_map.hpp
- social_account.hpp
- alias_store.hpp
- reply_helper.hpp
- speech_settings.hpp
- status_presenter.hpp
- main_executor.hpp
- worker_queue.hpp
- core_session.hpp
- sound_manager.hpp
- speaker.hpp
- account_store.hpp
- app_config.hpp
- app_settings.hpp
- dpapi.hpp
- paths.hpp
- settings_json.hpp
- timeline_cache.hpp
- timeline_codec.hpp
- client_filter.hpp
- movement.hpp
- streaming_client.hpp
- timeline_controller.hpp
- timeline_source.hpp
- update_checker.hpp
- base64.hpp
- date_parsing.hpp
- demojify.hpp
- html_stripper.hpp
- languages.hpp
- log.hpp
- quote_text.hpp
- relative_date.hpp
- url.hpp
- fastsm.hpp
- bluesky_auth.cpp
- mastodon_auth.cpp
- fastsm_core.cpp
- keymap.cpp
- serialization.cpp
- curl_http_client.cpp
- darwin_http_client.mm
- http_client.cpp
- sse_parser.cpp
- winhttp_client.cpp
- bluesky_account.cpp
- bluesky_map.cpp
- bluesky_richtext.cpp
- mastodon_account.cpp
- mastodon_map.cpp
- alias_store.cpp
- reply_helper.cpp
- speech_settings.cpp
- status_presenter.cpp
- worker_queue.cpp
- core_session.cpp
- sound_manager.cpp
- account_store.cpp
- app_config.cpp
- app_settings.cpp
- dpapi.cpp
- paths.cpp
- timeline_cache.cpp
- timeline_codec.cpp
- client_filter.cpp
- movement.cpp
- streaming_client.cpp
- timeline_controller.cpp
- update_checker.cpp
- base64.cpp
- date_parsing.cpp
- demojify.cpp
- html_stripper.cpp
- languages.cpp
- log.cpp
- quote_text.cpp
- relative_date.cpp
- url.cpp
- version.cpp
- changelog.txt
- smoke.py
- Contents.json
- icon-1024.png
- Contents.json
- AddAccountViewController.swift
- AppDelegate.swift
- ComposeViewController.swift
- DetailScreens.swift
- ErrorAlert.swift
- FastSMRW-Bridging-Header.h
- Info.plist
- MainViewController.swift
- ManagerScreens.swift
- MediaScreens.swift
- RootViewController.swift
- SceneDelegate.swift
- SettingsViewController.swift
- Speech.swift
- SpeechFieldsViewController.swift
- build.sh
- exportOptions.plist
- project.yml
- testflight.sh
- compose_dialog.cpp
- compose_dialog.hpp
- invisible_hotkeys.cpp
- invisible_hotkeys.hpp
- keymap_manager_dialog.cpp
- keymap_manager_dialog.hpp
- main.cpp
- main_window.cpp
- main_window.hpp
- media_player.cpp
- media_player.hpp
- post_info_dialog.cpp
- post_info_dialog.hpp
- report_dialog.cpp
- report_dialog.hpp
- settings_dialog.cpp
- settings_dialog.hpp
- speech.cpp
- speech.hpp
- speech_detail_dialog.cpp
- speech_detail_dialog.hpp
- user_profile_dialog.cpp
- user_profile_dialog.hpp
- build-core.sh
- build.sh
- fetch-deps.sh
- run-orca-wsl.sh
- AddAccountWindowController.swift
- AliasWindows.swift
- AppDelegate.swift
- AudioDevices.swift
- ClientFilterWindowController.swift
- ComposeWindowController.swift
- DetailDialogs.swift
- ErrorAlert.swift
- FastSMRW-Bridging-Header.h
- HashtagsAndListsWindows.swift
- Info.plist
- main.swift
- MainMenu.swift
- MainWindowController.swift
- MediaWindows.swift
- MentionPickerWindowController.swift
- MovementUnitsWindowController.swift
- NavigableTableView.swift
- NewTimelineWindowController.swift
- ServerFiltersWindows.swift
- SettingsWindowController.swift
- Speech.swift
- SpeechDetailsWindowController.swift
- TimelinesViewController.swift
- TimelineViewController.swift
- UserAnalysisWindowController.swift
- build-core.sh
- build.sh
- FastSMRW.entitlements
- fetch-deps.sh
- package-dmg.sh
- project.yml
- smoke_core.cpp
- check.hpp
- main.cpp
- test_auth.cpp
- test_bluesky_map.cpp
- test_bluesky_richtext.cpp
- test_capi.cpp
- test_filters.cpp
- test_keymap.cpp
- test_mastodon_map.cpp
- test_models.cpp
- test_presentation.cpp
- test_speech.cpp
- test_sse.cpp
- test_store.cpp
- test_thread.cpp
- test_timeline_refresh.cpp
- test_update.cpp
- test_util.cpp
- win7_banned_imports.txt
- app.manifest
- app.rc
- resource.h
- account_settings_dialog.cpp
- account_settings_dialog.hpp
- add_account_dialog.cpp
- add_account_dialog.hpp
- aliases_dialog.cpp
- aliases_dialog.hpp
- app_messages.hpp
- client_filters_dialog.cpp
- client_filters_dialog.hpp
- compose_dialog.cpp
- compose_dialog.hpp
- edit_profile_dialog.cpp
- edit_profile_dialog.hpp
- edit_util.hpp
- hashtag_dialog.cpp
- hashtag_dialog.hpp
- invisible_hotkeys.cpp
- invisible_hotkeys.hpp
- invisible_keyhook.cpp
- invisible_keyhook.hpp
- keymap_manager_dialog.cpp
- keymap_manager_dialog.hpp
- list_membership_dialog.cpp
- list_membership_dialog.hpp
- lists_manager_dialog.cpp
- lists_manager_dialog.hpp
- main.cpp
- main_window.cpp
- main_window.hpp
- media_player_window.cpp
- media_player_window.hpp
- new_timeline_dialog.cpp
- new_timeline_dialog.hpp
- post_info_dialog.cpp
- post_info_dialog.hpp
- report_dialog.cpp
- report_dialog.hpp
- server_filters_dialog.cpp
- server_filters_dialog.hpp
- settings_dialog.cpp
- settings_dialog.hpp
- user_analysis_dialog.cpp
- user_analysis_dialog.hpp
- user_profile_dialog.cpp
- user_profile_dialog.hpp
- utf.hpp
- win_speech.cpp
- win_speech.hpp
- .clang-format
- .gitattributes
- .gitignore
- build.bat
- CLAUDE.md
- download-deps.bat
- installer.iss
- README-Android.md
- README-iOS.md
- README-Linux.md
- README-macOS.md
- README-Windows.md
- README.md
# Use via CDN
jsDelivrjsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.
Command Glossary
Commands referenced in this DOCs, explained below.
brew install
View Details ▼
brew install
Install a Homebrew formula or cask.
brew install {{formula|cask}}
Install a formula/cask:
brew install {{[-s|--build-from-source]}} {{formula}}
Build and install a formula from source (dependencies will still be installed from bottles):
brew install {{[-n|--dry-run]}} {{formula|cask}}
Download the manifest, print what would be installed but don't actually install anything:
x86_64
View Details ▼
x86_64
This command is an alias of `setarch x86_64`.
tldr setarch
View documentation for the original command:
lib
View Details ▼
lib
The Microsoft Library Manager for creating and managing static libraries of object files.
lib /OUT :{{path\to\library.lib}} {{path\to\file1.obj path\to\file2.obj ...}}
Create a static library from object files:
lib /LIST {{path\to\library.lib}}
List the contents of a library:
lib {{path\to\library.lib}} {{path\to\file.obj}}
Add an object file to an existing library:
vswhere
View Details ▼
vswhere
Locate Visual Studio 2017 and newer installations.
vswhere -products * -latest -prerelease -find **\VC\Auxiliary\Build\vcvarsall.bat
Find the path of `vcvarsall.bat` to set environment variables:
vswhere -products * -latest -prerelease -find **\Hostx64\x64\*
Find the directory of the x64 MSVC compiler (`cl.exe`, etc):
vswhere -products * -latest -prerelease -find **\Llvm\bin\*
Find the directory of Clang bundled with Visual Studio bundled (clang-cl, clang-tidy, etc):
