Flare is an open-source, privacy-first social client that brings Mastodon, Misskey, Bluesky, X, and RSS into one unified timeline. It supports cross-posting, lists, feeds, DMs, RSS management, and AI-powered features such as translation and summaries. Built with Kotlin Multiplatform, Flare shares its core logic across Android, iOS, macOS, Windows, and Linux, turning fragmented social feeds into a personal information hub.
- Unified social inbox: Flare brings Mastodon, Misskey, Bluesky, X, and RSS together in one place, so users can follow fragmented communities through a single timeline.
- Mixed timeline experience: It merges content from multiple accounts and platforms into a coherent feed, reducing context switching between apps.
- Cross-platform by design: Built with Kotlin Multiplatform, Flare shares core logic across Android, iOS, macOS, Windows, and Linux.
- Rich platform support: Beyond basic timelines, it supports features such as polls, lists, bookmarks/favorites, Misskey antennas, Bluesky feeds and DMs, and RSS management.
- Cross-posting workflow: Users can publish to multiple platforms at once, making it practical for creators and heavy social media users.
- AI-assisted reading: Flare includes AI-powered capabilities such as translation and summaries to help users catch up on content faster.
- Privacy-first approach: As a FOSS client, it emphasizes user control with features like anonymous mode, local filtering, local history, and transparent data handling.
Here're some features we're planning to implement in the future.
- Grouped Mixed timeline
- Showing instance's announcement
- Crossposting for repost
- Auto thread
- AI powered features
- Personal trends of the day
- Quick reply
- Support for Meta Threads
- Support for Discourse forum
- Desktop Client
- Web Client(?)
Here're some features we've done before.
- Mixed timeline
- AI powered features
- Translation
- Summary
- Anonymous mode enhancement, option to change data source
- Local history
- RSS feed support
- Support for vvo platform
- Anonymous mode, no need to login
- Customizable tabs
- Local filtering
- Crossposting
- Translation
- Support for polls
- Support global/local timelines
- Support for lists
- Support for bookmarks/faovrites timelines
- Support for polls
- Support for lists
- Support for antennas
- Support for faovrites timeline
- Support for lists
- Support for feeds
- Support DM
- Make sure you have JDK(JBR) 25 installed
- Run
./gradlew installDebugto build and install the debug version of the app - You can open the project in Android Studio or IntelliJ IDEA if you want
- Make sure you have JDK(JBR) 25 installed
- Make sure you have a Mac with Xcode 26 installed
- open
iosApp/Flare.xcodeprojin Xcode - Build and run the app
- Flare Server uses Ktor with Kotlin Native, which only works on Linux X64 and MacOS X64/ARM64
- Make sure you have JDK 25(JBR) installed
- Run
./gradlew :server:runDebugExecutableMacosArm64 -PrunArgs="--config-path=path/to/server/src/commonMain/resources/application.yaml"to build and run the server, remember to replacepath/to/server/src/commonMain/resources/application.yamlwith the path to your config file - The server will run on
http://localhost:8080by default
If you prefer using Docker, you can use Docker Compose to run prebuild Server Image.
- Rename
.env.sampleto.env, and update the environment variables in the file. - If you're deploying into a production server, you might need to update the
docker-compose.ymlfile with these lines:environment: - # STAGE: local + STAGE: 'production' - DOMAINS: api.flareapp.moe -> http://flare-backend:8080 + DOMAINS: your_domain_here -> http://flare-backend:8080
- Run
docker compose up -d
- Make sure you have JDK(JBR) 25 installed
- Run
./gradlew runto build and run the debug version of the desktop app.
See CONTRIBUTING.md for more information.
This project is licensed under the AGPL-3.0 license.