Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

JBWolfFlow/DCOP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

109 Commits

Repository files navigation

DCOP Mobile πŸ‡ΊπŸ‡Έ

Flutter Python FastAPI License Platform

Defense Contracting Opportunities Platform - Your comprehensive mobile solution for navigating federal contracting opportunities, powered by real-time data from SAM.gov and USAspending.gov.


🌟 Features

Core Capabilities

  • πŸ” Smart Opportunity Discovery: AI-powered search and filtering of federal contracting opportunities
  • πŸ“Š NAICS Dashboard: Comprehensive industry analytics with trend visualization
  • πŸ’¬ AI Copilot: Intelligent assistant for contract guidance and insights
  • πŸ” Enterprise Security: Biometric authentication, certificate pinning, and encrypted data storage
  • πŸ“± Offline-First: Full functionality with intelligent caching and sync
  • 🎨 Modern UI/UX: Material Design 3 with adaptive theming

Data Integration

  • SAM.gov API: Real-time contract opportunities and entity data
  • USAspending.gov: Historical spending analytics and trends
  • Live ETL Pipeline: Automated data processing and enrichment
  • Smart Caching: Optimized offline access with background sync

User Experience

  • Personalized Dashboard: Customizable widgets and saved searches
  • Advanced Filtering: Multi-criteria search with NAICS code support
  • Push Notifications: Real-time alerts for matching opportunities
  • Profile Management: Secure user preferences and settings
  • Data Usage Tracking: Monitor API consumption and cache status

πŸ—οΈ Architecture

Frontend (Flutter)

lib/
β”œβ”€β”€ core/ # Core utilities and services
β”‚ β”œβ”€β”€ network/ # API client and network management
β”‚ β”œβ”€β”€ security/ # Security services (biometric, encryption)
β”‚ β”œβ”€β”€ theme/ # App theming and styling
β”‚ └── widgets/ # Reusable UI components
β”œβ”€β”€ features/ # Feature modules (Clean Architecture)
β”‚ β”œβ”€β”€ authentication/ # User auth and session management
β”‚ β”œβ”€β”€ dashboard/ # Home and profile screens
β”‚ β”œβ”€β”€ opportunities/ # Contract opportunity browsing
β”‚ β”œβ”€β”€ naics_dashboard/ # Industry analytics
β”‚ └── chat/ # AI Copilot integration
└── main.dart # Application entry point

Backend (Python/FastAPI)

backend/
β”œβ”€β”€ api/ # API endpoints and routes
β”œβ”€β”€ core/ # Core business logic
β”œβ”€β”€ database/ # Database models and migrations
β”œβ”€β”€ external/ # External API clients (SAM.gov, USAspending)
β”œβ”€β”€ services/ # Business services and ETL
└── main.py # FastAPI application

Technology Stack

  • Frontend: Flutter 3.24.5, Dart 3.5.4
  • Backend: Python 3.11+, FastAPI 0.115+
  • Database: SQLite (local), PostgreSQL (production-ready)
  • State Management: flutter_bloc
  • Networking: dio with retry logic
  • Security: local_auth, flutter_secure_storage, certificate pinning
  • Caching: Hive for offline-first architecture

πŸš€ Getting Started

Prerequisites

  • Flutter SDK: 3.24.5 or higher
  • Dart SDK: 3.5.4 or higher
  • Python: 3.11 or higher
  • Git: Latest version
  • IDE: VS Code or Android Studio (recommended)

Installation

1. Clone the Repository

git clone https://github.com/JBWolfFlow/DCOP.git
cd DCOP

2. Backend Setup

# Navigate to backend directory
cd backend
# Create virtual environment
python -m venv venv
# Activate virtual environment
# On macOS/Linux:
source venv/bin/activate
# On Windows:
venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Create .env file
cp .env.example .env
# Edit .env with your API keys and configuration
# Initialize database
python scripts/init_production_db.py
# Start backend server
uvicorn main:app --reload --host 0.0.0.0 --port 8000

3. Frontend Setup

