| ▲ | socketcluster 4 hours ago | |
This is why I built https://saasufy.com/ - Vibe coders shouldn't trust themselves with backend security. Unfortunately, it's extremely difficult to get right. There's a lot to think about; - Schema validation with appropriate size limits on all relevant fields. - Authentication. - Access control. - Backpressure management and rate limiting in case a (possibly malicious) user tries to perform too many computationally expensive actions in a short time. - Ensuring that the actions of one user doesn't throttle another user which is connected to the same process/host, e.g. using async constructs to avoid freezing the main process. - DDoS mitigation. - Avoiding race conditions. - Designing a good database schema, with well chosen indexes, with deterministic IDs/idempotency to avoid double-insertion scenarios. You don't want to be forced to rely on overly complex queries with a lot of joins. This doesn't scale well and rarely necessary. - Logging and error handling. - Avoiding conflicts and accidental overwrite with old data when multiple users are editing different fields of the same resource concurrently. - Efficient distribution of realtime messages. - Scalability. The list goes on and on... And every piece has to be implemented perfectly. This involves a huge number of carefully thought-out decisions. | ||