Mohamed Zayed
460 posts

Mohamed Zayed
@mo7azayed
Just a software engineer who knows how to get things done :)
Cairo, Egypt Katılım Nisan 2013
695 Takip Edilen76 Takipçiler

@JackEllis Thanks for sharing all those posts! I've been following you since the SingleStore migration, and I've gained a lot of experience from your writings.
English
Mohamed Zayed retweetledi

Holy shit... a team open sourced an AWS emulator that runs the entire cloud on your laptop with 13 MiB of memory.
It's called Floci and it boots 45 AWS services in under a second, no Docker, no LocalStack subscription, no $30/mo dev environment bills.
Every AWS dev tool before this needed Docker, gigabytes of RAM, and 30 second cold starts just to test a Lambda function. Floci is a single Go binary that runs the entire AWS stack in memory and starts faster than your terminal can render the prompt.
Here's what makes it different from every AWS emulator that came before:
→ 13 MiB total memory footprint, the average Chrome tab uses 200x more RAM than this entire AWS clone
→ 45 services emulated locally including S3, Lambda, DynamoDB, SQS, SNS, IAM, CloudFormation, Step Functions, all in one binary
→ Sub-second cold start, your tests finish before LocalStack even pulls its Docker image
→ Zero dependencies, no Docker daemon, no Python runtime, no Java VM, just one Go executable
→ Drop-in compatible with AWS SDK and CLI, point your endpoint at localhost and every existing script works untouched
Killed: $40/mo LocalStack Pro, every AWS dev environment burning $200+/mo on staging accounts, Docker Desktop eating 4GB of RAM just to run a fake S3 bucket.
Pre-built binaries for Linux, macOS, Windows. No install scripts, no config files, no setup wizard. Download the binary, run it, your local AWS is live.
Works in CI pipelines where spinning up Docker containers takes longer than the actual tests.
100% Opensource.
Repo: github.com/floci-io/floci

English
Mohamed Zayed retweetledi

New tool for Laravel devs!
EnvKit - Local Dev Stack for Windows & macOS
envkit.net
It's like Laravel Herd but with MORE tech-stack outside of Laravel:
- nginx/Apache
- MongoDB
- Python
- and more

English
Mohamed Zayed retweetledi

To complement our launch of managed databases on Forge, you can now also create managed Valkey cache clusters. ⚡
Provision fully managed Valkey clusters directly from Forge - no separate provider account, no server administration. High availability, real-time monitoring, and hourly billing all included.
Get started on your organization's "Resources → Caches" tab.
forge.laravel.com/docs/resources…

English
Mohamed Zayed retweetledi
Mohamed Zayed retweetledi
Mohamed Zayed retweetledi

Plain v-for on 10,000 rows:
1,840ms render. 15fps scroll. 312MB memory.
With the right stack:
38ms render. 60fps scroll. 48MB memory.
Here's exactly what changes 👇
━━━━━━━━━━━━━━━━━━━━━━━━
The problem: 10,000 items = ~50,000 DOM nodes
The solution: never render more than ~30
━━━━━━━━━━━━━━━━━━━━━━━━
1️⃣ Object.freeze() — free, instant win
const rows = ref(Object.freeze(data))
Vue skips deep reactivity. Memory drops. Every update is faster.
2️⃣ shallowRef for the array
Tracks the reference, not the contents.
Replace the array → triggers re-render.
Mutate individual items → doesn't (use triggerRef if needed).
3️⃣ v-memo — the directive most Vue devs haven't used
row.id]">
When the array matches the previous render: zero work. No diff. No update.
Selection changes: only 2 rows re-render, not 10,000.
4️⃣ RecycleScroller (vue-virtual-scroller)
Renders only visible rows + buffer. ~30 DOM nodes always.
Requires: fixed container height + item-size matching actual height.
5️⃣ Web Worker for sorting and filtering
420ms sort blocking the main thread → 52ms non-blocking.
User can scroll and interact while data processes in the background.
6️⃣ Debounced filter + computed
Filter input debounced 300ms.
Computed only re-runs when the debounced value changes.
For 50,000+ rows: move filter to the Web Worker too.
The benchmark:
Approach | Render | Scroll | Memory
Plain v-for | 1,840ms | 15fps | 312MB
+ Object.freeze | 1,650ms | 18fps | 198MB
+ v-memo | 1,620ms | 45fps | 196MB
+ RecycleScroller| 38ms | 60fps | 48MB
+ Web Worker sort| 38ms | 60fps | 48MB (non-blocking)
Full guide — all 7 strategies with complete code, DynamicScroller for variable height, infinite scroll pattern, Tanstack Virtual as the headless alternative, and the performance checklist 👇
How many rows does your heaviest list render?
#VueJS #Vue3 #WebPerformance #FrontendDevelopment #JavaScript #TypeScript #VueMastery #FrontendEngineering #WebDevelopment #Programming #SoftwareDevelopment #TechCommunity #WebDev #UIEngineering #CoreWebVitals #PerformanceOptimization #OpenSource #DevExperience #100DaysOfCode #CodeQuality medium.com/p/rendering-10…