# Return to project root
cd ..
# Install Flutter dependencies
flutter pub get
# Run code generation
flutter pub run build_runner build --delete-conflicting-outputs
# Start the app
flutter run

Environment Variables

Create a backend/.env file with the following:

# API Keys
SAM_GOV_API_KEY=your_sam_gov_api_key_here
USASPENDING_API_KEY=your_usaspending_api_key_here
# Database
DATABASE_URL=sqlite:///./dcop.db
# Security
SECRET_KEY=your_secret_key_here
JWT_SECRET_KEY=your_jwt_secret_here
JWT_ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=30
# API Configuration
API_BASE_URL=http://localhost:8000
CORS_ORIGINS=["http://localhost:3000","http://localhost:8080"]
# Feature Flags
ENABLE_CACHING=true
ENABLE_OFFLINE_MODE=true
CACHE_TTL_HOURS=24

πŸ“± Platform Support

Platform Status Notes
iOS βœ… Ready iOS 12.0+
Android βœ… Ready Android 6.0+ (API 23+)
Web 🚧 Planned Future release
macOS 🚧 Planned Future release
Windows 🚧 Planned Future release
Linux 🚧 Planned Future release

πŸ§ͺ Testing

Run All Tests

# Flutter tests
flutter test
# Backend tests
cd backend
pytest
# Integration tests
flutter test integration_test/

Code Coverage

# Generate coverage report
flutter test --coverage
genhtml coverage/lcov.info -o coverage/html
open coverage/html/index.html

πŸ“¦ Building for Production

Android

# Build APK
flutter build apk --release
# Build App Bundle (recommended for Play Store)
flutter build appbundle --release

iOS

# Build for iOS
flutter build ios --release
# Archive for App Store
# Open Xcode and use Product > Archive

πŸ”’ Security

  • Biometric Authentication: Face ID, Touch ID, fingerprint support
  • Certificate Pinning: Prevents man-in-the-middle attacks
  • Encrypted Storage: Sensitive data encrypted at rest
  • Secure API Communication: HTTPS with TLS 1.3
  • Token-Based Auth: JWT with refresh token rotation
  • Input Validation: Comprehensive sanitization and validation

For security concerns, please email: security@dcop.app


🀝 Contributing

We welcome contributions! Please see our CONTRIBUTING.md for details on:

  • Code of Conduct
  • Development workflow
  • Pull request process
  • Coding standards
  • Testing requirements

πŸ“„ License

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


πŸ‘₯ Team


πŸ“ž Support


πŸ—ΊοΈ Roadmap

Beta Release (Current)

  • Core opportunity search and filtering
  • NAICS dashboard with analytics
  • AI Copilot integration
  • Offline-first architecture
  • Biometric authentication
  • iOS TestFlight release
  • Android Play Store beta

Version 1.0 (Q1 2025)

  • Advanced search with ML recommendations
  • Contract award predictions
  • Team collaboration features
  • Enhanced analytics dashboard
  • Multi-language support

Future Enhancements

  • Web platform support
  • Desktop applications (macOS, Windows, Linux)
  • API for third-party integrations
  • Enterprise SSO support
  • Advanced reporting and exports

πŸ“Š Project Status

Current Version: Beta 0.9.0
Status: Active Development
Last Updated: January 2025

Recent Updates

  • βœ… Implemented offline-first caching system
  • βœ… Enhanced NAICS dashboard with trend charts
  • βœ… Added biometric authentication
  • βœ… Integrated SAM.gov and USAspending APIs
  • βœ… Completed security hardening
  • 🚧 Preparing for TestFlight/Play Store beta release

πŸ™ Acknowledgments

  • SAM.gov: Federal contract opportunity data
  • USAspending.gov: Federal spending analytics
  • Flutter Team: Amazing cross-platform framework
  • FastAPI: High-performance Python web framework
  • Open Source Community: Countless libraries and tools

πŸ“ˆ Statistics

GitHub stars GitHub forks GitHub watchers


Built with ❀️ for the federal contracting community
Making government contracting accessible to everyone

About

Defense Contracting Opportunities Platform - Mobile app for federal contracting

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /