TikTok-style video capture and drag-and-drop — making the app modern
There's a difference between an app that works and an app that makes you want to use it.
TikTok-style Video Capture
The capture interface is inspired by TikTok: central button, full-screen preview, minimal controls. The biggest challenge: video compression. Raw smartphone videos weigh tens of MB for a few seconds. I configured the capture to limit resolution and bitrate.
Drag-and-drop Tabs
TAMSIV has 6 main tabs. I implemented drag-and-drop reordering: long press, drag, release. The order is saved in the database in userProfile.mainTabsOrder.
The major gotcha: in a GestureDetector, you must use components from react-native-gesture-handler, never from react-native. I lost hours on this bug.
The Infinite Carousel
To navigate between feed items, I implemented an infinite carousel with pre-loading of adjacent items. No spinner, no visible loading. The illusion of always-ready content.
These details are insignificant individually. Collectively, they create a sense of fluidity that makes the difference between an app you use out of obligation and one you use for pleasure.