Yuk kita setup TypeScript Nodejs dan NPM biar ngoding makin sat set

Yuk kita setup TypeScript Nodejs dan NPM biar ngoding makin sat set
Photo by Daniel Joshua/Unsplash

Pernah nggak sih kita merasa pusing sendiri waktu project Nodejs sudah makin gede terus tiba tiba ada error yang nggak jelas asalnya dari mana padahal tadi rasanya semua aman saja. Rasanya seperti mencari jarum dalam tumpukan jerami kalau kita masih pakai JavaScript murni buat project skala menengah sampai besar. Nah di sinilah peran TypeScript jadi sangat krusial buat menjaga kesehatan mental kita sebagai developer biar tetap stabil dan nggak gampang kena burnout cuma gara gara bug typo. TypeScript itu ibarat asisten pribadi yang super teliti yang bakal langsung negur kita kalau ada yang nggak beres sebelum kode itu dijalankan. Jadi kita bisa ngoding dengan perasaan tenang dan hasil kerjaan kita pun makin sat set tanpa banyak drama.

Kita semua pasti sepakat kalau kecepatan adalah kunci tapi kecepatan tanpa ketepatan itu namanya cari masalah. Kalau kita cuma mengejar selesai cepat tapi kodenya berantakan ya ujung ujungnya kita juga yang repot pas mau maintenance atau nambah fitur baru. Dengan setup TypeScript yang benar sejak awal kita sebenarnya sedang menabung waktu buat masa depan. Kita nggak perlu lagi sering sering buka dokumentasi cuma buat cek properti apa saja yang ada di dalam sebuah object karena autocomplete bakal muncul otomatis dengan sangat asik. Itulah kenapa kali ini kita mau bahas tuntas gimana caranya setup TypeScript di lingkungan Nodejs pakai NPM biar workflow kita makin profesional dan tentunya makin cepat alias sat set.

Langkah pertama yang harus kita lakukan tentu saja menyiapkan folder project baru. Kita bisa mulai dengan membuat folder kosong lalu masuk ke dalamnya lewat terminal kesayangan kita. Setelah itu kita jalankan perintah npm init untuk memulai petualangan kita. Biasanya kita bakal ditanya macam macam tapi kalau mau cepat kita bisa tambahkan flag y biar semua pengaturannya otomatis pakai nilai default. Setelah file package JSON muncul barulah kita bisa mulai memasukkan bumbu rahasia kita yaitu TypeScript. Kita perlu menginstall beberapa paket penting lewat NPM. Paket utama yang kita butuhkan adalah typescript itu sendiri ditambah dengan ts node buat menjalankan file TypeScript langsung di Nodejs tanpa harus manual compile tiap saat. Selain itu jangan lupa install types node biar TypeScript paham lingkungan global Nodejs seperti proses atau file system. Kita sebaiknya menginstall paket paket ini sebagai dev dependencies karena kita cuma butuh mereka saat masa pengembangan saja bukan saat aplikasi sudah jalan di server produksi.

Setelah semua paket terinstall dengan manis sekarang waktunya kita bikin konfigurasi buat si TypeScript ini. Kita butuh sebuah file yang namanya tsconfig JSON. File ini fungsinya seperti kompas yang kasih tahu TypeScript gimana cara dia harus bersikap. Kita bisa membuat file ini secara manual atau pakai perintah npx tsc init yang praktis banget. Di dalam file konfigurasi ini ada banyak sekali opsi yang mungkin bikin kita bingung kalau baru pertama lihat. Tapi tenang saja kita fokus ke beberapa hal penting dulu seperti target output yang biasanya kita arahkan ke ES6 atau yang lebih baru biar kodenya tetap modern. Terus kita juga perlu atur outDir buat menentukan folder mana yang bakal jadi tempat penampungan file JavaScript hasil kompilasi biasanya kita kasih nama dist atau build. Jangan lupa juga atur rootDir ke folder src supaya struktur kode kita lebih rapi dan terorganisir dengan baik.

Sekarang coba kita bayangkan kalau setiap kali ada perubahan kode kita harus mematikan server lalu menyalakannya lagi secara manual. Pasti rasanya melelahkan dan nggak sat set banget kan. Makanya kita butuh alat bantu buat otomatisasi proses ini. Salah satu pilihan yang sangat asik adalah menggunakan nodemon yang dikombinasikan dengan ts node. Tapi belakangan ini banyak developer yang lebih suka pakai ts node dev karena performanya yang terasa lebih ringan dan cepat. Dengan ts node dev kita bisa ngoding terus setiap kali kita simpan file maka server bakal otomatis restart sendiri dan mencerminkan perubahan terbaru kita. Ini benar benar booster produktivitas yang luar biasa karena kita bisa langsung fokus ke logika bisnis tanpa terganggu urusan teknis restart server yang membosankan.

Mari kita bicara soal struktur folder karena ini adalah fondasi dari project yang sehat. Kita sebaiknya meletakkan semua file TypeScript kita di dalam folder src. Di dalamnya kita bisa bagi lagi menjadi subfolder seperti routes untuk mengatur jalur akses aplikasi atau controllers untuk menangani logika permintaan serta models kalau kita pakai database. Dengan struktur yang rapi seperti ini kita nggak bakal bingung mencari file meskipun project kita sudah berkembang jadi ribuan baris kode. TypeScript bakal sangat membantu di sini karena kalau kita salah melakukan import file dia bakal langsung kasih tanda merah yang mencolok. Jadi nggak ada lagi cerita aplikasi crash di tengah jalan cuma karena salah ketik nama folder atau lupa kasih ekstensi file.

