Skip to content

Latest commit

 

History

43 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ojhub-node

Провальная миграция Object Hub на fastify.js, задачей которой было разом заменить весь legacy php на node.js, но из-за слишком кривого кода и огромного числа уязвимостей в коде я отдал предпочтение в пользу ojhub-openGo

Почему сначала node.js?

В сентябре 2025 я увидел как Object Hub упал от 10 одновременных посетителей, меня это мягко говоря очень напугало, от чего я принял решение "избавиться от PHP", по итогу 2 месячных мотаний от Elixir и Go до node и asm (я не шучу) я всё же остановился на node так как у меня:

  1. не было понимания пакетов в Go
  2. не хватило уверенности начать писать
    Но даже так nodejs я писал не до конца, и где то под новый год в декабре 2025 я за вечер создал ojhub-go и убрал глубоко в архив. В январе-феврале был основной рывок когда я за 2 недели реализовал 50% API, и на этом я снова заглох, еле как дотянув 70% к июню я выкатил в прод nodejs, нашёл гигантское количество уязвимостей, и начал вайбкодить ojhub-openGo

Почему я решил бросить node.js?

  1. Ресурсоёмкость V8
  2. Огромное количество уязвимостей и багов
  3. Нарушение протокола API
  4. Неимение опыта в адекватных бекенд языках (который справедливости ради я получил на этой миграции)

Статус порта?

Отключен и выброшен. Node.js не работает в продакшне с 27 июля, а его развитие на этом и остановлено, зависимости возможно уже сгнили и для запуска ojhub-node вероятно потребуется куча ручных патчей. И то даже так вам это мало что даст - тут кривой авторский код с обычным fastify.js без всяких PrismaORM или чего то в таком духе

Будущее этого node.js порта?

Его не будет, я его также как и весь код object hub выкладываю в Public Domain но уже с целью показать, на какие громкие провалы способен человек без чёткой цели, я не горжусь за сам node.js порт, я горжусь за извлечённый из попытки миграции опыт
Самое главное что я понял:

  1. Не надо делать внезапный "давайте перепишем всё сразу", лучше делать адскую слоистую архитектуру но постепенно портируй всё
  2. Не надо никуда торопиться, а если и надо то бери Claude
  3. Если вы и решились вайбкодить, 100 раз проверьте что вам выдал ИИ, а то вот так вставите и внезапно выяснится что у вас в redis складывается адрес почты и токен пользователя

Гайд на запуск?

Если честно я не хочу поддерживать и вспоминать этот ужас, тут всего +-3700 строк кода, вы вполне уверенно сможете даже через самую тупую нейросеть раскопать этот код

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages