Penulis:
    Dibuat:2025-08-23Terakhir diperbarui:2025-09-23

    Dokumentasi Intlayer Visual Editor

    www.youtube.com

    Intlayer Visual Editor adalah alat yang akan membungkus situs web Anda untuk berinteraksi dengan file deklarasi konten Anda menggunakan editor visual.

    Antarmuka Intlayer Visual Editor

    Paket intlayer-editor didasarkan pada Intlayer dan tersedia untuk aplikasi JavaScript, seperti React (Create React App), Vite + React, dan Next.js.

    Editor visual vs CMS

    Editor Visual Intlayer adalah alat yang memungkinkan Anda mengelola konten Anda dalam editor visual untuk kamus lokal. Setelah perubahan dilakukan, konten akan digantikan dalam basis kode. Itu berarti aplikasi akan dibangun ulang dan halaman akan dimuat ulang untuk menampilkan konten baru.

    Sebaliknya, Intlayer CMS adalah alat yang memungkinkan Anda mengelola konten Anda dalam editor visual untuk kamus jarak jauh. Setelah perubahan dilakukan, konten tidak akan memengaruhi basis kode Anda. Dan situs web akan secara otomatis menampilkan konten yang telah diubah.

    Integrasikan Intlayer ke dalam aplikasi Anda

    Untuk detail lebih lanjut tentang cara mengintegrasikan Intlayer, lihat bagian terkait di bawah ini:

    Integrasi dengan Next.js

    Untuk integrasi dengan Next.js, lihat panduan pengaturan.

    Integrasi dengan Create React App

    Untuk integrasi dengan Create React App, lihat panduan pengaturan.

    Integrasi dengan Vite + React

    Untuk integrasi dengan Vite + React, lihat panduan pengaturan.

    Cara Kerja Intlayer Editor

    Editor visual dalam sebuah aplikasi mencakup dua hal:

    • Sebuah aplikasi frontend yang akan menampilkan situs web Anda dalam sebuah iframe. Jika situs web Anda menggunakan Intlayer, editor visual akan secara otomatis mendeteksi konten Anda, dan memungkinkan Anda untuk berinteraksi dengannya. Setelah modifikasi dilakukan, Anda akan dapat mengunduh perubahan Anda.

    • Setelah Anda mengklik tombol unduh, editor visual akan mengirim permintaan ke server untuk mengganti file deklarasi konten Anda dengan konten baru (di mana pun file-file ini dideklarasikan dalam proyek Anda).

    Perlu dicatat bahwa Intlayer Editor akan menulis file deklarasi konten Anda sebagai JSON jika ekstensi file adalah .json. Jika ekstensi file adalah .ts, .tsx, .js, .jsx, .mjs, .cjs, maka file akan ditulis sebagai file JavaScript menggunakan babel transformer.

    Instalasi

    Setelah Intlayer dikonfigurasi dalam proyek Anda, cukup instal intlayer-editor sebagai dependensi pengembangan:

    bash
    npm install intlayer-editor --save-dev
    

    Dengan flag --with, Anda dapat memulai editor secara paralel dengan perintah lain:

    package.json
    {
      "scripts": {
        "start:editor": "npx intlayer-editor start --with 'next dev --turbopack'",
      },
    }
    

    Konfigurasi

    Dalam file konfigurasi Intlayer Anda, Anda dapat menyesuaikan pengaturan editor:

    intlayer.config.ts
    import type { IntlayerConfig } from "intlayer";
    
    const config: IntlayerConfig = {
      // ... pengaturan konfigurasi lainnya
      editor: {
        /**
         * Wajib
         * URL dari aplikasi.
         * Ini adalah URL yang ditargetkan oleh editor visual.
         * Contoh: 'http://localhost:3000'
         */
        applicationURL: process.env.INTLAYER_APPLICATION_URL,
        /**
         * Opsional
         * Default sebagai `true`. Jika `false`, editor tidak aktif dan tidak dapat diakses.
         * Dapat digunakan untuk menonaktifkan editor pada lingkungan tertentu demi alasan keamanan, seperti produksi.
         */
        enabled: process.env.INTLAYER_ENABLED,
        /**
         * Opsional
         * Default sebagai `8000`.
         * Port dari server editor.
         */
        port: process.env.INTLAYER_PORT,
        /**
         * Opsional
         * Default sebagai "http://localhost:8000"
         * URL dari server editor.
         */
        editorURL: process.env.INTLAYER_EDITOR_URL,
      },
    };
    
    export default config;
    
    Untuk melihat semua parameter yang tersedia, lihat dokumentasi konfigurasi.

    Menggunakan Editor

    1. Ketika editor sudah terpasang, Anda dapat memulai editor menggunakan perintah berikut:

      bash
      npx intlayer-editor start
      
      Perlu diperhatikan bahwa Anda harus menjalankan aplikasi Anda secara paralel. URL aplikasi harus sesuai dengan yang Anda atur dalam konfigurasi editor (applicationURL).
      Perlu diperhatikan bahwa perintah ini diekspor ulang oleh paket intlayer. Anda dapat menggunakan npx intlayer editor start sebagai gantinya.
    2. Kemudian, buka URL yang disediakan. Secara default http://localhost:8000.

      Anda dapat melihat setiap field yang diindeks oleh Intlayer dengan mengarahkan kursor Anda ke konten.

      Hovering over content

    3. Jika konten Anda diberi garis tepi, Anda dapat menekan lama untuk menampilkan laci edit.

    Konfigurasi lingkungan

    Editor dapat dikonfigurasi untuk menggunakan file lingkungan tertentu. Ini berguna ketika Anda ingin menggunakan file konfigurasi yang sama untuk pengembangan dan produksi.

    Untuk menggunakan file lingkungan tertentu, Anda dapat menggunakan flag --env-file atau -f saat memulai editor:

    bash
    npx intlayer-editor start -f .env.development
    
    Perlu dicatat bahwa file lingkungan harus berada di direktori root proyek Anda.

    Atau Anda dapat menggunakan flag --env atau -e untuk menentukan lingkungan:

    bash
    npx intlayer-editor start -e development
    

    Debug

    Jika Anda mengalami masalah dengan visual editor, periksa hal-hal berikut:

    • Visual editor dan aplikasi sedang berjalan.

    • Konfigurasi editor sudah diatur dengan benar di file konfigurasi Intlayer Anda.

      • Field yang diperlukan:
        • URL aplikasi harus sesuai dengan yang Anda atur dalam konfigurasi editor (applicationURL).
    • Visual editor menggunakan iframe untuk menampilkan situs web Anda. Pastikan Content Security Policy (CSP) situs web Anda mengizinkan URL CMS sebagai frame-ancestors (http://localhost:8000 secara default). Periksa konsol editor untuk setiap kesalahan.

    Pertanyaan yang Sering Diajukan

    Editor visual mengedit kamus lokal dan menyimpan perubahan langsung ke file kode sumber Anda, sehingga melalui proses review Git standar. CMS menyimpan konten di server remote untuk publikasi instan tanpa build ulang.

    Jauh lebih sedikit daripada pengaturan berbasis namespace, karena halaman tidak pernah mengunduh katalog yang tidak di-render. Markup yang dirender di server menyelesaikan kontennya di server, dan kompilator build time mengganti panggilan useIntlayer dengan entri kamus persis yang digunakan komponen, sehingga kunci dan bahasa yang tidak digunakan dibuang. Kamus dinamis membagi sisanya per locale. Dibandingkan dengan alternatif konvensional, Intlayer mengurangi ukuran bundle dan halaman hingga 50%. Lihat optimasi bundle dan benchmark.

    Ya, dan ada dua jalur. Anda dapat memigrasikan konten secara bertahap dengan panduan migrasi i18next atau panduan migrasi next-intl. Atau Anda dapat mempertahankan API Anda saat ini sepenuhnya: adapter kompatibilitas mengekspos API yang sama persis dengan i18next, react-i18next, next-intl, next-i18next, react-intl, use-intl, vue-i18n dan Lingui, tetapi ditenagai oleh kamus Intlayer, sehingga hanya import yang berubah dan kode komponen tetap sama.

    Ya. Plugin sync JSON menjaga file /messages/{locale}/{namespace}.json Anda sebagai sumber kebenaran dan menghasilkan kamus Intlayer darinya, di kedua arah. Plugin sync PO melakukan hal yang sama untuk katalog gettext, dan file per locale memungkinkan Anda membagi konten berdasarkan bahasa daripada mengelompokkan lokal dalam satu file.

    Tidak. Jalankan npx intlayer extract dan Intlayer membaca file sumber Anda, mengeluarkan string yang dihadapi pengguna, dan menulis file .content di sebelah masing-masing, sehingga Anda meninjau diff alih-alih menyalin string ke dalam katalog satu per satu. Lihat perintah extract.

    Untuk alur kerja yang sepenuhnya otomatis, Intlayer Compiler melakukan hal yang sama saat build time pada kode JSX, TSX, Vue dan Svelte, menghasilkan kamus pada setiap perubahan sehingga tidak ada kunci yang perlu dikelola secara manual. Karena bekerja melalui analisis statis, string yang hanya ada di runtime berada di luar jangkauannya.

    Lima bagian, semuanya opsional:

    • Ekstensi VS Code: lompat dari kunci useIntlayer ke file konten yang mendeklarasikannya, ekstrak konten dari komponen, dan jalankan build, fill, test, push dan pull dari command palette atau tab Intlayer.
    • Server LSP: kesadaran yang sama di editor mana pun yang mendukung LSP, dengan go to definition, hover preview dari nilai terjemahan, autocompletion kunci, dan peringatan ketika kunci tidak dideklarasikan di mana pun. Ini juga menyelesaikan panggilan i18next, react-i18next, next-intl dan use-intl.
    • Server MCP: mengekspos dokumentasi Intlayer dan CLI ke Cursor, VS Code, Claude Desktop, Claude Code dan ChatGPT.
    • Agent skills: keahlian terfokus seperti intlayer-config, intlayer-cli dan intlayer-content.
    • Plugin ESLint: aturan no-raw-text menandai string hardcoded.