Pull to refresh

Comments 37

Молодец, Арсений! Я сама в такой же кроличьей норе сейчас, прекрасно понимаю. Надеюсь, у тебя есть команда, а то у меня вот нет😅, потому что никто не понимает вообще чего я хочу

Круто, продолжайте R&D. Впереди много достижений вас ждет.

Благодарю)

Проблема с punycode доменом

Надеюсь вплотную используете ИИ?

Сильно подозреваю что ими она и написана.

К сожалению нет, действительно учился на ошибках, советовался с сеньор разработчиками, но использование ИИ не отрицаю)

У этой "соцсети" есть какое-то направление, тематика?
Что бы быть не просто ещё одной, а - специфичной?
Есть к этому интерес?

Да, планирую развивать направление для школьников и студентов (в т.ч учителей). Сейчас активно работаю над учебными группами и хештегами предметам 🙃

2FA планирую сделать, сейчас только OTP код на почту, без паролей

Создать такое в 15 это отличный страт!!! Успехов,Арсений !

Спасибо, буду развивать свои навыки❤️‍🔥

а часто ты в 15 Джун с ЗП ожиданиями 180к?

"без бэкенда на Node.js"

Но используется Supabase (готовая авторизация, БД, реалтайм на сокетах, хранилище и пр). Автор статьи, походу, просто обклеил это всё фронтендом, понастраивал политики в базе и выдал продукт.

Если Supabase уйдёт из РФ, уберёт self-hosted или что-то ещё, то вся "российская соцсеть" превратится в тыкву.

"одной из самых сложных задач для программиста: realtime‑функционал, авторизация"

Опять же, всё это реализовано в Supabase. А realtime там реализуется в пару строк, насколько я знаю.

"личные сообщения с E2E‑шифрованием (ECDH P‑256 + AES‑GCM);"

E2E в браузере небезопасен, если сервер скомпрометируют, то можно подменить JS-файлик так, чтобы он отправил приватные ключи куда надо

данные хранятся только на российской инфраструктуре;

Но используются Cloudflare Workers

Без Next.js и бэкенда на Node.js: вся бизнес-логика реализована в PostgreSQL через RPC-функции и RLS-политики.

Засовывать всю бизнес-логику соцсети (СОЦСЕТИ, напоминаю!) в процедуры pgSQL - выстрел себе в ногу. Непонятно, как это тестировать и версионировать. Ну, и масштабировать. Если каким-то чудом наберётся тысяч 5 активных юзеров, то это всё ляжет, а поднять второй инстанс для балансировки будет стоить уже не 999 рублей.

Миграция 40 (ban_rls_server_side). Раньше проверка бана выполнялась на фронтенде.

Это просто золото. Сначала слова про криптографию, но при этом базовая проверка забанен юзер или нет была изначально повешена на клиент. То есть буквально, если юзер забанен, то клиент прячет кнопочку просто. И подаётся это всё как ценный инсайд и "уроки на ошибках", я хз.

Нейросеть для определения неприемлемого контента работает прямо в браузере пользователя через TensorFlow.js + NSFWJS. Картинка проверяется до загрузки на сервер — так сервер вообще не получает NSFW‑контент. [...] минимизирует юридические риски.

То же самое. Иллюзия безопасности. Снова нарушется базовое правило, что клиенту доверять нельзя. За раз можно написать скриптик, который задолбит этот Supabase (минуя браузер и волшебный Tensorflow.js) и зальёт гигибайты порнухи, расчленёнки и прочего. Юридические риски минимизируются прям конкретно.

Приватный ключ шифруется паролем пользователя через PBKDF2 → AES‑GCM и хранится в БД в зашифрованном виде. Так ключ доступен с любого устройства, но сервер его не знает.

То есть сервер сам раздаёт публичные ключи? Сервер тогда может провести MitM, подсунет юзеру свой чужой ключ. Без верификации ключа вне сервиса (как в сигнале, вроде), это "шифрование" от владельца сервера или товарища майора не спасёт.

EXIF-стриппинг при загрузке любого фото

