Как не наху*вертить в коде с Cursor AI + Supabase?
В последнее время все чаше слышу, что Cursor AI или подобные заменят программистов, продакты смогут за час собирать MVP.
В твиттере был такой чувак, Leo, индихакер. Он активно продвигал быструю разработку с Cursor AI, шерил всю информацию как что делал. В итоге, дорос до хорошего MRR, а потом вдруг перестал постить.
Что произошло?
Какой чувак, следил за Leo и решил поломать ему прод: набросал много рандомных записей в базу данных, вытянул API ключи и начал активно их юзать. В итоге Leo сказал, что с него хватит и отключил свой SaaS, говорит что планирует переписать с использованием нормальных "программистов" на Bubble.io)) Тоже кстати NoCode только более продвинутый.
Или другой более известный чувак, Pieter Levels с Photo AI, Remote OK недавно написал, что его начали жестко DDOS-ить, благо у него был прошаренный девопсер, который заметил это и просто отключил сервис.
Cursor AI и ему подобные это не серебряная пуля, которая решит все ваши проблемы и закодит идеальный MVP, нужно перепроверять каждое изменение. Например, буквально неделю назад я случайно дропнул продовую базу с Supabase, просто не обратил внимание на то, что пишет мне Cursor AI и задеплоил.
Написал 15+ советов, как лучше работать с Cursor AI и пилить ваш SaaS, чтобы не повторить судьбу Leo)) 😁 Надеюсь будет полезно
1. Проверьте что все ваши ключи, токены от апишек в .env файле. Ни в коем случаем не храните в строках в коде!
2. Обрабатывайте все формы с вводом текста через DOMPurify, ZOD или аналоги. Иначе, юзер может вставить свой скрипт в вашу форму, он выполнится и сможет достать защищенные данные.
3. Лучше перенесите максимально всю логику на бекенд или в Edge function от Supabase / AppWrite. Фронт должен быть тонким (без сложной логики).
4. Добавляйте авторизацию, даже самую простую. У того же Supabase можно сделать в пару промптов. Иначе, может набежать дофига индусов и поломать ваш прод. Вот, например стартовый промпт для вебапки с авторизацией через Supabase.
5. Уберите все логи в консоль из кода. Плохие юзеры могут через логи достать инфу и дальше поломать ваш прод.
6. Используйте готовые UI компоненты, так и лендос будет красивее + не будет сломанной логики. Хорошие библиотеки компонентов тут: Shadcn, 21dev
7. После каждой просьбы Cursor AI добавляйте: check that there are no errors. Для этого подключите вот этот MCP, через него Cursor сможет ходить в консоль, делать скриншоты и как итог меньше ломать код при новых изменениях. Инструкция по установке.
8. Для старта лучше использовать готовые шаблоны приложений, где уже все работает. Например, тут много шаблонов готовых веб приложений. Дальше скачиваете шаблон, открываете в Cursor AI и дорабатываете как вам нужно.
9. На старте не пилите свой бекенд, лучше используйте готовое решение аля Supabase / AppWirte. Там множество готовых модулей: база данных, edge функции, авторизация, админ панель и много всяких других тулов.
10. Лучше сразу добавить Sentry, чтобы быстрее находить и фиксить баги на проде. А то вам напишет пользак, что у него ничего не работает, а вы даже не сможете понять в чем проблема.
11. Для аналитики хорошо подходит PostHog, самое топовое это повтор сессий, сможете понять что в вашей апке смущает пользователей или где поломалось.
12. Не добавляйте много сторонних библиотек, чем их больше, тем сложнее поддерживать код. Может наступить момент, что разные библиотеки будут конфликтовать друг с другом и все поломается.
13. Регулярно делайте бекапы базы данных, я недели 2 назад случайно дропнул весь прод, в итоге не смог восстановить 100% данных. Для Supabase лучше вообще сделать 2 отдельных проекта: для Dev и Prod.
14. Не просите нейронку сразу сделать много много изменений, идите по шагам, иначе поломаете код или запутете нейронку еще больше. Каждое изменение отдельно отправляйте на Git (Для некоденров, Git это типа хранилище разных версий приложения. Если что-то пойдет не так, вы сможете откатиться назад на работающую версию.)
15. Попросите нейронку пройтись по коду и описать как работают отдельные модули, при каких-то больших изменениях прикрепляйте документацию и просите чтобы нейронка не поломала. Идеально, это написать тесты, но на старте они вам точно не нужны. Тестим на проде 😁
16. Если хотите еще больше защитить бдшку, то добавьте RLS - row level security. Это такие правила, кто может писать / читать из вашей базы данных. Чтобы написать хорошие правила можете юзать вот этот промпт.
17. Если у вас веб приложение, то разделите его на 2 части: лендос + само веб приложение. Так, если вы что-то поломаете в приложении, хотя бы лендос будет работать.
18. Для хостинга идеально подходит Vercel, Netlify. Сможете захостить и фронт и бек, и даже базу данных, если не хотите использовать Supabase / AppWrite. Если у вас свой сервак или арендовали на Hetzner, то советую использовать обертку над серваком аля Coolify / Dockploy, будет доступен почти весь функционал Vercel, только на вашем серваке.
P. S. написал гайд, как сделать хороший PRD - product requirements document для Cursor AI, чтобы он не написал фигни.
Разбираю еще больше историй успеха SaaS и вральных приложений у меня в телеграм канале
Части:
1. Увольнение
2. Тренажер для менеджеров → общения с детьми
3. Выводы
4. Что дальше?
Перед вами таблица с режимами игры в шахматы на Lichess. Как вы думаете, какой лимит времени самый популярный среди игроков? Какой бы режим выбрали лично вы и почему? Зависит ли наш выбор от предложения? Давайте проведем исследование.
Моя история создания ИТ-бизнеса от первой прибыли к полному провалу.
Есть даже один скам, но красивый
Если вы только знакомитесь с миром AI-инструментов для разработки (Cursor, Bolt.new, Windsurf, Loveable, V0, Replit), этот пост поможет разобраться в их особенностях.
В этом кейсе я расскажу, как я из идеи об инструменте которого мне не хватало в моих рабочих процессах, с чистого листа создал в одиночку стартап, проведя его через все этапы от проектирования до запуска, своими руками (и мозгами) делая всю работу. Какой получился результат, принёс проект пользу лично мне, и оказался ли полезен людям. Погнали!
Разберем выручку, монетизацию, на какой платформе сделали и тп. Будет полезно вдохновиться и возможно построить клон с Lovable / Cursor AI
👍🏼📈