Behavioral intelligence for your application
Project description
Shadow Watch
"Like a shadow — always there, never seen."
Behavioral intelligence for your application. Add passive behavioral biometrics, personalization, and fraud detection with zero user friction.
What It Does
Shadow Watch silently learns user behavior patterns and uses them for:
- 🔐 Security: Behavioral biometric authentication (detects account takeovers)
- 🎯 Personalization: Auto-generates interest profiles based on activity
- 🤖 Intent Prediction: Understands what users care about without asking
- 🚨 Fraud Detection: Flags suspicious behavior before damage happens
Installation
# Basic installation
pip install shadowwatch
# With Redis support (recommended for production)
pip install shadowwatch[redis]
# With FastAPI integration
pip install shadowwatch[fastapi]
Get your free trial license: Email tanishqdasari2004@gmail.com or visit the license server
Quick Start
from shadowwatch import ShadowWatch
# Initialize with your database
sw = ShadowWatch(
database_url="postgresql+asyncpg://user:pass@localhost/db",
license_key="SW-TRIAL-XXXX-XXXX-XXXX" # Get trial at shadowwatch.dev
)
# Track user activity (silent, no UI)
await sw.track(
user_id=123,
entity_id="AAPL",
action="view"
)
# Get user profile
profile = await sw.get_profile(user_id=123)
# Returns: {"total_items": 42, "fingerprint": "a7f9e2c4...", "library": [...]}
# Verify login (trust score)
trust = await sw.verify_login(
user_id=123,
request_context={
"ip": "192.168.1.1",
"user_agent": "...",
"library_fingerprint": "..." # From client cache
}
)
# Returns: {"trust_score": 0.85, "risk_level": "low", "action": "allow"}
How It Works
- Silent Tracking: Every user action (views, searches, trades) is logged
- Interest Scoring: Actions aggregate into weighted interest scores
- Fingerprinting: Top interests generate a unique behavioral fingerprint
- Trust Calculation: Fingerprint mismatch = suspicious login attempt
Use Cases
Fintech Apps
- Detect account takeover attempts
- Behavioral 2FA (no user friction)
- Portfolio-aware personalization
E-commerce
- Predict purchase intent
- Fraud detection
- Product recommendations
Trading Platforms
- Smart watchlists
- Pattern-based alerts
- Risk profiling
Features
✅ Zero User Friction - Works silently, no prompts
✅ Passive Authentication - Behavioral biometric layer
✅ Auto-Generated Profiles - based on actual behavior
✅ Investment Priority - Trades weighted 10x higher than views
✅ Self-Hosted - Runs on YOUR infrastructure
✅ Privacy-First - Your data never leaves your servers
Database Setup
Shadow Watch uses 3 tables:
# Create tables (SQLAlchemy)
from shadowwatch.models import Base
async with engine.begin() as conn:
await conn.run_sync(Base.metadata.create_all)
Tables created:
shadow_watch_activity_events(raw events)shadow_watch_interests(aggregated scores)shadow_watch_library_versions(snapshots)
Pricing
| Tier | Price | Events/Month | Support |
|---|---|---|---|
| Trial | Free (30 days) | 10,000 | |
| Startup | $500/month | 100,000 | Priority |
| Growth | $1,500/month | 1,000,000 | Slack |
| Enterprise | Custom | Unlimited | Dedicated |
For trial license: tanishqdasari2004@gmail.com
Documentation
- Getting Started Guide - 5-minute setup
- API Reference - Complete API documentation
- Integration Guides - FastAPI, Django, Flask
Comparison
| Feature | Traditional 2FA | Shadow Watch |
|---|---|---|
| User Friction | High (SMS, app) | Zero (passive) |
| Hackable | Yes (SIM swap) | No (behavioral) |
| Setup Time | Weeks | 5 lines of code |
| Personalization | None | Auto-generated |
License
MIT License - see LICENSE
Author
Built by Tanishq during development of QuantForge Terminal
Questions?
- Email: tanishqdasari2004@gmail.com
- GitHub Issues: github.com/Tanishq1030/Shadow_Watch/issues
"Always there. Never seen. Forever watching." 🌑
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file shadowwatch-0.3.0.tar.gz.
File metadata
- Download URL: shadowwatch-0.3.0.tar.gz
- Upload date:
- Size: 21.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7765fcf49e472e65d2967739a45a0a1a9355afabdc3de8d764149dad3e07096
|
|
| MD5 |
cdcce2dcd557103c2d5908c76208cca1
|
|
| BLAKE2b-256 |
afd21131736158e3e9b07c09203477d72c72317c0450951070adb5d12524aaaf
|
File details
Details for the file shadowwatch-0.3.0-py3-none-any.whl.
File metadata
- Download URL: shadowwatch-0.3.0-py3-none-any.whl
- Upload date:
- Size: 24.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92533da24fd283307e4b02df1d4930c4dc8fe26a6f1299e8af399fecbbca3980
|
|
| MD5 |
c1d5a530bda1c4eb315513568d69a0ea
|
|
| BLAKE2b-256 |
9b1e67c499dbcbb368bdd8f7b4343723831f3bb0f0d16336fbb2220c85808210
|