Open-source, decentralized, self-managed community platform
Freedom of speech for everyone
Fr0g.site is a decentralized, open-source community platform based on blockchain technology and IPFS. The Flutter app enables users to share, comment on, and rate content - all without central control or censorship.
Key Features:
- π Decentralized: Based on blockchain and IPFS
- π Cross-Platform: Web, Android, iOS from a single codebase
- π Privacy: Private keys are stored locally
- π° Token Economy: ACT, FAME and TRUST tokens for various actions
- π³οΈ Community Governance: Self-management through Trusters and Block Producers
- π Multilingual: 14 languages supported
# 1. Clone repository
git clone https://github.com/fr0gsite/FlutterFr0g.git
cd FlutterFr0g
# 2. Install dependencies
flutter pub get
# 3. Start web version
flutter run -d chrome
# Alternative: Build APK for Android
flutter build apkPrerequisites:
- Flutter 3.35.5+
- Dart 3.9.2+
- Chrome/Chromium (for Web)
- Android Studio (for Android)
- Xcode (for iOS)
-
Install Flutter SDK:
# Via official Flutter website or git clone https://github.com/flutter/flutter.git -b stable export PATH="$PATH:`pwd`/flutter/bin"
-
Project Setup:
git clone https://github.com/fr0gsite/FlutterFr0g.git cd FlutterFr0g flutter pub get flutter doctor # Checks the installation
The app supports 14 languages. To add new translations:
# 1. Create ARB file
cp lib/l10n/app_en.arb lib/l10n/app_[LANGUAGE_CODE].arb
# 2. Add translations
# 3. Generate localizations
flutter gen-l10n# Production web build
flutter build web --release
# Create Docker image
docker build -t fr0gsite-flutter .
# Start container
docker run -p 80:80 fr0gsite-flutter| File | Purpose |
|---|---|
lib/config.dart |
Main configuration, URLs, blockchain nodes |
lib/config_debug.dart |
Debug login credentials (not versioned) |
pubspec.yaml |
Dependencies and app metadata |
analysis_options.yaml |
Dart linting rules |
l10n.yaml |
Internationalization configuration |
# Web Integration Tests (Chrome required)
flutter drive \
--driver=test_driver/integration_test.dart \
--target=integration_test/web_app_test.dart \
-d chrome
# Android Integration Tests
flutter drive \
--driver=test_driver/integration_test.dart \
--target=integration_test/app_test.dart \
-d androidflutter test --coverage
genhtml coverage/lcov.info -o coverage/htmlWe welcome contributions! Here's how you can help:
-
Fork & Clone
git clone https://github.com/YOUR_USERNAME/FlutterFr0g.git cd FlutterFr0g -
Create Branch
git checkout -b feature/new-feature
-
Develop & Test
flutter test flutter analyze -
Create Pull Request
| Area | Description | Difficulty |
|---|---|---|
| π Translations | Add new languages | Easy |
| π Bug Fixes | Issues from tracker | Easy-Medium |
| π¨ UI/UX | Design improvements | Medium |
| β‘ Performance | Optimizations | Medium-Hard |
| π Blockchain | Smart contract integration | Hard |
- Dart Style: Use
dart format - Linting:
flutter analyzemust be clean - Tests: New features need tests
- Documentation: Code should be documented
# 1. Create ARB file for your language
cp lib/l10n/app_en.arb lib/l10n/app_[YOUR_LANGUAGE_CODE].arb
# 2. Translate & test
flutter gen-l10n
flutter run
# 3. Create pull requestDetailed guide: CONTRIBUTING.md
This project is licensed under the GNU General Public License v3.0.
Copyright (C) 2024 Fr0gsite Contributors
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
See LICENSE for the full license text.
What does this mean?
- β Commercial use
- β Modification
- β Distribution
- β Private use
- β Liability & Warranty
β οΈ Changes must be published under the same license
- π¬ Telegram: https://t.me/fr0gsite
- π Issues: GitHub Issues
- π Documentation: doc.fr0g.site
- π Website: On fr0g.site
Q: Where are my private keys stored? A: Locally in secure storage
Q: What's the difference between Active and Owner Permission? A: See FAQ
Q: How can I run my own node? A: Participation Guide
π Report security issues: Send an email to security@fr0g.site
Security Guidelines:
- Private keys are stored only locally
- All blockchain transactions are transparent
- IPFS content is publicly accessible
- No central storage of user data
- Fr0gsite Team - Core development and concept
- Flutter Team - Cross-Platform Framework
- EOSIO - Blockchain Technology
- IPFS - Decentralized Storage
- Lottie - Animations
- All dependencies in pubspec.yaml
- All translators and contributors
- Beta testers and feedback providers
- Open Source Community
- GitHub - Repository Hosting
- Updown.io - Server Monitoring
- VSCode - Development Environment
πΈ Fr0g.site - Freedom of Speech for Everyone
Made with β€οΈ by the Open Source Community
π Live Demo β’ π Docs β’ π GitHub β’ π¬ Community
