TGViewer
Андруша пишет код Андруша пишет код @xavescor_code · 1.33K subscribers
Post #217 1.61K
https://github.com/XaveScor/smartbundle
Это наверно третий раз, когда я пишу тут, в канале, о своём проекте.
Предыдущие попытки:
- signal-components - пока на паузе, так как потребитель не нашёлся
- анализатор зависимостей - даже вспоминать смысла нет, так как есть https://e18e.dev

Сейчас же я активно занимаюсь smartbundle, цель которого я хотел бы описать такой фразой:
"Пиши код, а не думай о сборке".
Smartbundle - это zero-config сборщик кода, который концентрируется на сборке библиотек. zero-config же стал возможен по простой причине: люди и так описывают конфигурацию либы в package.json. И моя гипотеза в том, что этой информации должно быть достаточно для esm/cjs/ts сборке библиотек. А сборка - это весьма сложное, как оказалось, занятие. Из простого гемора, который берёт на себя smartbundle:
- корректная генерация esm/cjs
- корректная генерация тайпингов к esm/cjs. А это немного неочевидно, так как нужны разные тайпинги для cjs/esm
- Либа будет работать в react-native. А это чуток гемор, так как там возможен только cjs.
- Либа будет работать с webpack4. Он не умеет в exports из package.json(react-native тоже не работает). А это значит, что надо поприседать, чтобы обеспечить импорт внутренних путей
- у меня есть e2e тесты для различных окружений, чтобы гарантировать, что библиотека будет импортировать корректно везде
- строится на основе vite, а значит с написанием тестов через vitest проблем не будет.
И кучу других мелочей. Я бы назвал smartbundle преттиером из мира сборщиков. Он просто работает(или должен работать).

Из возможных конкурентов я бы назвал tsup и microbundle, но у них есть потенциальный минус: они не умеют генерировать package.json, а заставляют это делать пользователя. Со smartbundle же вам вообще ничего не надо знать о сборке библиотек. К примеру, вы знали что в package.json порядок строчек важен? И это может сломать вашу либу.

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

Этим постом мне хотелось бы сделать не только анонс, но и найти возможных потребителей, так как оочень необходима обратная связь. Каждая библиотека уникальна и каждая из них генерирует собственные баги, которые хотелось бы поймать.
Поэтому пробуйте, пишите, давайте сотрудничать. От меня - снятие вашей головной боли. От вас - фидбек и найденные баги.

Всю инфу о разработке, планах, релизах и всего что связано со смартбандлом буду выкладывать на https://t.me/smartbundle, так как делиться новостями хочется, а спамить ими - нет.

P.S. Если глянете документацию и дадите отзыв по ней - так же буду благодарен.
GitHub GitHub - XaveScor/smartbundle: Just Code, No Configs. The Library Bundler That Respects Your Time Just Code, No Configs. The Library Bundler That Respects Your Time - XaveScor/smartbundle
  • 👍 15
  • 🔥 7
  • 🤡 4
  • 💩 2
  • ❤ 1
More from @xavescor_code
  1. Sep 29, 2026https://x.com/thsottiaux/status/2104823812042940713 Ну, впервые в жизни ванганул, и походу…
  2. Sep 24, 2026Тут в моём казахстанском пузыре происходит прикольная вещь. Ща, в пятницу, в кз обьявлен т…
  3. Sep 22, 2026Чуть чуть проснусь от спячки по важному поводу. Мы походу пришли к AGI в ЛЛМках. Ну, точне…
  4. Aug 6, 2026Уже почти месяц прошел после взлома моделями OpenAI – HuggingFace. Спустя это время каждая…
  5. Jul 28, 2026https://t.me/denissexy/11581 Знаете, меня очень сильно удивляет вопрос: какого чёрта подоб…
  6. Jul 28, 2026Антропик: китайцы дистилируют наши модели, надо забанить их Опенаи: китайцы дистилируют на…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →