1
4
Fork
You've already forked pferd
1
No description
  • Dart 82.7%
  • JavaScript 14.2%
  • C++ 1.1%
  • CMake 0.8%
  • Ruby 0.3%
  • Other 0.8%
Find a file
2025年06月13日 22:31:19 +02:00
.github Use new name in Issue Templates 2025年02月11日 12:31:44 +00:00
.vscode Misc: automatically sort and generate metadata for l10n strings ( #1294 ) 2024年04月11日 11:24:40 -07:00
android Changes req'd for APK build 2025年02月16日 12:00:58 +00:00
assets Change from 'thunder' to 'pferd' 2025年02月11日 12:20:48 +00:00
docker Added compatibility with Flutter 3.19 ( #1167 ) 2024年03月05日 09:44:42 -08:00
docs updated screenshots 2023年09月13日 12:40:55 -07:00
drift_schemas Fix database migration logic ( #1501 ) 2024年07月17日 12:32:52 -07:00
fastlane Move fastlane directory ( #1148 ) 2024年02月27日 08:29:34 -08:00
fonts Add bot identifier 2023年08月15日 00:05:00 -04:00
ios Use alternative video player for general videos ( #1466 ) 2024年08月22日 12:33:30 -07:00
lib Change default anonymous instance 2025年02月18日 19:13:38 +00:00
linux Change from 'thunder' to 'pferd' 2025年02月11日 12:20:48 +00:00
macos Autogen'd by flutter 2024年09月10日 19:44:40 +01:00
scripts Change from 'thunder' to 'pferd' 2025年02月11日 12:20:48 +00:00
test Change from 'thunder' to 'pferd' 2025年02月11日 12:20:48 +00:00
web Added web compatibility - build and run docker container ( #943 ) 2023年12月03日 13:00:00 -08:00
windows Change from 'thunder' to 'pferd' 2025年02月11日 12:20:48 +00:00
.dockerignore Fix CI for Flutter 3.16.9 and update docker builds ( #1137 ) 2024年02月28日 07:40:55 -08:00
.gitignore Put untranslated message info into text file 2024年09月10日 18:39:35 +01:00
.gitmodules Change from 'thunder' to 'pferd' 2025年02月11日 12:20:48 +00:00
.metadata initial commit 2023年06月11日 09:03:47 -07:00
analysis_options.yaml Fix CI ( #1414 ) 2024年06月02日 20:06:35 -07:00
CHANGELOG.md Add experimental support for video player ( #1081 ) 2024年05月16日 08:45:03 -07:00
CODE_OF_CONDUCT.md CODE_OF_CONDUCT.md 2023年10月04日 08:06:00 -07:00
devtools_options.yaml Image and video player improvements ( #1369 ) 2024年05月23日 18:02:42 +03:00
flutter_launcher_icons-development.yaml Add development flavor ( #1214 ) 2024年03月20日 16:43:31 -07:00
flutter_launcher_icons-production.yaml Add development flavor ( #1214 ) 2024年03月20日 16:43:31 -07:00
l10n.yaml Put untranslated message info into text file 2024年09月10日 18:39:35 +01:00
LICENSE Improve selection of text when creating post/comment ( #1359 ) 2024年05月13日 13:32:49 -07:00
PRIVACY_POLICY.md Update PRIVACY_POLICY.md 2023年07月10日 09:50:29 -07:00
pubspec.yaml Change default anonymous instance 2025年02月18日 19:13:38 +00:00
README.md Fix README 2025年02月11日 14:41:19 +00:00

Pferd

Pferd

An app for PieFed. Forked from Thunder app at https://github.com/thunder-app/thunder

To compile and run on Windows, it should just be:

  1. git clone https://codeberg.org/freamon/pferd
  2. cd pferd
  3. flutter pub get
  4. flutter run -d windows

Original README.md from Thunder is below:


Thunder

An open source, cross-platform (iOS & Android) Lemmy client built with Flutter


Lemmy matrix chat

FeaturesRoadmapContributingTranslationsBuilding From SourceConventions


Comments Card View Compact View Customizability

Hey there! Just wanted to let you know that this repo is currently my personal side project to build something cool while learning about Dart and Flutter.

Contributions to this project are always welcomed, and in fact, even strongly encouraged here! Since I am only able to work on this during my spare time, any contributions from the community is valuable. If you are a developer, feel free to tackle any issues present.

Your passion, contributions, and ideas would be greatly appreciated! Together, let's make this project shine. 🚀 💻


Releases

Android

General releases can be obtained officially through Google Play Store, IzzyOnDroid, or through GitHub releases.

Pre-releases are available in the Releases section under the corresponding version. You can also use Obtainium.

iOS

General releases can be obtained officially through App Store, or through GitHub releases.

Pre-releases are available through TestFlight. An alternative is to download the corresponding IPA file in the Releases section and install it through AltStore.

Features

Thunder is currently undergoing active alpha development, and it is possible that not all features have been fully implemented at this stage. Due to this, significant breaking changes may occur between versions.

This is a non-exhaustive list of features that Thunder currently supports:

🏡 Communities & Users

  • Browse general feeds (All / Local / Subscribed)
  • View, subscribe, favorite, and block communities
  • View user posts/comments, and block unwanted users

🌎 Instances

  • View instance information and version
  • Block unwanted instances (on supported instances)
  • Show trending communities on the current instance
  • Search for communities, users, posts and comments
  • Apply advanced search filters (sort, feed, community, creator)

🗒️ Posts & Comments

  • Create and edit posts and comments
  • Vote, save, and share posts and comments
  • Customize swipe actions for posts and comments
  • Filter posts based on keywords

🔑 Accounts

  • View profile information (posts/comments/saved)
  • View notifications including replies, mentions, and private messages
  • Synced account settings (show read posts, comment scores, bot accounts)
  • Support for multiple accounts, and guest accounts on different instances

🎨 Customization

  • Support for Material You theming (on applicable devices)
  • Support for light/dark/OLED/system mode, and preset accent colors
  • Custom font scaling of content
  • Customize and preview post/comment appearance (compact/card)

🎉 Extras

  • Import and export app settings
  • In-app update notifications for new GitHub releases
  • Language support via community translations (Weblate)

Roadmap

The current focus is to continue to expand on the general functionality and stability of Thunder. This includes but is not limited to:

  • Continued improvements to localization and language support via Weblate
  • Improvements to moderation/admin capabilities
  • Improvements to embedded content (video, images, etc.)
  • Improvements to push notification functionality

Contributing

Contributions are always welcome, but please abide by our community code of conduct!

To contribute potential features or bug-fixes:

  1. Fork this repository, and clone with submodules: git clone --recurse-submodules -j8 git@github.com:thunder-app/thunder.git
  2. Base the feature or fix off the develop branch. This is to allow for pre-release versions without affecting the main general releases.
  3. Apply any changes and/or additions based off an existing issue (or create a new issue for the feature/fix you are working on)
  4. Create a pull request to have your changes reviewed and merged

Translations

Interested in translating Thunder? We use Weblate to crowdsource translations, so anyone can create an account and contribute!

Building From Source

Thunder is developed with Flutter, and is built to support both iOS and Android. There may be unofficial support on other platforms but is not guaranteed at this time (Linux, Windows, MacOS)

To build the app from source, a few steps are required.

  1. Set up and install Flutter. For more information, visit https://docs.flutter.dev/get-started/install.
  2. Ensure that you are on Flutter's stable channel using flutter channel stable.
  3. Clone this repository and fetch the dependencies using flutter pub get
  4. Run flutter gen-l10n to generate the localization files.
  5. Optional: Run the build script using dart scripts/build.dart, which will build both the iOS and Android release versions. This step is only required if you want to build a release version of the app.

Building with Docker

Alternatively, you can skip the prerequisite setup and build the Android application via docker with a single command:

./scripts/docker-build-android.sh

Developing with Docker

You can also run your local development environment for Android via the Docker container, including connecting to ADB on the host machine.

./scripts/docker-dev-android.sh

Troubleshooting

Could not determine the dependencies of task ':unifiedpush_android:compileReleaseKotlin'.
> Cannot find a Java installation on your machine matching this tasks requirements: {languageVersion=8, vendor=any, implementation=vendor-specific}
 > No locally installed toolchains match and toolchain download repositories have not been configured.

Resolution: Ensure you have a valid Java 8 installation on your machine.

Conventions

While there are no specific conventions that must be followed, do try to follow best practices whenever possible.

Suggestions are always welcome to improve the code quality and architecture of the app!