<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Karlnerd</title>
    <description>The latest articles on DEV Community by Karlnerd (@carlvays).</description>
    <link>https://dev.to/carlvays</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3650218%2Fc2945a34-a540-4850-9863-f59a46f485ff.jpg</url>
      <title>DEV Community: Karlnerd</title>
      <link>https://dev.to/carlvays</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/carlvays"/>
    <language>en</language>
    <item>
      <title>I built a free crypto arbitrage detector with intelligent scoring - here's the tech stack</title>
      <dc:creator>Karlnerd</dc:creator>
      <pubDate>Sun, 07 Dec 2025 13:07:50 +0000</pubDate>
      <link>https://dev.to/carlvays/i-built-a-free-crypto-arbitrage-detector-with-intelligent-scoring-heres-the-tech-stack-2aj1</link>
      <guid>https://dev.to/carlvays/i-built-a-free-crypto-arbitrage-detector-with-intelligent-scoring-heres-the-tech-stack-2aj1</guid>
      <description>&lt;p&gt;&lt;strong&gt;Building Detectick: Free Crypto Arbitrage Detection&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I just launched Detectick, a free platform that detects crypto arbitrage opportunities and scores them 0-100 based on&lt;br&gt;
  profitability and risk.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Problem&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Crypto traders manually check multiple exchanges for price differences (arbitrage). Premium tools exist but cost $50-100/month&lt;br&gt;&lt;br&gt;
  and most just show raw data without context.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Solution: Intelligent Scoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Instead of just showing "BTC is 2% cheaper on Exchange A", Detectick calculates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Trading fees (both exchanges)&lt;/li&gt;
&lt;li&gt;Network transfer fees (blockchain costs)&lt;/li&gt;
&lt;li&gt;Transfer speed (SOL = 5min, BTC = 30min)&lt;/li&gt;
&lt;li&gt;Liquidity (can you execute this trade?)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Result: 0-100 score showing real profitability.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tech Stack&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;React 18&lt;/strong&gt; - Fast, component-based UI&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tailwind CSS&lt;/strong&gt; - Rapid styling without custom CSS&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recharts&lt;/strong&gt; - Beautiful charts for opportunities&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;i18next&lt;/strong&gt; - Multi-language support (5 languages)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cloudflare Pages&lt;/strong&gt; - Free hosting, global CDN&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Backend&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Flask (Python)&lt;/strong&gt; - Lightweight API framework&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PostgreSQL&lt;/strong&gt; - Robust relational database&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CCXT&lt;/strong&gt; - Unified API for 8+ crypto exchanges&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fernet encryption&lt;/strong&gt; - AES-128 for API key security&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gunicorn&lt;/strong&gt; - Production WSGI server&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Render.com&lt;/strong&gt; - Free tier hosting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Integrations&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;8+ Exchanges&lt;/strong&gt; - Binance, Coinbase, Kraken, Bitvavo, OKX, KuCoin, Bitstamp, Bitfinex&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Telegram Bot&lt;/strong&gt; - Instant notifications&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SendGrid&lt;/strong&gt; - Email notifications&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sentry&lt;/strong&gt; - Error monitoring&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Plausible&lt;/strong&gt; - Privacy-friendly analytics&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Architecture&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Frontend (React)&lt;br&gt;
      ↓ HTTPS&lt;br&gt;
  Backend API (Flask)&lt;br&gt;
      ↓ CCXT&lt;br&gt;
  Exchange APIs (Binance, Coinbase, etc.)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Technical Challenges&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;1. Exchange API Differences&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
  Each exchange has different rate limits, authentication, and quirks. CCXT unified them but still needed custom handling for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OKX region detection&lt;/li&gt;
&lt;li&gt;Coinbase platform variants (Advanced vs Pro)&lt;/li&gt;
&lt;li&gt;Private key formatting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;2. API Key Security&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
  User API keys are encrypted at rest using Fernet (AES-128):&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
python
  from cryptography.fernet import Fernet

  encrypted = Fernet(key).encrypt(api_secret)
  # Store encrypted, decrypt only when needed

  **_3. Scoring Algorithm_**

  Balancing multiple factors into one score:
  score = (
      spread_size * 0.4 +
      liquidity * 0.25 +
      transfer_speed * 0.15 +
      fee_impact * 0.10 +
      historical_success * 0.10
  )

  **_4. Multi-Language Support_**

  Supporting 5 languages (EN, FR, DE, ES, NL) required:
  - i18next for React
  - Separate JSON files per language
  - ~800 translation keys
  - Language switcher persisting to localStorage

  What's Next

  - Automated trade execution (premium tier)
  - Historical analytics
  - API access for developers
  - Mobile app (PWA first)

  Try It

  🔗 Live: https://detectick.com
  📊 Status: https://status.detectick.com
  🚀 Launching on Product Hunt tomorrow!

  Currently 100% free. Would love feedback from the community!

  Questions I'd Love Answers To

  1. Is the scoring useful or should I just show raw spreads?
  2. What features would you pay for?
  3. Any security concerns with the approach?
  4. What other exchanges should I prioritize?

  Thanks for reading! Open to questions about the architecture or crypto arbitrage in general.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>webdev</category>
      <category>cryptocurrency</category>
      <category>showdev</category>
      <category>react</category>
    </item>
  </channel>
</rss>
