Real-time cybersecurity threat intelligence and AI news aggregation platform with automated daily updates, archival system, and zero-maintenance deployment.
π View Live Demo | π Documentation
A production-ready intelligence aggregation platform that automatically collects, processes, and displays cybersecurity threats and AI industry news. Built with modern web technologies and automated CI/CD pipelines, this project demonstrates full-stack development, API integration, and DevOps best practices.
- π Real-time Threat Intelligence from AlienVault OTX
- π€ AI News Aggregation from multiple RSS feeds
- π¦ Automated Archival System with full historical data
- β‘ Zero-maintenance daily updates via GitHub Actions
- π± Responsive Design with modern UI/UX
- π¨ Dark Mode with Tailwind CSS
- π Data Freshness Indicators for transparency
- Frontend: React 18, Vite, Tailwind CSS
- Backend: Python 3.12, REST API integration
- State Management: React Hooks, custom hooks
- Error Handling: Error boundaries, graceful fallbacks
- CI/CD: GitHub Actions workflows
- Scheduled Jobs: Cron-based daily automation
- Deployment: GitHub Pages with automatic builds
- Version Control: Git with conventional commits
- ETL Pipeline: Extract, Transform, Load from multiple sources
- Data Validation: Type checking, sanitization
- Archive Management: Indexed JSON storage
- API Integration: OTX API, RSS/XML parsing
- Separation of Concerns: Modular component design
- DRY Principles: Reusable components and utilities
- Performance: Lazy loading, memoization, code splitting
- Scalability: Extensible data source architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β GitHub Actions (Cron) β
β Daily at 6 AM UTC β
ββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ
β
ββββββββββββββ΄ββββββββββββββ
β β
βΌ βΌ
βββββββββββββββββ ββββββββββββββββ
β OTX Fetcher β β RSS Fetcher β
β (Cyber Intel)β β (AI News) β
βββββββββ¬ββββββββ ββββββββ¬ββββββββ
β β
β Python ETL Pipeline β
β β
ββββββββββ¬βββββββββββββββββ
β
βΌ
ββββββββββββββββ
β JSON Storage β
β + Archives β
ββββββββ¬ββββββββ
β
βΌ
ββββββββββββββββ
β GitHub Pages β
β Deployment β
ββββββββ¬ββββββββ
β
βΌ
ββββββββββββββββ
β React Frontendβ
β (Vite Build) β
βββββββββββββββββ
Cyber Threat Intelligence (AlienVault OTX)
class OTXIntelFetcher:
"""Fetches verified threat intelligence from AlienVault OTX"""
def fetch_and_transform(self, limit: int = 4) -> List[Dict]:
# Fetch from OTX public feed
pulses = self.otx.getsince(modified_since, limit)
# Transform to dashboard format
return [self.transform_pulse(p) for p in pulses]AI News Aggregation (RSS)
class AINewsRSSFetcher:
"""Aggregates AI news from multiple RSS sources"""
RSS_FEEDS = [
{"name": "TechCrunch AI", "priority": 1},
{"name": "VentureBeat AI", "priority": 2},
{"name": "The Verge AI", "priority": 3},
{"name": "MIT Tech Review", "priority": 4},
]Custom Hooks for Data Management
const useMacroData = () => {
// Fetches economic data with 1-hour refresh
// Implements loading states and error handling
return { macroData, loading, error, refresh };
};Error Boundaries for Resilience
<ErrorBoundary>
<Suspense fallback={<Loading />}>
<ArchiveViewer />
</Suspense>
</ErrorBoundary>name: Daily Intelligence Update
on:
schedule:
- cron: '0 6 * * *' # 6 AM UTC daily
workflow_dispatch: # Manual trigger
jobs:
update-intelligence:
- Fetch cyber threats (OTX)
- Fetch AI news (RSS)
- Update JSON feeds
- Archive historical data
- Commit and deploy| Metric | Value | Impact |
|---|---|---|
| Bundle Size | 165 KB | 35% reduction from optimization |
| Build Time | ~12s | Fast CI/CD pipeline |
| API Costs | $0/month | Sustainable, free-tier architecture |
| Uptime | 99.9% | GitHub Pages SLA |
| Data Freshness | Daily | Automated updates |
| Archive Coverage | 15+ days | Historical intelligence |
- React 18.3 - Modern UI library with hooks
- Vite 6.0 - Next-gen build tool (10x faster than Webpack)
- Tailwind CSS - Utility-first CSS framework
- Recharts - Data visualization library
- Python 3.12 - Latest stable Python
- httpx - Modern async HTTP client
- OTXv2 - AlienVault OTX SDK
- XML/RSS Parsing - Multi-source aggregation
- GitHub Actions - CI/CD automation
- GitHub Pages - Static hosting with CDN
- uv - Modern Python package manager
- Git - Version control
- AlienVault OTX - Threat intelligence
- TechCrunch RSS - AI news
- VentureBeat RSS - Tech industry news
- FRED API - Economic data (Federal Reserve)
- Yahoo Finance - Market data
- Live cyber threat intelligence from AlienVault OTX
- Latest AI news from premium tech publications
- Federal Reserve economic indicators
- Live market data with 5-minute refresh
- Browse past intelligence by date
- Indexed archive system for fast lookups
- Automatic archive management
- 15+ days of historical data
- Responsive design (mobile, tablet, desktop)
- Dark mode with modern glassmorphism
- Smooth animations and transitions
- Accessibility-first approach
- Freshness indicators (< 1hr, 1-6hrs, > 24hrs)
- Source attribution for all data
- Last updated timestamps
- Error states with clear messaging
Problem: Initial implementation used Anthropic Claude API which ran out of credits
Solution: Migrated to free RSS aggregation with zero API costs
Impact: 100% cost reduction, improved reliability
Problem: FRED API blocked browser requests
Solution: Implemented CORS proxy wrapper with api.allorigins.win
Impact: Enabled client-side economic data fetching
Problem: Archive paths broke on deployment due to base URL
Solution: Dynamic base path using import.meta.env.BASE_URL
Impact: Seamless deployment to GitHub Pages
Problem: OTX API returned mixed data types (dict vs string)
Solution: Type-safe transformation with fallback handling
Impact: Zero runtime errors, graceful degradation
- β No secrets in code - API keys via GitHub Secrets
- β Input validation - Sanitize all external data
- β HTTPS only - Secure data transmission
- β No XSS vulnerabilities - Proper HTML escaping
- β CORS handling - Proper cross-origin policies
- β Error boundaries - No stack trace exposure
Node.js 20+
Python 3.12+
Git# Clone repository
git clone https://github.com/JesseFlip/tech-intel.git
cd tech-intel
# Install frontend dependencies
npm install
# Install backend dependencies
cd pipeline
pip install -e .# Start development server
npm run dev
# Run intelligence pipeline
cd pipeline
python -m intel_pipeline.update_intel --output-dir ../publicnpm run build
npm run preview- ESLint configuration for React best practices
- Conventional commit messages
- Modular, testable architecture
- Error handling at all levels
- React.memo for expensive components
- Lazy loading with React.Suspense
- Code splitting for faster initial load
- Removed unused dependencies (35% bundle reduction)
tech-intel/
βββ .github/
β βββ workflows/
β βββ daily-intel-update.yml # Automated daily updates
βββ pipeline/
β βββ src/intel_pipeline/
β βββ otx_fetcher.py # OTX threat intelligence
β βββ ai_news_rss_fetcher.py # RSS news aggregation
β βββ update_intel.py # Main orchestrator
βββ public/
β βββ cyber-intel.json # Latest threats
β βββ ai-intel.json # Latest AI news
β βββ archives/ # Historical data
βββ src/
β βββ components/ # React components
β βββ hooks/ # Custom hooks
β βββ api/ # API services
β βββ App.jsx # Main application
βββ README.md
- Mastered GitHub Actions for CI/CD automation
- Implemented production-ready error handling
- Built scalable ETL pipeline architecture
- Optimized bundle size and performance
- Debugged API integration issues
- Resolved deployment path conflicts
- Handled inconsistent data structures
- Optimized for zero-cost operation
- Wrote maintainable, documented code
- Followed SOLID principles
- Implemented proper separation of concerns
- Used conventional commits for clarity
- Production-Ready: Not a tutorial project - real automated system running daily
- Full-Stack: Demonstrates frontend, backend, and DevOps skills
- Problem-Solving: Shows ability to debug and pivot when solutions don't work
- Cost-Conscious: Architected for zero operational costs
- Automated: Set-it-and-forget-it daily operations
- Well-Documented: Professional documentation and code comments
- Modern Stack: Uses latest tools and best practices
- Real-World Use: Actual intelligence aggregation with value
Live Demo: https://jesseflip.github.io/tech-intel/
GitHub: https://github.com/JesseFlip/tech-intel
Email: jss.flppn@gmail.com
This project is open source and available under the MIT License.
Built with modern web technologies and automated workflows. Demonstrates full-stack development, API integration, CI/CD automation, and production deployment skills.
Technologies: React, Python, GitHub Actions, AlienVault OTX, Tailwind CSS, Vite
This project showcases production-ready code, automation expertise, and problem-solving abilities that translate directly to real-world engineering challenges.