English
Mohamed Zayed retweetledi
Mohamed Zayed retweetledi

Just released a new package:
🛡️ Laravel Idempotency
It provides an HTTP middleware for Laravel (with an attribute for those who prefer it) for making routes Idempotent.
It also ships with two commands for listing and clearing Idempotency caches, and of course, a Boost AI skill!
Check the package and the docs in the link below, and leave a star to support the project! 👇
English
Mohamed Zayed retweetledi

After 4 years of rock-solid stability in production, we’re open-sourcing our ClickHouse package for Laravel! 🚀
Features complete support for:
🛠️ Query Builder
📦 Eloquent Models
🔄 Migrations
github.com/laravel-clickh…
#Laravel #ClickHouse
English
Mohamed Zayed retweetledi

A really big S3 announcement - #S3 Files!!
If you've ever had to copy data out of S3 just so a file-based tool could use it, you know the frustration. S3 Files lets you mount S3 buckets as file systems directly, no data duplication, no sync pipelines, no workarounds. Your data stays in S3 while apps access it natively.
This looks really useful and a nice improvement over previous approaches like S3 Mount Point. AI agents, ML pipelines, and traditional file-based applications can all read and write to S3 as a file system without code changes. #aws #S3Files
lckhd.eu/yt6Tz5
English
Mohamed Zayed retweetledi

🚨 AWS DevOps Agent is finally here!
On March 31, 2026, AWS DevOps Agent became generally available.
This is actually a big deal.
It can:
→ Generate CI/CD pipelines
→ Debug failed deployments
→ Suggest infrastructure changes
→ Analyze logs and incidents
→ Help with Terraform & CloudFormation
→ Recommend cost optimizations
→ Explain AWS architecture issues
Basically, it’s like having a junior DevOps engineer inside AWS.
DevOps is slowly becoming AI-assisted operations.
Source: aws.amazon.com/devops-agent/

English

@AmanVirk1 although knowing this is April fool but please don't 🥲
English
Mohamed Zayed retweetledi
Mohamed Zayed retweetledi
Mohamed Zayed retweetledi
Mohamed Zayed retweetledi

🔗 Moving from PHPStorm to Zed for Laravel development
x.com/cmellor/status…
#php #laravel #editor #ide #zed
Chris Mellor@cmellor
English
Mohamed Zayed retweetledi

Laravel 13 is out. Today — March 17, 2026. Announced by Taylor Otwell at Laracon EU. Zero breaking changes.
Here's everything that shipped:
1. PHP ATTRIBUTES ON MODELS
#[Table('invoices')] #[Fillable('name', 'amount')] #[Connection('billing')]
9 attributes replace the protected $ property wall. Optional, non-breaking, backward compatible. Works on models, commands, listeners, mailables, and broadcast events.
2. LARAVEL AI SDK — NOW STABLE
php artisan make:agent InvoiceAnalyst --structured
6 providers (OpenAI, Anthropic, Gemini, Groq, xAI, Ollama), provider failover, streaming, structured output, conversation memory, schema-matched test fakes. Stable release on the same day as L13.
3. PASSKEYS NATIVE
Features::passkeys() — one line in Fortify config.
Face ID, Touch ID, Windows Hello, YubiKey. No packages. Starter kits scaffold the full passkey flow. Private key never leaves the device.
4. REVERB DATABASE DRIVER
REVERB_SCALING_DRIVER=database
Horizontal WebSocket scaling without Redis. MySQL or PostgreSQL coordinates your Reverb instances. Already in your stack.
5. CACHE::TOUCH()
Cache::touch('key', now()->addHour())
Extend a cache entry's TTL without re-fetching its value.
6. TEAMS IN STARTER KITS
Multi-tenant team scaffolding built into the framework. No Spark. No Jetstream. Optional at install time.
Upgrade from Laravel 12:
- PHP 8.3+ required (only hard requirement)
- composer require laravel/framework:^13.0
- Official upgrade guide estimates under 10 minutes for most apps
Full breakdown with before/after code for every feature — linked here.
#Laravel #Laravel13 #PHP #WebDevelopment #LaraconEU medium.com/p/laravel-13-i…
English
Mohamed Zayed retweetledi

Add this log format to your nginx.conf 👇
Then point your agent to /var/log/nginx/access.log and ask:
- What stands out?
- Any anomalies?
- What are the slowest pages?
- What can be improved?
Set it up as a cron or ask ad-hoc things like 'why did response times increase by 0.2s between 17:03 and 17:08'

English









