Dinesh Wijethunga — Author | DineshStackSkip to content
D

Dinesh Wijethunga

@dineshstack

Senior Full Stack Developer · Building SaaS products & teaching Laravel/React · 10+ years experience · Founder of Orion360 · Based in Dubai, UAE.

Posts by Dinesh Wijethunga

Code Quality Gates: Laravel Pint and PHPStan in CI
TutorialBeginnerDevOps

Code Quality Gates: Laravel Pint and PHPStan in CI

Make code style and static analysis automatic gates. No more "I forgot to run Pint" in review. No more type errors reaching production. Here's how to configure a Code Quality job that blocks merges — including the PHPStan baseline trick for legacy codebases.

D
Dinesh Wijethunga
2 days ago
883m
📝
ArticleBeginnerDevOps

How to Contribute to an Open-Source AI Trading Bot

Want to contribute to an open-source AI trading bot? Here's how — where help is most needed (strategy, ML, dashboard, DevOps), how to set up the project locally on testnet, and how to submit your first pull request. All skill levels welcome; non-code contributions count too.

D
Dinesh Wijethunga
2 days ago
884m
How to Deploy an AI Crypto Trading Bot on Your VPS
ArticleIntermediateAI Engineering

How to Deploy an AI Crypto Trading Bot on Your VPS

A step-by-step guide to deploying an open-source AI crypto trading bot to your own VPS: prerequisites, the exact API keys you need, training the ML model, starting it with systemd, and an honest running-cost breakdown. Runs on Binance testnet in about 20 minutes.

D
Dinesh Wijethunga
3 days ago
746m
How I Built an AI Crypto Trading Bot with Claude AIFeatured
ArticleIntermediateAI Engineering

How I Built an AI Crypto Trading Bot with Claude AI

A deep dive into how an open-source AI crypto trading bot built on Claude works — the multi-agent LLM pipeline, the machine-learning ensemble, layered risk management, and an honest look at what the backtests actually show. Built with Python, Next.js, and the Anthropic API.

D
Dinesh Wijethunga
3 days ago
1449m
Run Laravel Pest Tests Against MySQL in GitHub Actions
TutorialIntermediateDevOps

Run Laravel Pest Tests Against MySQL in GitHub Actions

SQLite hides MySQL-specific bugs until production. Here's exactly how to add a MySQL 8.4 service container to GitHub Actions, override your test env vars, and make Pest hit a real database — including the Pusher/broadcast gotcha that will wreck your first attempt.

D
Dinesh Wijethunga
6 days ago
1696m
Build Your First GitHub Actions Workflow for Laravel
TutorialBeginnerDevOps

Build Your First GitHub Actions Workflow for Laravel

Step-by-step: create a .github/workflows/api-ci.yml file that installs PHP 8.4, runs Composer, and executes your Pest test suite on every push. Takes 15 minutes and works on a free GitHub account.

D
Dinesh Wijethunga
8 days ago
2214m
🎓
TutorialIntermediateLaravel

Arabic Text-to-Speech with Cartesia and API Cost Control in Laravel (Part 4 of 4)

Generating a voice response is the last step in the pipeline — but it's also the one that's most exposed to runaway costs. Each TTS call charges per character. Each STT call charges per second. Claude charges per token. Multiply by thousands of users and the bill can spiral fast. In Part 4, we build the Cartesia TTS service for Arabic/English voice synthesis, then add the cost tracking and rate limiting layer that keeps your API spend under control at per-user granularity.

D
Dinesh Wijethunga
14 days ago
2248m
🎓
TutorialIntermediateLaravel

Designing a Voice AI System Prompt with Claude Tool Use in Laravel (Part 3 of 4)

The hardest part of building a voice assistant isn't the speech — it's getting the AI to take the right action reliably. Claude's tool use API lets you define functions the AI can call (like get_fare_estimate or book_ride) and forces it to return structured data instead of making things up. In Part 3, we design the system prompt for Arabic/English responses, define 15+ tool schemas, and implement the two-turn tool use flow that's required whenever Claude needs to execute an action before it can.

D
Dinesh Wijethunga
17 days ago
23011m
🎓
TutorialBeginnerLaravel

Arabic Speech Recognition in Laravel with Deepgram Nova-3 (Part 2 of 4)

Arabic speech recognition has a dirty secret: most models are trained on Modern Standard Arabic (MSA) and fail on Gulf dialects like UAE or Kuwaiti Arabic. Deepgram Nova-3 is the first model to handle Gulf dialect reliably, and its multi-language mode lets users seamlessly switch between Arabic and English mid-sentence — which is exactly how people in the UAE actually speak. In Part 2, we build the SpeechToTextService that transcribes voice input, detects the language automatically, and feeds.

D
Dinesh Wijethunga
20 days ago
2145m