Crescent is a FOSS client for the Revolt protocol, that aims to provide a streamlined chatting experience for both new and returning users by taking heavy inspiration from other chatting applications such as Signal, WhatsApp and Telegram.
The main goal of this project is to simplify chatting on Upryzing, by omitting Server support and focusing on direct messages and group chats, whilst also being snappy and lightweight.
Other goals include:
- Closely following Material design principles
- Supporting other Upryzing and Revolt instances
- Learn Kotlin, Jetpack and Android libraries and concepts
Crescent started as a port of the small hobby project called RevoltMini. As the name suggests, the client aimed to be a small and lightweight web app for revolt, as low-end devices can struggle loading the official web client, but ended up being discontinued after the codebase became a huge, unmaintainable mess.
After ending development, I wanted to give android app development a try. And what a better way to learn native development than to make a chat client using websockets. Hence, Crescent.
The name "Crescent" was chosen after a poll was held in Mastodon, with "Croissant" being another possible option. The logo also looks like a moon crescent.
As @lo2dev pointed out in a reply to a development screenshot showcasing the logo in-launcher:
I was thinking it represents a moon and it's parent planet, with the moon being your client, and the planet (being) revolt as a whole. Your client is the moon because it's small in scope.
Context (Requires having a revolt.chat account and joining the Catgirl Dungeon server)
This project is licensed under the GPLv3 License. See LICENCE.md for more information.