Kategori: JavaScript

  • Membangun Aplikasi “Leader Election App” Menggunakan Laravel sebagai Full Stack Framework


    Pendahuluan

    Sebagai mahasiswa Teknik Informatika, saya sering mendengar bahwa Laravel adalah salah satu framework PHP terbaik untuk membangun aplikasi web. Namun awalnya, saya masih ragu apakah Laravel cukup kuat untuk menangani full stack development dalam satu framework saja, tanpa harus menambahkan framework frontend lain seperti React atau Vue.

    Di sinilah saya mulai membuat sebuah aplikasi sederhana yang saya beri nama Leader Election App, dengan tujuan membuktikan bahwa Laravel tetap bisa menjadi pilihan tepat untuk membangun aplikasi fullstack yang dinamis sekaligus powerful.


    Apa itu Leader Election App?

    Secara sederhana, aplikasi ini digunakan untuk melakukan pemilihan ketua dalam suatu organisasi. Pengguna bisa login, melihat kandidat, dan memberikan suara. Sistem kemudian akan menyimpan hasil suara dan menampilkan ringkasan hasil pemilihan jika waktu pemilihan sudah habis.

    Walaupun terdengar sederhana, di dalamnya ada fitur-fitur penting seperti manajemen user, otorisasi, CRUD data, dan pengolahan data di dashboard.


    Kenapa Saya Memilih Laravel sebagai Fullstack?

    Saat mulai merancang aplikasi ini, saya mempertimbangkan beberapa poin seperti:

    • Laravel itu sudah menyediakan Blade templating yang berarti kita bisa bikin frontend yang dinamis dengan mudah
    • Authentication sangat mudah disetup (menggunakan Laravel Breeze/Jetstream atau manual)
    • Arsitekturnya rapi dan mudah dipahami (MVC -> Model View Controller)
    • Dokumentasi Laravel yang sangat lengkap sehingga cocok untuk pemula
    • Banyak fitur bawaan dan library yang menghemat waktu development

    Jadi, dengan satu framework saja saya bisa mengatur routing, logic bisnis, database, dan tampilan. Itu sangat membantu saya memahami alur aplikasi dari ujung ke ujung.


    Proses Pengembangan

    Di awal pengembangan, saya langsung setup projek Laravel dan mulai dari menambahkan autentikasi pada user. Tantangan pertama saya disini adalah memahami alur request dari View -> Controller -> Model -> Database, begitu juga ketika memahami alur response yang mulai dari Database -> Model -> Controller -> View.

    Di tahap in saya banyak melakukan trial and error terutama dalam:

    • Mendesain migrasi database
    • Setup rute dan controller
    • Membuat view dengan menggunakan Blade template engine

    Terkadang saya membuat beberapa kesalahan yang sempat terulang beberapa kali yaitu lupa untuk cache seperti caching route, view, dll sehingga membuat aplikasi terasa lambat.


    Fitur-Fitur Utama yang Dibangun

    • Autentikasi pengguna: login & register
    • Role user sederhana: admin dan user biasa
    • CRUD kandidat: admin bisa menambah/mengedit kandidat
    • CRUD voter: admin bisa menambah dan menghapus voter
    • Voting: user memberikan pilihan secara langsung
    • Dashboard hasil pemilihan: menampilkan total suara dan ringkasan kandidat

    Fitur ini saja sudah memberikan gambaran lengkap tentang bagaimana backend dan frontend saling terhubung di Laravel.


    Arsitektur & Flow Sederhana

    Secara garis besar, alurnya seperti ini:

    • User mengakses halaman Blade
    • View mengirim request ke Route
    • Route memanggil Controller
    • Controller mengolah data via Model ke Database
    • Controller mengembalikan data ke View
    • Tampilan diperbarui secara dinamis

    Dengan alur MVC ini, saya belajar pentingnya pemisahan logika aplikasi dan antarmuka.


    Tools & Teknologi yang Digunakan

    • Laravel (Framework utama)
    • Blade Template Engine
    • Tailwind untuk tampilan UI yang cepat dan responsif
    • MySQL sebagai database
    • Git & GitHub untuk version control

    Hasil Akhir

    Saya berhasil membangun aplikasi e-voting yang berfungsi dari awal hingga akhir. Pengguna bisa login dan voting, kemudian dari sisi Admin bisa menampilkan hasil ringkasan jumlah suara yang terkumpul untuk masing-masing kandidat. Projek ini menjadi pengalaman berharga dalam memahami konsep fullstack web development.


    Penutup

    Melalui projek ini, saya belajar bahwa kita tidak harus ahli dulu untuk mulai membangun aplikasi atau sistem, kita justru menjadi ahli ketika kita berani untuk memulai.

    Saya berharap cerita ini bisa menginspirasi teman-teman yang masih ragu memulai projek menggunakan Laravel. Framework ini sangat ramah pemula, tapi tetap kuat untuk membuat aplikasi yang siap dipakai secara produksi.

  • Mengapa JavaScript Masih Jadi Raja di Dunia Web?

    Bahasa pemrograman paling populer untuk aplikasi interaktif modern


    Pendahuluan

    JavaScript adalah salah satu bahasa pemrograman paling populer di dunia. Hampir setiap website interaktif yang kita gunakan saat ini menggunakan JavaScript di balik layar. Kepopulerannya tidak hanya karena bisa dijalankan di browser, tetapi juga karena ekosistem yang luas dan terus berkembang.


    Isi

    JavaScript awalnya dibuat untuk menambah interaktivitas di halaman web, seperti animasi sederhana dan validasi form. Namun seiring waktu, kemampuannya berkembang pesat. Framework seperti React, Vue, dan Angular mempercepat proses pembuatan UI yang dinamis dan responsif.

    Tidak hanya di sisi front-end, JavaScript juga merambah ke dunia back-end melalui Node.js, memungkinkan developer menjadi full-stack dengan satu bahasa. JavaScript pun masuk ke area mobile dan desktop lewat React Native dan Electron.

    Salah satu kekuatan terbesar JavaScript adalah komunitasnya yang sangat aktif. Library dan tool baru terus bermunculan, sehingga developer memiliki pilihan luas untuk berinovasi.


    Kesimpulan

    JavaScript bukan sekadar “bahasa web”. Ia telah menjadi bahasa serbaguna yang menggerakkan aplikasi modern di berbagai platform. Dengan fleksibilitas dan ekosistem yang solid, JavaScript kemungkinan besar akan tetap memimpin industri pengembangan web untuk waktu yang lama.