Salah satu fitur paling asik di TypeScript yang bikin kita makin sat set adalah interface dan types. Dengan fitur ini kita bisa mendefinisikan bentuk dari data yang kita gunakan. Misalnya kita punya data user yang isinya ada nama dan umur maka kita bisa buat kontrak yang jelas kalau nama harus berupa string dan umur harus berupa angka. Kalau nanti ada rekan satu tim kita atau bahkan kita sendiri yang nggak sengaja memasukkan data yang nggak sesuai maka TypeScript bakal protes keras saat itu juga. Ini jauh lebih baik daripada kita baru tahu ada error saat aplikasi sudah dipegang oleh user. Keamanan tipe data ini bukan cuma soal mencegah error tapi juga soal dokumentasi kode yang hidup. Kita jadi nggak perlu menebak nebak lagi isi dari sebuah object karena semua sudah didefinisikan dengan gamblang.

Selain itu integrasi TypeScript dengan VS Code itu sudah kayak pasangan sejati yang nggak bisa dipisahkan. Saat kita sudah setup semuanya dengan benar kita bakal merasakan pengalaman ngoding yang sangat mulus. Fitur intellisense bakal bekerja maksimal memberikan saran saran cerdas yang relevan dengan konteks kode kita. Kita bahkan bisa melakukan refactor kode seperti ganti nama variabel di puluhan file sekaligus dengan satu klik saja dan TypeScript bakal memastikan semua referensinya ikut berubah tanpa ada yang tertinggal. Inilah yang kita maksud dengan ngoding sat set sesungguhnya karena banyak pekerjaan manual yang akhirnya diambil alih oleh sistem yang cerdas.

Bagi kita yang sering bekerja dalam tim penggunaan TypeScript ini bakal menaikkan level profesionalitas kita secara signifikan. Orang lain yang membaca kode kita bakal langsung paham apa maksud dari fungsi yang kita buat tanpa harus bertanya tanya atau mencoba coba jalankan kodenya dulu. Komunikasi antar developer jadi lebih efektif lewat perantara kode itu sendiri. Kita juga jadi lebih pede kalau mau melakukan update library atau perubahan besar besaran karena kita punya jaring pengaman yang kuat. Kalau ada perubahan yang merusak bagian lain di aplikasi kita maka compiler bakal langsung kasih tahu letak kesalahannya di mana saja secara mendetail.

Untuk bagian akhir dari setup kita jangan lupa buat menambahkan beberapa script di dalam file package JSON kita. Kita bisa buat script dev buat menjalankan ts node dev tadi supaya pas mau mulai kerja kita tinggal ketik npm run dev saja. Lalu kita buat script build yang isinya perintah tsc buat melakukan kompilasi akhir sebelum aplikasi siap disebarkan. Terakhir kita buat script start yang isinya menjalankan file JavaScript hasil compile tadi menggunakan node biasa. Dengan begini workflow kita dari mulai development sampai siap rilis jadi sangat terstandarisasi dan mudah diikuti oleh siapa saja yang bergabung di project kita nantinya.

Kesimpulannya setup TypeScript di Nodejs itu bukan cuma soal ikut ikutan tren tapi soal gimana kita menghargai waktu dan kualitas kerjaan kita sendiri. Awalnya mungkin terasa sedikit ribet karena banyak konfigurasi yang harus diatur dan ada aturan tipe data yang ketat tapi percayalah investasi waktu di awal ini bakal terbayar berkali kali lipat saat project mulai kompleks. Kita bakal merasa jauh lebih produktif dan jarang pusing gara gara bug receh yang seharusnya nggak perlu ada. Jadi ayo kita mulai beralih dan rasakan sendiri betapa asik dan sat set nya ngoding pakai TypeScript. Jangan lupa buat terus bereksperimen dengan fitur fitur baru yang ada di ekosistem Nodejs karena dunia development itu terus berubah dan kita harus selalu siap buat adaptasi biar tetap relevan dan jago di bidang ini. Semangat terus buat kita semua para pejuang kode yang ingin selalu memberikan yang terbaik lewat karya karya digital yang berkualitas tinggi. Dengan setup yang matang seperti ini jalan kita menuju developer handal bakal makin terbuka lebar dan menyenangkan buat dijalani setiap harinya. Selamat mencoba dan selamat menikmati sensasi ngoding yang lebih terstruktur dan super cepat bareng TypeScript dan Nodejs kesayangan kita semua. Akhir kata semoga artikel ini bermanfaat buat menambah wawasan kita dalam membangun lingkungan kerja yang lebih efisien dan menyenangkan buat kita semua. Mari kita terus belajar dan berbagi ilmu karena itulah cara terbaik buat bertumbuh bersama di industri teknologi yang sangat dinamis ini. Sampai jumpa di tips dan tutorial berikutnya yang nggak kalah asik dan bermanfaat buat karir programming kita kedepannya. Tetap semangat dan jangan pernah berhenti buat ngoding dengan hati dan logika yang tajam. Sukses selalu buat project project hebat yang sedang kita bangun saat ini.