Skip to content

Thunder - An open-source cross-platform Lemmy client for iOS and Android built with Flutter

License

Notifications You must be signed in to change notification settings

TheOkayJK/thunder

 
 

Repository files navigation


Thunder
Thunder

An open source, cross-platform Lemmy client built with Flutter

License Forks Platforms

FeaturesRoadmap

ContributingBuilding From SourceConventionsRelated Packages


Home Feed Spark Sidebar

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.

As the sole maintainer of this project, progress might be a bit slow. But hey, here's where you can make a difference! Whether you're proficient at Flutter and Dart, or just simply interested in the project, I would be absolutely thrilled if you could lend a hand and contribute.

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


Releases

Note: As this is still in alpha and WIP, releases will happen through GitHub. There are no plans at the moment to release to Google Play store (and derivatives) or Apple's TestFlight. However, this may change in the future as more progress is made.

All releases will be held in the Releases section under the corresponding version.

  • For iOS users, you can install Thunder using AltStore
  • For Android users, simply install Thunder with the provided APK file.

Features

Thunder is currently undergoing active 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. The next section summarizes the features that are currently implemented.

Communities

  • Browse community posts
  • Search for communities from the current instance (and subscribe)
  • Browse subscriptions if logged in

Posts

  • See a specific post and its associated comments
  • Infinite scrolling for posts
  • Infinite scrolling for comments

Authentication

  • Single account login with instance

Theme & Customization

  • Basic settings

Roadmap

The current focus is to provide a MVP to be able to do basic tasks, including

  • browsing through posts, comments, communities and feeds (all, hot, new, etc.)
  • authenticating with your account and seeing subscriptions
  • searching for communities, and basic interaction with them (subscribing to communities, upvoting/downvoting posts, replying to comments)

Contributing

Contributions are always welcome! To contribute potential features or bug-fixes:

  1. Fork this repository
  2. Apply any changes and/or additions
  3. Create a pull request to have your changes reviewed and merged

Building From Source

Installing Flutter and Related Dependencies

Thunder is developed with Flutter, and is built to support both iOS and Android.

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

  1. Set up and install Flutter.
  2. Clone this repository and fetch the dependencies using flutter pub get
  3. Run the appropriate build command depending on the platform.
    • iOS: flutter build ios --release --no-tree-shake-icons
    • Android: flutter build apk --release --no-tree-shake-icons

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!

Related Packages

Thunder uses the following packages and libraries under the hood. This is not an exhaustive list.

Custom Built Libraries

lemmy-dart - custom-built Lemmy library built in Dart

About

Thunder - An open-source cross-platform Lemmy client for iOS and Android built with Flutter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 75.3%
  • C++ 11.0%
  • CMake 8.8%
  • Ruby 2.1%
  • Swift 1.1%
  • HTML 0.9%
  • Other 0.8%