This repository contains the source code for the Freedom secure communication platform, which consists of two main components: an Android client and a FastAPI server.
- Freedom-Android: A native Android application built with Kotlin and Jetpack Compose. It provides end-to-end encrypted messaging, group chats, and IP-to-IP calling.
- Freedom-server: A Python backend server built with FastAPI. It handles user authentication, WebSocket connections for real-time messaging, and WebRTC signaling for calls.
Freedom-Android/: Contains the source code for the Android mobile application.Freedom-server/: Contains the source code for the Python FastAPI backend server.
For detailed instructions on how to set up, configure, and run each component, please refer to the README.md file within each directory:
To get the server up and running quickly in a production-like environment using Docker, follow these steps:
- Navigate to the
Freedom-serverdirectory. - Copy the
.env.examplefile to.envand configure the variables. - Run
docker-compose -f docker-compose.prod.yml up --build -d.
To build the Android app, you will need the Android SDK.
- Navigate to the
Freedom-Androiddirectory. - Create a
local.propertiesfile with the path to your Android SDK (e.g.,sdk.dir=/path/to/your/sdk). - Run
./gradlew assembleDebug.
- This is NOT a Node.js project. Do not use
npmcommands. - Use Gradle for all Android development tasks.
- Use
pipanddocker-composefor Python server development.