Парадоск. Если сообщения зашифрованы E2E, то как сервер очищает EXIF-данные? То есть сервер либо видит фото, либо это происходит на клиенте, но в чём тогда смысл очистки, если всё равно можно будет отправить данные, если захочется?

Также зашёл на сайт, немного удивился. У соцсети только 99 юзеров, а уже прикрутили онлайн-кассу, тарифы (150 руб/мес, 1000 руб/год), реферальную систему и split-cost подписки.

Агора — открытая российская социальная сеть для общения, обмена идеями и создания сообществ

А где ссылка на исходный код, если открытая? Или что тогда подразумевается под "открытая", если не Open Source?

А ещё заметил, что в комментах куча хвалебных од от свежих аккаунтов

согласен, очень выглядит странным. куча противоречий и "друг" программист. очень похоже не схему при которой ребята хотят получить грант

Скрытый текст

Думал всё-таки попробовать потыкать сайт, а нет, сломалось. А при входе через ВК происходят страшные вещи

upd: также логика проверки "можно ли зарегать email" выполняется тоже на клиенте ._.

дело Дениса Попова процветает :D
Но тут хоть не нескучные обои, правда и не работает..

Большое спасибо за проделанную работу и комментарий

так там отчётливо видно стилистику клауди с его скиллами на фронт и тд

сайт полностью без какой либо ручной работы был написан ии

На бекенде всё тоже не очень, потыкал пару запросов, смог получить список всех сообщений и пользователей. К счастью, INSERT и UPDATE не работают.

Плюс в некоторых местах возможны инъекции JS-кода

а где агора.com? ссылка вообще ведет не туда

Работает без VPN

А какая конкретно ты модель и какой версии? И на какую дату у тебя актуализация?

Сначала подумал что какой то интересный проект с крутыми тенологиями но как я понял там просто смесь supabase без бекенда в целом. Не знаю вайб там или нет но мне кажется что с такими технологиями далеко не уйти. Ну работает сомнительно, я как фанат обычного бекенда и обычной бд без этих всяких как бы вайбкодерских штук. Скорее что это все просто прототип на данном этапе

И, что не менее важно, — команда

А кто подскажет откуда это супер тире?

авторизаци

я, 

Откуда такой перенос? И далее такой жести по тексту очень много.

А ещё у меня есть наставник в программировании — именно он помог сделать первые шаги в разработке

ChatGPT ?

А если вы школьник и думаете: «Это слишком сложно для меня», — нет. Просто начните. Первую версию я написал за три недели, не зная TypeScript. Всё остальное пришло по ходу работы — и, конечно, с поддержкой тех, кто рядом.

ChatGPT всегда поддержит )

P.S.

Агора (от др.-греч. ἀγορά) — рыночная площадь в древнегреческих полисах, являвшаяся местом общегражданских собраний.

Агора - сотая часть израильского шекеля.

Спасибо за ваш интерес к тексту :)

Длинное тире на Windows — Alt + 0151 🙃

а зачем его использовать?, вместо 1 клавиши дать целых 5, сдается мне что товарищ ИИ врёт🤣

Меня очень смущает скриншот в разделе «О'бщение» из этой статьи... Что это за магический токен и нормально ли его публиковать? :)

P.s. Это ведь для тестов там кодом ответили, да? Или другой человек?..

Картинка проверяется до загрузки на сервер — так сервер вообще не получает NSFW‑контент.

Ха-ха... А если уберут проверку загребущими ручками?)

P.s. Ох уж этот неразрывный пробел в статье...

Мне лень дальше вчитываться — смотрите комментарии выше, там неплохо разобрали ;)

Е2E-шифрование в РФ запрещено
см. ст. 10.1 ФЗ №149-ФЗ

Кстати вот гитхабчик его «друга программиста сеньора наставника». https://github.com/SergeySergeichKolev

После недолгого ресерча его тгк, выяснилось что это паренек после курсов скилбокса, вот такие нынче сеньоры

Sign up to leave a comment.

Articles