Dokumen Asli
Terbatas  Dessy Rondang Monaomi
» Gedung UPT Perpustakaan
Terbatas  Dessy Rondang Monaomi
» Gedung UPT Perpustakaan
Penggunaan REST API dalam pengembangan aplikasi web dengan spesifikasi OpenAPI sering menghadapi tantangan konsistensi dokumentasi. Pembuatan spesifikasi OpenAPI secara manual dapat menyebabkan ketidaksesuaian antara dokumentasi dan implementasi server yang sebenarnya sehingga menimbulkan kesalahan di sisi klien. Masalah konsistensi ini juga terjadi pada level bahasa pemrograman, di mana meskipun TypeScript memastikan keamanan tipe selama kompilasi, TypeScript tidak melakukan validasi data saat runtime, sehingga menimbulkan risiko masalah integritas data, terutama dengan sumber data eksternal. Kondisi ini dapat mengakibatkan terjadinya contract violation, yaitu ketika data yang dikirim atau diterima oleh API tidak sesuai dengan kontrak formal yang ditetapkan pada spesifikasi OpenAPI. Tugas akhir ini mengatasi masalah tersebut dengan mengembangkan library framework-agnostic untuk Node.js dan TypeScript yang secara otomatis menghasilkan deklarasi spesifikasi OpenAPI dari kode server. Library ini mengintegrasikan validasi runtime untuk memastikan bahwa setiap permintaan masuk dan respons keluar mematuhi spesifikasi yang dihasilkan. Solusi yang dikembangkan terdiri dari library utama yang menyediakan abstraksi utama, dan beberapa modul adaptor untuk framework Node.js populer seperti Express, Hono, Fastify, Next.js, Hapi, dan Koa. Desain modular ini membuktikan kemampuan adaptasi library. Library ini menggunakan Zod untuk deklarasi dan validasi skema, yang kemudian berfungsi sebagai sumber utama untuk menghasilkan tipe TypeScript dan dokumentasi OpenAPI. Hasil akhir akan dipublikasikan ke Node Package Manager (NPM), yang mencakup library utama dan adaptor untuk setiap framework.
Perpustakaan Digital ITB