Markdown, що рендериться в 5 разів швидше.
Intlayer постачається з власним рушієм Markdown. Без залежностей, із MDX, розбір на сервері та нативний рендеринг у React, Next.js, Vue, Svelte, Solid, Preact і Angular. Вам більше не потрібно обирати рендерер.
Якщо поле frontmatter locale пропущено, Intlayer використовує налаштовану мову за замовчуванням. Ви можете зберігати весь вміст в одному файлі markdown без префіксів мови.
content └── markdown-file.content.md
Поле frontmatter locale визначає мову вмісту. Воно необов’язкове. Якщо не вказано, Intlayer використає мову за замовчуванням, яка також слугує запасною, якщо переклад відсутній.
content ├── markdown-file.en.content.md ├── markdown-file.fr.content.md └── markdown-file.es.content.md
Оголошуйте Markdown безпосередньо у словнику TypeScript, ESM або JSON за допомогою функцій md() та file(), поєднуючи переклади з повною типобезпекою.
content ├── article.content.ts ├── article.en.md └── article.fr.md
У 5 разів вища пропускна здатність, ніж у markdown-to-jsx
Парсер переписано навколо кешованого порядку правил та інкрементального lookbehind, тож документ обходиться один раз замість повторного сканування правило за правилом. Той самий Markdown, той самий результат, частка роботи.
Відносна пропускна здатність розбору та рендерингу, більше — краще.
надсилається, якщо застосунок не оголошує жодного вузла Markdown — рендерер вилучається під час збірки.
чанку парсера, що завантажується ліниво за Suspense і ніколи не блокує перше відмалювання.
залежностей під час виконання — нема чого аудитувати й нема чого синхронізувати.
Один рушій замість списку покупок
Кожен проєкт завершується однією й тією ж рутиною: зважити markdown-to-jsx проти marked, remark і MDX, під’єднати переможця, а потім виявити, що він не вміє MDX, що його типи неточні або що ланцюжок плагінів ламається на клієнті. Intlayer робить цей вибір за вас.
- remark і rehype здатні на більшість цього, але через ланцюжок плагінів, який ви збираєте самі і який у браузері не завжди поводиться так само, як на сервері.
- markdown-to-jsx рендерить лише React, а marked віддає рядок HTML. Для Vue, Svelte, Solid чи Angular просто немає рівноцінного варіанта.
- Жоден із них не дає типізованого frontmatter: ви або надбудовуєте шар контенту, або розбираєте метадані самотужки.
Той самий вузол у кожному фреймворку
Вузол Markdown перетворюється на нативний вивід того фреймворка, в якому опинився: JSX, VNode або рядок HTML. Svelte, Solid і Angular підтримані повноцінно, а не як додаток.
Розбір на сервері, рендеринг на клієнті
Розбір і рендеринг — два окремі кроки. parseMarkdown створює на сервері серіалізовний AST, браузер отримує його як JSON, і будь-який рендерер приймає його як є: документ ніколи не обходиться двічі.
Налаштуйте один раз, уточніть для вузла
Оголосіть компоненти в провайдері — і кожен вузол Markdown у застосунку їх підхопить. Коли один вузол має відрізнятися, use() перевизначає лише його: без ланцюжка плагінів і без окремого кроку збірки.
use() має пріоритет над провайдером, а провайдер — над типовим рендерером.
Типізований frontmatter без шару контенту
Frontmatter файлу Markdown розбирається разом із документом і доступний на вузлі як типізований об’єкт метаданих. Редакційні поля, заради яких ви ставили шар контенту, просто є — з автодоповненням.
Вузли html() проходять той самий конвеєр: теги зіставляються з вашими компонентами, з тією ж типізацією та тими ж правилами перевизначення.
Типобезпечні переклади, що зберігаються у вашому репозиторії.
Оголошуйте контент поруч із компонентами у TypeScript або JavaScript. Intlayer автоматично генерує типи, забезпечуючи вам автодоповнення, валідацію та миттєвий зворотний зв'язок. Більше ніяких відсутніх ключів, перемикань контексту або зламаних реалізацій.
Автоматизуйте переклади зі свого терміналу.
CLI для аудиту, заповнення та перекладу JSON і Markdown за допомогою ШІ.
Запустіть `npx intlayer fill`, щоб виявити відсутні ключі та згенерувати переклади за допомогою OpenAI, Claude або локальних моделей. Зберігайте історію Git чистою.
Припиніть платити за слово. Автоматизуйте за допомогою ШІ.
Альтернатива з відкритим кодом та self-hosted для Crowdin і Lokalise. Створено для сучасних робочих процесів розробників.
Керуйте перекладами безпосередньо в коді або через візуальний редактор. Використовуйте ШІ для миттєвого перекладу. Співпрацюйте з командою без обмежень щодо кількості користувачів.
Поєднайте локальний код з віддаленим вмістом.
Керуйте багатомовним вмістом без додаткових витрат. Intlayer дозволяє поєднувати локальні словники з віддаленим керуванням, забезпечуючи миттєву синхронізацію для гарячих оновлень без перезбирання. Використовуйте вебхуки для CI/CD, керуйте прапорцями функцій і дозвольте ШІ для автоматичного перекладу (у розробці) подбати про решту.
Перемикайте функції миттєво — без розгортання.
Словники Intlayer — це не лише текст. Використовуйте їх, щоб задавати логіку, стилі та об'єкти конфігурації. Завдяки Live Sync ви можете вмикати та вимикати функції, змінювати теми інтерфейсу та оновлювати поведінку застосунку в реальному часі безпосередньо з CMS.
Ваш майданчик для продуктових експериментів.
Станьте першими, хто дослідить нову бета-версію Intlayer — A/B-тестування на базі ШІ, створену, щоб підвищити видимість і допомогти приймати розумніші продуктові рішення. Тестуйте будь-що в реальному часі — від текстів і дизайну до цілих функцій — і дозвольте даним показати, що справді працює.
Створено спільнотою
Познайомтеся з неймовірними учасниками, які роблять можливим Intlayer.
Припиніть обирати рендерер Markdown
Він уже в Intlayer: без залежностей, із MDX, готовий до SSR, типізований наскрізно й зникає з бандла, якщо ви його не використовуєте.