String.is adalah perangkat open-source, privacy-friendly untuk pengembang. Anda dapat melihatnya beraksi di sini.

String.is adalah alat konversi yang bertentangan, dengan tujuan berikut:
String.is telah dikonfirmasi untuk bekerja pada chrome, safari, firefox, dan edge. Internet Explorer tidak didukung.
Instal dependensi:
yarn installSiapkan Git Hooks:
yarn husky installJalankan server pengembangan:
yarn dev... dan kemudian buka http: // localhost: 3000 di browser Anda.
Untuk menjalankan semua cek sering, ketik cek, tes, dan membangun untuk produksi:
yarn allBangun gambar Docker:
yarn docker-buildatau
docker build -t string-is .... dan kemudian jalankan:
yarn docker-runatau
docker run -p 3000:3000 string-is Atau Anda dapat membangun dan menjalankannya dengan docker-compose :
docker-compose up... atau bahkan menjalankannya langsung dari Docker Hub:
docker run -p 3000:3000 daveperrett/string-is:latest Saat ini platform linux/arm64 dan linux/amd64 didukung.
Folder src/lib berisi sebagian besar logika konversi, dan merupakan naskah murni, tanpa diperlukan pengetahuan bereaksi.
src/lib/identities berisi pengidentifikasi yang mengambil string input dan mengembalikan tingkat kepercayaan bahwa input dalam format tertentu. Misalnya, JwtIdentifier mengembalikan angka yang menunjukkan tingkat kepercayaan (antara 0 dan 100) bahwa string input yang diberikan adalah token JWT.src/lib/inputs berisi parser yang memuat string dari berbagai format. Misalnya, JsonInput mem -parsing string JSON dan mengembalikan objek.src/lib/outputs mengambil data yang diuraikan dan memformatnya ke dalam format output tertentu. Misalnya, JavaScriptOutput mengambil string JavaScript, memformatnya sesuai dengan opsi pemformatan yang disediakan, dan mengembalikan hasilnya.src/lib/converters adalah input → Pasangan Output - lem yang melakukan konversi antar format. Misalnya, CsvToJsonConverter mengambil string CSV sebagai input, memasukkannya ke CsvInput untuk parsing, dan menyalurkan hasilnya ke JsonOutput untuk pemformatan.Untuk menambahkan konverter baru:
identity (di bawah src/lib/identitas) untuk format dari . Dalam hal ini kami mengkonversi dari teks biasa, dan kami sudah memiliki prajurititas, jadi kami tidak perlu menambahkan identitas baru. identity harus mengekspor (a) fungsi confidence yang, diberi string input, mengembalikan angka dari 100 yang menggambarkan kepercayaan bahwa input yang diberikan cocok dengan identitas, dan (b) array converters yang dapat digunakan identitas.identity baru di Langkah (2), pastikan untuk mengekspornya di SRC/LIB/IDENTITIES/INDEX.TS.output (di bawah SRC/LIB/output) untuk format untuk . Output harus mengekspor fungsi output yang, mengingat string input (atau mungkin objek, tergantung pada konversi yang terjadi) dan objek options , akan mengonversi input menjadi string output yang diinginkan.output baru pada langkah (4), pastikan untuk mengekspornya di SRC/LIB/Outputs/Index.ts.converter baru (di bawah SRC/LIB/Converters) untuk pasangan input + output . Konverter harus mengekspor (a) fungsi operation yang melewati string input dan objek options ke output yang sesuai, dan (b) outputId , yang menentukan output mana yang digunakan.converter baru di Langkah (6), pastikan untuk mengekspornya di SRC/LIB/Converters/Index.ts. Pastikan juga untuk menambahkan entri ke lokal/en/halaman-converter.json] sehingga halaman pendaratan yang dihasilkan secara otomatis akan memiliki judul, teks intro, dan contoh yang benar.outputId baru pada langkah (6), tambahkan komponen output reaksi (di bawah SRC/komponen/domain/konversi/output) untuk membuat jenis output baru. Jika Anda menggunakan kembali jenis output yang ada (mis. Konversi ke JSON atau YAML), Anda dapat menggunakan kembali komponen output yang ada di sini. Jika inputs yang sesuai, outputs , converters , dan komponen reaksi ada di tempat dan diekspor dengan benar, Anda harus dapat menggunakan konverter baru Anda, mengingat string input yang sesuai yang memicu confidence yang tidak nol.
Jika Anda ingin 100% yakin bahwa privasi Anda dilindungi, Anda dapat dengan mudah mengatur string. Contohnya untuk penggunaan pribadi atau organisasi Anda sendiri.
Cara tercepat untuk menggunakan string.is adalah dengan menggunakan platform Vercel (gratis untuk penggunaan non-komersial). Lihat dokumentasi penempatan berikutnya.js mereka untuk lebih jelasnya. Klik tombol Deploy di bawah ini untuk menggunakan aplikasi ini dengan Vercel:
Netlify dan Heroku juga merupakan pilihan yang baik untuk hosting gratis. Klik tombol Deploy di bawah ini untuk menggunakan aplikasi ini dengan Heroku:
Sayangnya String.is saat ini tidak mendukung build statis melalui next export (yang akan memungkinkan hosting pada mis. S3), karena fitur i18n yang digunakan saat ini tidak didukung untuk bangunan statis.
Atur variabel lingkungan NEXT_PUBLIC_BASE_PATH ke sub-jalur, lalu bangun proyek sebelum digunakan. Nilai ini harus ditetapkan pada waktu pembangunan dan tidak dapat diubah tanpa membangun kembali karena nilainya diinline dalam bundel sisi klien.
Misalnya, jika Anda menggunakan https://tools.example.com/string-is , Anda harus mengatur NEXT_PUBLIC_BASE_PATH ke /string-is . Anda tidak perlu mengatur variabel ini jika Anda menggunakan akar domain.
Bangun dan jalankan dengan Docker:
docker build -t string-is --build-arg NEXT_PUBLIC_BASE_PATH= " /string-is " .
docker run -p 3000:3000 string-is Atau membangun dan menjalankan dengan docker-compose :
export NEXT_PUBLIC_BASE_PATH= " /string-is "
docker-compose up --build String.is mendukung lokalisasi penuh. Bahasa baru harus ditambahkan di bawah locales/ folder dalam format JSON (lihat locales/en/ Sebagai contoh). Bahasa Inggris saat ini adalah satu -satunya lokal yang disediakan, tetapi dukungan untuk bahasa baru dipersilakan.
String.is termasuk dukungan untuk analitik yang masuk akal, layanan analitik tanpa cookie-friendly. Untuk mengaktifkannya, atur variabel lingkungan yang menentukan domain:
NEXT_PUBLIC_ANALYTICS_DOMAIN=string.is
Analytics dinonaktifkan secara default kecuali process.env.NODE_ENV === 'production' dan domain NEXT_PUBLIC_ANALYTICS_DOMAIN diatur.
Setelah Anda membuat perubahan:
git checkout -b feature/add-my-new-convertergit push origin feature/add-my-new-converter@Davemetrics
Lihat lisensi untuk detailnya.