Loved how @boltapp bottom sheet collapses on the home screen, so I recreated it in React Native. Three snap points, drag-linked fades, the search bar riding up under the handle all Reanimated + Expo.
this is f*cking dangerous
someone just open sourced the entire "LOOP ENGINEERING" framework for free
build a hedge fund printing alpha 24/7 by feeding it into claude code with my article below
bookmark before someone takes it down
Small CI tip:
On Node.js 22+, use `node --run <script>` instead of `pnpm run <script>` for simple package scripts in GitHub Actions.
Tiny change, saves 200-400ms per call.
The demo is built with React Native, and it's open source (along with 120+ React Native animations).
The secret ingredient is react-native-skia. After getting checkmated, we take a snapshot and then run the shader.
The "invisible" secret ingredient is Pulsar. It brings high-quality haptics and really adds a three-dimensional feel to the whole animation.
https://t.co/dwQaCluwt9
expo-media-viewer just crossed ~10k downloads/month.
It turns any Expo thumbnail layout into a native fullscreen image/video viewer, with transitions, zoom, swipe dismiss, video playback, and auth URLs.
v0.5.1 is out today!
Pro tip: If you want Codex to debug/enhance your iOS animations have it use FFmpeg to convert a screen recording of the animation to a sprite sheet it can analyze.
This also works if you want to 'decompile' an animation to code.
React Session 4 Notes
Takeaways:
- State is the single source of truth.
- Normal variables do not trigger UI updates.
- useState gives value and setter.
- Setter updates state and signals React.
- React creates new virtual DOM after update.
- React compares old and new virtual DOM.
- Only changed real DOM nodes are updated
- Component must return one parent node.
- Props pass data from parent to child.
- Every component instance has its own state.
- Keys help React identify list items.
- Do not use index as key when list changes.
- Do not mutate array/object state directly.
- Use new reference for state updates.
- Next.js improves first paint using SSR/server components.
- Use client components only where interactivity is needed.
🧵 Day 17/30 — #SystemDesign
Idempotency: How systems avoid duplicate payments, orders, and repeated actions
A user clicks “Pay Now” once… but the button freezes. They click again. Network retries happen. Mobile app resends the request after reconnecting. Suddenly your system may create two orders or charge the card twice.
That’s why reliable systems use Idempotency.
An operation is idempotent when repeating the same request multiple times produces the same final result as doing it once. The first request performs the action. Repeated identical requests should not create duplicate side effects.
This is critical in payments, bookings, checkout flows, and APIs exposed to unstable networks.
⸻
Simple Example
Without idempotency:
→ User clicks Pay twice
→ Two payment requests processed
→ Two charges happen
With idempotency:
→ Request contains unique idempotency key
→ First request succeeds
→ Duplicate request with same key returns original result
→ No second charge
Same request. Same outcome.
⸻
How It Works
Client sends request:
POST /payments
Idempotency-Key: abc123
Server stores:
→ Key
→ Request fingerprint
→ Final response / status
If same key arrives again:
→ Detect duplicate
→ Return saved response
→ Skip duplicate processing
This makes retries safe.
⸻
Where It Matters Most
→ Payment APIs
→ Order placement
→ Ticket booking
→ Wallet transfers
→ Subscription renewals
→ Webhook processing
→ Inventory reservations
Anywhere duplicates are expensive or harmful.
⸻
Real Companies
→ Stripe popularized idempotency keys in APIs
→ Payment gateways use retry-safe transactions
→ Booking systems avoid duplicate reservations
→ Fintech apps rely heavily on idempotent writes
Strong systems assume retries will happen.
⸻
Common Implementation Methods
→ Idempotency keys from client
→ Unique DB constraints
→ Transaction logs
→ Deduplication tables
→ Message consumer dedupe in queues
Often multiple layers are combined.
⸻
Challenges Most Ignore
Bad implementations fail when:
→ Same key used for different payloads
→ Key expires too early
→ Response not stored properly
→ Race conditions on concurrent requests
→ Only frontend prevents double click
Frontend protection is not enough. Backend must enforce safety.
⸻
Idempotent vs Non-Idempotent
Usually idempotent:
→ PUT update profile
→ DELETE resource (repeated delete still deleted)
Often non-idempotent by default:
→ POST create order
→ POST charge payment
But POST can be made idempotent with proper design.
#30DaysOfSystemDesign #Idempotency #BackendEngineering
As a React.js Developer, how many of the below concepts can you explain :
1. Fiber Architecture
2. Concurrent Mode
3. Suspense for Data Fetching
4. Passive Effects vs Layout Effects
5. Hydration
6. useTransition
7. FlushSync and Deferred Updates
8. Error Boundaries
9. React.memo vs useMemo vs useCallback
10. Context Re-renders
Most online tools only optimize file size, but they're still reinflated in memory.
This tool will optimize your GLTF/GLB assets and export to GPU-compressed KTX2, entirely client-side.
Try it here: https://t.co/FydO3NEXjB
#threejs#gamedev