A Laravel-based web application for fetching, caching, and reporting historical stock price data from Rapid API. Users can submit a company symbol and date range, then receive a processed response via real-time WebSocket updates.
- Form-based submission for stock symbol, date range, and user email
- Fetches stock data from external API (RapidAPI)
- Smart caching with Redis (1-day expiration)
- Queue-based background processing with Laravel jobs
- Real-time feedback with Laravel Echo Server + Socket.IO
- Form validation
- PHPUnit tests
- Laravel 12
- PHP 8.4
- MySQL 8
- Redis
- Docker / Docker Compose
- Laravel Echo Server
- Socket.IO
- Vite (for JS bundling)
git clone git@github.com:freelancerwebro/stock-reports.git
cd stock-reports
./deploy.sh
Ensure these API credentials are properly configured in .env:
RAPIDAPI_HEADER_HOST=your-api-host
RAPIDAPI_HEADER_KEY=your-api-key
RAPIDAPI_BASE_URI=https://api.example.com/endpoint
docker exec -it stock_reports_app php artisan queue:work
- Visit http://localhost:8084
- Fill out the form with a stock symbol (e.g., AAPL), date range, and email
- Submit the form
- You'll be redirected to a /listen/{jobId} page
- Real-time updates will notify you once the data is ready




