Profile Pulse πŸ”„

January 13, 2026 Β· View on GitHub

A desktop application for managing contacts with automatic social media profile picture synchronization and profile discovery.

Copier Rust Status

🎯 Overview

Profile Pulse is a cross-platform desktop application built in Rust that helps you manage your contacts while automatically keeping their profile pictures up-to-date from their social media accounts. Import your contacts from VCF files, and Profile Pulse will fetch their latest profile pictures from LinkedIn, Twitter, GitHub, Instagram, and other platforms.

✨ Features

Current

  • 🚧 In Development - Phase 1 Foundation (80% complete)
  • βœ… Database Layer - SQLite with full CRUD operations
  • βœ… Core Models - Contact and social profile data structures
  • βœ… Application Setup - Configuration and initialization
  • πŸ”§ Needs Testing - Code not yet compiled or tested

Planned

  • πŸ“‡ Contact Management - Import, edit, and export contacts in VCF format
  • πŸ–ΌοΈ Auto Profile Pictures - Automatically fetch profile pictures from social media
  • πŸ” Profile Discovery - Find social media profiles based on contact information
  • πŸ’Ύ Local Storage - All data stored locally with SQLite
  • πŸ”’ Privacy First - No cloud sync, your data stays on your device
  • πŸš€ Performance - Built in Rust for speed and efficiency
  • 🌐 Cross-Platform - Windows, macOS, and Linux support

Supported Platforms

  • LinkedIn
  • Twitter/X
  • GitHub
  • Facebook
  • Instagram
  • More coming...

πŸ—οΈ Technology Stack

  • Language: Rust
  • GUI: Iced (Pure Rust GUI framework)
  • Database: SQLite with SQLx
  • HTTP Client: Reqwest
  • Image Processing: image crate
  • VCF Parsing: vcard crate

πŸš€ Quick Start

Prerequisites

  • Rust 1.75+ (install from rustup.rs)
  • SQLite 3.x

Building from Source

⚠️ Note: The project has been implemented but not yet compiled or tested.

# Clone the repository
git clone https://github.com/yourusername/profile-pulse.git
cd profile-pulse

# Build the project (first time may take several minutes)
cargo build --release

# Run tests
cargo test

# Run the application
cargo run --release

See BUILDING.md for detailed build instructions and troubleshooting.

Development Build

# Build and run in development mode
cargo run

# Run tests with output
cargo test -- --nocapture

# Run with debug logging
RUST_LOG=debug cargo run

# Auto-rebuild on file changes (requires cargo-watch)
cargo install cargo-watch
cargo watch -x run

πŸ“š Documentation

πŸ—ΊοΈ Project Status

Current Phase: Phase 1 - Foundation (80% Complete)

See the Roadmap for detailed progress and Status for current state.

What's Implemented

βœ… Phase 0: Complete project documentation and planning
βœ… Database Layer: SQLite with migrations, models, and repository pattern
βœ… Core Domain: Contact and social profile models with validation
βœ… Application Setup: Configuration, logging, and initialization
βœ… CI/CD: GitHub Actions workflow for testing and building

What's Next

⏭️ First Build: Compile and test the implementation
⏭️ Phase 2: VCF import/export functionality
⏭️ GUI Development: Complete Iced interface
⏭️ Social Integration: Profile picture fetching

🀝 Contributing

Contributions are welcome! This project is in active development. Please see DEVELOPMENT.md for guidelines.

Important: All code has been generated with AI assistance. See DISCLOSURE.md for full transparency.

πŸ“„ License

This project is licensed under the GNU General Public License v3.0 or later (GPLv3-or-later).

See LICENSE for the full license text.

This is free software: you are free to change and redistribute it under the terms of the GPL. There is NO WARRANTY, to the extent permitted by law.

πŸ€– AI Disclosure

Parts of this project's initial documentation were created with AI assistance. See DISCLOSURE.md for full transparency about AI-generated content.

πŸ”’ Privacy & Ethics

Profile Pulse is designed with privacy in mind:

  • All data stored locally on your device
  • No telemetry or tracking
  • Respects social media platforms' terms of service
  • Implements rate limiting to avoid abuse
  • User confirmation required for auto-discovered profiles

⚠️ Disclaimer

This application fetches publicly available profile pictures. Always respect:

  • Platform terms of service
  • Rate limits and robots.txt
  • User privacy and data protection laws (GDPR, CCPA, etc.)
  • Copyright and intellectual property rights

πŸ™ Acknowledgments

Built with amazing open-source Rust crates. See ARCHITECTURE.md for the full list.


Note: Profile Pulse is under active development. The codebase has been implemented but not yet compiled or tested. Please report any issues you encounter.


πŸš€ Current Status

  • Phase 1 Foundation: 80% complete
  • Lines of Code: ~2,800 lines of Rust
  • Test Coverage: Unit and integration tests included
  • Documentation: Complete and comprehensive
  • Next Step: First compilation and testing

See STATUS.md for detailed progress tracking.