Skip to content

A secure, cross-platform messaging and cryptocurrency wallet application built on the Matrix protocol with integrated Bitcoin functionality.

License

Notifications You must be signed in to change notification settings

Nopsled/strongbolt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ” Strongbolt

Flutter Dart Matrix Bitcoin License: MIT

A secure, cross-platform messaging and cryptocurrency wallet application built on the Matrix protocol with integrated Bitcoin functionality.

πŸ“± Features

πŸ”’ Secure Messaging

  • Matrix Protocol Integration: Built on the decentralized Matrix network for secure, end-to-end encrypted messaging
  • Real-time Communication: Instant messaging with live synchronization
  • Room Management: Create, join, and manage chat rooms
  • User Authentication: Secure login and registration system

πŸ’° Cryptocurrency Wallet

  • Bitcoin Wallet: Generate and manage Bitcoin wallets
  • Balance Tracking: Real-time Bitcoin balance checking
  • Seed Phrase Generation: Secure mnemonic seed phrase creation
  • Address Management: Base58 and hash160 address support

🎨 Modern UI/UX

  • Material Design: Clean, intuitive interface following Material Design principles
  • Cross-platform: Native performance on both iOS and Android
  • Responsive Design: Optimized for various screen sizes
  • Custom Components: Beautifully crafted UI components

πŸš€ Getting Started

Prerequisites

  • Flutter SDK: Version 2.7.0 or higher
  • Dart SDK: Version 2.7.0 or higher
  • Android Studio or Xcode for device deployment
  • Git for version control

Installation

  1. Clone the repository

    git clone https://github.com/Nopsled/strongbolt.git
    cd strongbolt
  2. Install dependencies

    flutter pub get
  3. Run the application

    # For development
    flutter run
    
    # For release build
    flutter build apk  # Android
    flutter build ios  # iOS

πŸ“– Usage

Authentication

  1. Launch the application
  2. Register a new account or Login with existing credentials
  3. Enter your Matrix username and password
  4. The app will authenticate with the Matrix homeserver

Messaging

  • Dashboard: View all your active chat rooms
  • Create Room: Start new conversations by creating rooms
  • Send Messages: Real-time messaging with instant delivery
  • Invite Users: Add friends to your chat rooms

Bitcoin Wallet

  • Generate Wallet: Create a new Bitcoin wallet with secure seed phrase
  • Check Balance: View your current Bitcoin balance
  • Address Management: Copy and share your Bitcoin address

πŸ—οΈ Architecture

Technology Stack

  • Frontend: Flutter/Dart for cross-platform mobile development
  • Protocol: Matrix for decentralized messaging
  • Cryptocurrency: Bitcoin integration with BIP39 mnemonic support
  • HTTP Client: RESTful API communication
  • UI Framework: Material Design components

Project Structure

lib/
β”œβ”€β”€ api/                 # API integration layers
β”‚   β”œβ”€β”€ communication.dart   # Matrix messaging APIs
β”‚   β”œβ”€β”€ user.dart           # User authentication APIs
β”‚   └── crypto/             # Cryptocurrency APIs
β”‚       └── bitcoin.dart    # Bitcoin wallet functionality
β”œβ”€β”€ components/          # Reusable UI components
β”œβ”€β”€ pages/              # Application screens
β”‚   β”œβ”€β”€ LoginPage.dart      # Authentication screen
β”‚   β”œβ”€β”€ DashboardPage.dart  # Main dashboard
β”‚   β”œβ”€β”€ MessagePage.dart    # Chat interface
β”‚   β”œβ”€β”€ MyProfilePage.dart  # User profile
β”‚   └── crypto/            # Cryptocurrency screens
β”‚       └── WalletPage.dart # Bitcoin wallet interface
└── main.dart           # Application entry point

Matrix Integration

  • Homeserver: Connects to matrix.org by default
  • Authentication: Standard Matrix login/registration flow
  • Rooms: Full support for Matrix room creation and management
  • Sync: Real-time message synchronization

πŸ”§ API Reference

User Authentication

// Login with Matrix credentials
Future<Map> login(String username, String password)

// Register new Matrix account
Future<Map> register(String username, String password)

Messaging

// Create a new chat room
Future<String> createRoom(String roomName)

// Send message to room
Future<Map> sendMessage(String roomId, String message)

// Invite user to room
Future<bool> inviteUser(String userId, String roomId)

// Sync messages
Future<Map> sync({String since = ""})

Bitcoin Wallet

// Generate new Bitcoin wallet
Future<HDWallet> generateWallet()

// Get Bitcoin address balance
Future<String> getBalance(String bitcoinAddress)

🀝 Contributing

We welcome contributions to Strongbolt! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch
    git checkout -b feature/amazing-feature
  3. Make your changes
  4. Add tests (if applicable)
  5. Commit your changes
    git commit -m 'Add amazing feature'
  6. Push to the branch
    git push origin feature/amazing-feature
  7. Open a Pull Request

Code Style

  • Follow Dart Style Guide
  • Use meaningful variable and function names
  • Add comments for complex logic
  • Ensure code is properly formatted (flutter format .)

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ†˜ Support

If you encounter any issues or have questions:

  1. Check existing issues on GitHub
  2. Create a new issue with detailed information
  3. Provide logs and steps to reproduce any bugs

πŸ”— Links


Built with ❀️ using Flutter and Matrix Protocol
Secure messaging meets cryptocurrency innovation

About

A secure, cross-platform messaging and cryptocurrency wallet application built on the Matrix protocol with integrated Bitcoin functionality.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors 2

  •  
  •