Logo Lanfrica

asiimwe3/derycode-ads

Domain:

digital infrastructure

Record type:

software
Creator:
asi
Host:
DeryCode Ads — PPC Advertising Platform for East African Businesses. Sponsored search results, campaign management, and analytics. # DeryCode Ads — PPC Advertising Platform Uganda's first local pay-per-click advertising platform Built for East African businesses. Powered by DeryCode Search Engine. ## Features - **Sponsored Search Results** — Ads appear at the top of DeryCode Search results with a gold "Ad" badge - **PPC Model** — Advertisers pay only when someone clicks their ad (UGX 500+ per click) - **Campaign Management** — Full CRUD dashboard for creating, editing, pausing, and deleting campaigns - **Keyword Targeting** — Advertisers choose which search keywords trigger their ads - **Budget Control** — Monthly budgets with automatic spending caps - **Real-time Analytics** — Clicks, impressions, CTR, spend tracking, and budget utilization - **MoMo Payments** — MTN MoMo and Airtel Money integration for Ugandan advertisers - **Ad Widget** — Embeddable JavaScript widget for third-party websites (publisher network) - **Click Fraud Prevention** — Budget enforcement and click tracking per campaign ## Architecture ``` derycode-ads/ ├── api/ │ └── ads.js # Ad serving, campaign CRUD, click tracking, analytics, payments ├── public/ │ ├── ads.html # Advertiser dashboard (campaign management, analytics, payments) │ └── widget.js # Embeddable ad widget for publisher websites ├── package.json ├── vercel.json └── README.md ``` ## API Endpoints | Method | Endpoint | Action | |--------|----------|--------| | GET | `/api/ads?q=keyword` | Serve ads matching a search query | | GET | `/api/ads?action=click&id=X` | Track click and redirect to ad URL | | GET | `/api/ads?action=list` | List all campaigns (admin) | | GET | `/api/ads?action=analytics` | Get analytics (all or single campaign) | | GET | `/api/ads?action=analytics&id=X` | Get analytics for specific campaign | | POST | `/api/ads?action=create` | Create new campaign | | PUT | `/api/ads?action=update&id=X` | Update campaign | | DELETE | `/api/ads?action=delete&id=X` | Delete campaign | | POST | `/api/ads?action=payment` …