flash sale
hamburger-menu

Tips All

Meningkatkan skills menjadi 1% lebih baik

Reset
Kelas Freelance Web Developer dengan Laravel: Menjadi Ahli di Era Digital di BuildWithAngga

Freelance Web Developer dengan Laravel: Menjadi Ahli di Era Digital

Di era digital seperti saat ini, bisnis kita wajib online. Internet mengubah cara kita berkomunikasi, bekerja, dan membeli sesuatu. Banyak perusahaan yang sudah memulai beralih ke dunia digital demi menjangkau lebih banyak customer dan memperluas bisnis mereka secara cepat. Salah satu cara terbaik untuk melakukannya adalah dengan memiliki sebuah website yang modern. Website tidak hanya menjadi company profile perusahaan di dunia digital, tetapi juga bisa digunakan sebagai alat promosi yang efektif dan efisien. Alasan Bisnis Butuh Website Saat ini, website sangat mudah untuk dibangun sehingga menjadi pilihan media promosi yang populer. Sebagai web developer tugas kita adalah membantu perusahaan memiliki website modern dengan tampilan menarik dan fungsional (memberikan experience terbaik). Dengan tools yang tepat maka kita dapat memberikan pengalaman berbelanja yang baik untuk pengguna. Beberapa Ciri Penting Website Modern Ketika membangun website maka penting bagi kita meperhatikan poin berikut: Responsivenesss: Desain yang menyesuaikan dengan berbagai ukuran layar pengguna.Fast Perfomance: Memuat halaman dengan cepat untuk meningkatkan pengalaman pengguna.Well Designed Navigation: Struktur navigasi yang jelas dan intuitif.Tampilan Design: Estetika yang menarik dengan desain yang penuh white space.Keamanan: Sistem keamanan yang kuat untuk melindungi data pengguna.SEO-Friendly: Optimasi mesin pencari untuk meningkatkan visibilitas.Integrasi Media Sosial: Kemudahan berbagi di platform media sosial.Konten adalah Raja: Informasi yang relevan dan bermanfaat bagi pengguna.Interaktif: Elemen interaktif seperti form login dan daftar, review produk, dan fitur live chat.Analitik: Alat analitik untuk melacak performa dan pengunjung website. Manfaat Ketika Freelance Web Developer Memilih menjadi freelance web developer memberikan berbagai keuntungan menarik yang dapat membuat karier freelance Anda menjadi lebih fleksibel dan menguntungkan. Berikut adalah beberapa manfaat utama yang bisa Anda dapatkan: Kebebasan Waktu: Sebagai freelancer, Anda memiliki kendali penuh atas jadwal kerja Anda. Anda bisa mengatur jam kerja sesuai keinginan dan kebutuhan pribadi tanpa harus bermacet-macetan di jalanan. Kebebasan ini memungkinkan Anda untuk menyeimbangkan antara pekerjaan dan kehidupan pribadi dengan lebih baik, terutama jika Anda suka traveling dan pindah tempat kerja.Pendapatan Lebih Besar: Freelancing memberikan potensi penghasilan yang lebih tinggi dibandingkan dengan pekerjaan tetap. Anda bisa menetapkan biaya sendiri dan mengambil proyek serta klien besar yang membayar dengan adil. Dengan skills manajemen proyek yang sempurna, Anda bisa mencapai pendapatan yang lebih besar.Pilihan Proyek: Salah satu keuntungan besar menjadi freelancer adalah Anda dapat memilih proyek yang sesuai dengan minat dan keahlian Anda (bisa sekaligus belajar ilmu baru). Ini memungkinkan Anda untuk bekerja pada proyek yang benar-benar Anda nikmati dan sesuai passion, sehingga meningkatkan motivasi dalam menyelesaikan projek.Pengembangan Diri: Menjadi freelancer membuka banyak kesempatan untuk belajar teknologi baru dan mengasah keterampilan di bidang web development. Anda akan terus beradaptasi dengan trend dan hal-hal terbaru di bidang web development, yang akan meningkatkan nilai jual dan skills Anda di dunia digital.Mobilitas: Keuntungan lain dari freelancing adalah Anda bisa bekerja dari mana saja, tanpa harus pergi ke lokasi kantor. Selama kita terhubung dengan koneksi internet, Anda bisa menyelesaikan proyek dari rumah, kafe, atau bahkan saat bepergian (seperti nomaden). Dengan berbagai manfaat tersebut, menjadi freelance web developer bisa menjadi pilihan karier yang sangat menarik dan menantang. Selain memberikan kebebasan dan potensi penghasilan yang lebih besar, Anda juga bisa terus berkembang dan bekerja pada proyek-proyek yang Anda ingin kerjakan dan cintai. Jadi, jika Anda mencari karier yang dinamis dan fleksibel, freelance web development mungkin adalah jalan yang tepat untuk Anda. Persiapan Penting Freelance Web Developer Persiapan sebagai freelance web developer cukup banyak dan perlu kita siapkan sedari sekarang. Berikut beberapa hal yang perlu dipertimbangkan: Portofolio: Kumpulkan proyek-proyek yang pernah dikerjakan untuk menunjukkan kemampuan, lalu jelaskan mengapa proyek tersebut penting.Networking: Bangun networking dengan profesional lain untuk mendapatkan proyek misalnya dengan cara gabung komunitas atau volunteer.Skills: Terus tingkatkan keterampilan dalam coding, desain, dan teknologi terbaru misalnya belajar next js, laravel, dan SPA.Manajemen Waktu: Belajar mengatur waktu dan proyek dengan efektif.Keuangan: Atur keuangan dengan baik, termasuk menetapkan biaya yang sesuai dengan skills dan expericen kita. 5 Hal Penting Ketika Membangun Portofolio Web Developer Portofolio web developer adalah modal yang sangat penting untuk menunjukkan keahlian, proyek yang telah dikerjakan, dan kemampuan coding. Berikut beberapa hal penting yang harus diperhatikan saat membangun portofolio web developer yang menarik: 1. Menampilkan Proyek yang Relevan Proyek yang ditampilkan di portofolio harus relevan dengan pekerjaan yang Anda butuhkan atau keahlian yang ingin Anda highlight. Beberapa poin penting yang harus diperhatikan: Variasi Proyek: Sertakan berbagai jenis proyek untuk menunjukkan fleksibilitas dan keahlian dalam berbagai area pengembangan web, seperti e-commerce, landing page, aplikasi web, dan proyek open-source.Detail Proyek: Deskripsikan setiap proyek secara mendetail dari segi fitur dan tech stack. Jelaskan tujuan proyek, teknologi yang digunakan, tantangan yang dihadapi ketika awal bikin projek, dan bagaimana Anda mengatasinya.Link ke Proyek: Jika memungkinkan, sertakan tautan ke proyek yang telah selesai agar pengunjung dapat melihat hasil kerja Anda secara langsung. 2. Desain yang Menarik dan Responsif Portofolio harus memiliki desain yang menarik dan responsif untuk memberikan kesan pertama yang baik dan memastikan portofolio dapat diakses dari berbagai device screen. Desain minimalist dan Modern: Gunakan desain yang bersih dan modern untuk membuat portofolio Anda terlihat profesional. Hindari penggunaan terlalu banyak warna atau elemen yang membingungkan.Navigasi: Pastikan navigasi mudah dan intuitif. Pengunjung harus dapat menemukan informasi yang mereka cari dengan cepat.Responsive: Pastikan portofolio Anda terlihat bagus di semua perangkat, termasuk desktop, tablet, dan smartphone. Gunakan media queries tailwind atau bootstrap untuk menyesuaikan tampilan di berbagai ukuran layar. 3. Informasi Kontak yang Jelas Pastikan informasi kontak Anda mudah ditemukan agar calon klien atau perusahaan dapat menghubungi Anda dengan mudah. Form Kontak: Sertakan form kontak yang sederhana di halaman portofolio Anda untuk memudahkan pengunjung menghubungi Anda langsung dari website portfolio.Link ke Media Sosial: Tambahkan tautan ke profil media sosial profesional Anda, seperti LinkedIn, GitHub, atau X.Alamat Email: Cantumkan alamat email yang aktif dan sering Anda gunakan setipa harinya. Pastikan alamat email terlihat profesional misalnya menggunakan domain Anda. 4. Testimoni dan Rekomendasi Menambahkan testimoni dan rekomendasi dari klien atau rekan kerja sebelumnya dapat memberikan kepercayaan tambahan kepada calon klien atau perusahaan. Testimoni Klien: Sertakan beberapa testimoni dari klien yang puas dengan pekerjaan Anda. Pastikan testimoni ini asli dan relevan dengan proyek yang Anda tampilkan.Rekomendasi Rekan Kerja: Rekomendasi dari rekan kerja atau atasan sebelumnya juga bisa menambah efek di-hire. Ini menunjukkan bahwa Anda bekerja baik dalam tim dan memiliki reputasi yang baik dalam lingkungan kerja sebelumnya.Tampilkan Foto atau Nama Klien: Jika memungkinkan, tampilkan foto atau nama klien yang memberikan testimoni untuk menambah keaslian testi tersebut. 5. Update dan Pemeliharaan Rutin Portofolio yang tidak terawat dan jarang diperbarui bisa memberikan kesan negatif. Pastikan portofolio Anda selalu up-to-date dan mencerminkan keahlian terbaru Anda, maka dari itu terus belajar hal baru sangatlah penting! Tambah Proyek Baru: Setiap kali Anda menyelesaikan proyek baru yang menarik, tambahkan ke portofolio Anda. Ini menunjukkan bahwa Anda aktif dan terus berkembang dalam karier Anda di bidang web development.Perbarui Informasi: Pastikan semua informasi, termasuk detail kontak, deskripsi proyek, dan keahlian teknis, selalu akurat dan terkini.Perbaiki Bug dan Optimasi: Periksa secara berkala apakah ada bug atau masalah teknis di portofolio Anda dan segera perbaiki. Pastikan juga portofolio Anda optimal dalam hal performa dan kecepatan. Menggunakan Laravel Untuk Freelancing Laravel dapat membantu kita sebagai freelance web developer mengerjakan proyek lebih cepat, aman, mudah diperbesar, dan dipelihara. Framework PHP ini memiliki banyak keunggulan yang membuatnya ideal untuk proyek kecil/besar web: Kemudahan Penggunaan: Laravel memiliki sintaks yang elegan dan mudah dipahami. Ini memungkinkan pengembang untuk menulis kode dengan lebih efisien dan bersih.Keamanan: Laravel dilengkapi dengan fitur keamanan built-in yang kuat, seperti proteksi terhadap serangan SQL injection, cross-site scripting, dan cross-site request forgery. Ini membantu melindungi aplikasi dari berbagai serangan umum.Ekosistem yang Kaya: Laravel memiliki ekosistem yang kaya dengan banyak paket dan alat yang tersedia untuk mempercepat pengembangan. Paket seperti Laravel Mix untuk manajemen aset front-end dan Eloquent ORM untuk manipulasi database sangat membantu dalam mempercepat proses pengembangan.Komunitas Aktif: Dukungan dari komunitas yang besar dan aktif adalah salah satu keunggulan Laravel. Terdapat banyak tutorial, forum diskusi, dan dokumentasi yang tersedia untuk membantu pengembang memecahkan masalah dan belajar lebih lanjut tentang framework ini.Scalability: Laravel mudah diperbesar sesuai dengan kebutuhan proyek. Dengan arsitektur yang konsepnya modular, developer dapat menambahkan fitur baru atau meningkatkan performa aplikasi dengan mudah seiring dengan pertumbuhan bisnis. Berikut adalah 10 contoh coding yang dapat digunakan dalam proyek website tiket online menggunakan Laravel, lengkap dengan penjelasan detail di setiap poin: 1. Membuat Model dan Migrasi untuk Tiket Langkah pertama adalah membuat model dan migrasi untuk entitas Ticket. Model adalah representasi dari tabel di database, sementara migrasi digunakan untuk membuat dan mengubah tabel di database. Perintah Membuat Model dan Migrasi php artisan make:model Ticket -m Perintah ini akan membuat model Ticket dan file migrasi untuk tabel tickets. File Migrasi // database/migrations/xxxx_xx_xx_create_tickets_table.php use Illuminate\\\\Database\\\\Migrations\\\\Migration; use Illuminate\\\\Database\\\\Schema\\\\Blueprint; use Illuminate\\\\Support\\\\Facades\\\\Schema; class CreateTicketsTable extends Migration { public function up() { Schema::create('tickets', function (Blueprint $table) { $table->id(); $table->string('event_name'); // Nama acara $table->date('event_date'); // Tanggal acara $table->decimal('price', 8, 2); // Harga tiket $table->integer('quantity'); // Jumlah tiket tersedia $table->timestamps(); // Waktu pembuatan dan pembaruan record }); } public function down() { Schema::dropIfExists('tickets'); // Menghapus tabel jika diperlukan rollback } } 2. Model Tiket Model adalah representasi dari tabel tickets di database. Model ini memungkinkan kita untuk berinteraksi dengan data dalam tabel tersebut. File Model // app/Models/Ticket.php namespace App\\\\Models; use Illuminate\\\\Database\\\\Eloquent\\\\Factories\\\\HasFactory; use Illuminate\\\\Database\\\\Eloquent\\\\Model; class Ticket extends Model { use HasFactory; protected $fillable = [ 'event_name', 'event_date', 'price', 'quantity' ]; // Field yang dapat diisi secara massal } 3. Membuat Controller untuk Tiket Controller mengatur logika aplikasi dan menghubungkan model dengan tampilan. Kita akan membuat controller untuk mengelola operasi CRUD pada tiket. Perintah Membuat Controller php artisan make:controller TicketController File Controller // app/Http/Controllers/TicketController.php namespace App\\\\Http\\\\Controllers; use App\\\\Models\\\\Ticket; use Illuminate\\\\Http\\\\Request; class TicketController extends Controller { // Menampilkan daftar tiket public function index() { $tickets = Ticket::all(); return view('tickets.index', compact('tickets')); } // Menampilkan form untuk membuat tiket baru public function create() { return view('tickets.create'); } // Menyimpan tiket baru ke database public function store(Request $request) { $request->validate([ 'event_name' => 'required', 'event_date' => 'required|date', 'price' => 'required|numeric', 'quantity' => 'required|integer' ]); Ticket::create($request->all()); return redirect()->route('tickets.index')->with('success', 'Ticket created successfully.'); } // Menampilkan detail tiket tertentu public function show(Ticket $ticket) { return view('tickets.show', compact('ticket')); } // Menampilkan form untuk mengedit tiket public function edit(Ticket $ticket) { return view('tickets.edit', compact('ticket')); } // Memperbarui tiket di database public function update(Request $request, Ticket $ticket) { $request->validate([ 'event_name' => 'required', 'event_date' => 'required|date', 'price' => 'required|numeric', 'quantity' => 'required|integer' ]); $ticket->update($request->all()); return redirect()->route('tickets.index')->with('success', 'Ticket updated successfully.'); } // Menghapus tiket dari database public function destroy(Ticket $ticket) { $ticket->delete(); return redirect()->route('tickets.index')->with('success', 'Ticket deleted successfully.'); } } 4. Menambahkan Rute untuk Tiket Rute menentukan URL mana yang akan menjalankan fungsi di controller. File Rute // routes/web.php use App\\\\Http\\\\Controllers\\\\TicketController; Route::resource('tickets', TicketController::class); Rute resource akan membuat semua rute CRUD yang dibutuhkan secara otomatis. 5. Tampilan Index untuk Menampilkan Daftar Tiket Tampilan index digunakan untuk menampilkan daftar semua tiket yang tersedia. File Tampilan Index <!-- resources/views/tickets/index.blade.php --> @extends('layouts.app') @section('content') <h1>Daftar Tiket</h1> <a href="{{ route('tickets.create') }}">Buat Tiket Baru</a> @if ($message = Session::get('success')) <div>{{ $message }}</div> @endif <table> <tr> <th>Nama Acara</th> <th>Tanggal Acara</th> <th>Harga</th> <th>Jumlah</th> <th>Aksi</th> </tr> @foreach ($tickets as $ticket) <tr> <td>{{ $ticket->event_name }}</td> <td>{{ $ticket->event_date }}</td> <td>{{ $ticket->price }}</td> <td>{{ $ticket->quantity }}</td> <td> <a href="{{ route('tickets.show', $ticket->id) }}">Lihat</a> <a href="{{ route('tickets.edit', $ticket->id) }}">Edit</a> <form action="{{ route('tickets.destroy', $ticket->id) }}" method="POST"> @csrf @method('DELETE') <button type="submit">Hapus</button> </form> </td> </tr> @endforeach </table> @endsection 6. Tampilan Form untuk Membuat Tiket Baru Tampilan create digunakan untuk menampilkan form pembuatan tiket baru. File Tampilan Create <!-- resources/views/tickets/create.blade.php --> @extends('layouts.app') @section('content') <h1>Buat Tiket Baru</h1> <form action="{{ route('tickets.store') }}" method="POST"> @csrf <label>Nama Acara:</label> <input type="text" name="event_name" required> <label>Tanggal Acara:</label> <input type="date" name="event_date" required> <label>Harga:</label> <input type="number" name="price" required> <label>Jumlah:</label> <input type="number" name="quantity" required> <button type="submit">Simpan</button> </form> @endsection 7. Tampilan Detail Tiket Tampilan show digunakan untuk menampilkan detail tiket tertentu. File Tampilan Show <!-- resources/views/tickets/show.blade.php --> @extends('layouts.app') @section('content') <h1>Detail Tiket</h1> <p>Nama Acara: {{ $ticket->event_name }}</p> <p>Tanggal Acara: {{ $ticket->event_date }}</p> <p>Harga: {{ $ticket->price }}</p> <p>Jumlah: {{ $ticket->quantity }}</p> <a href="{{ route('tickets.index') }}">Kembali</a> @endsection 8. Tampilan Form untuk Mengedit Tiket Tampilan edit digunakan untuk menampilkan form pengeditan tiket. File Tampilan Edit <!-- resources/views/tickets/edit.blade.php --> @extends('layouts.app') @section('content') <h1>Edit Tiket</h1> <form action="{{ route('tickets.update', $ticket->id) }}" method="POST"> @csrf @method('PUT') <label>Nama Acara:</label> <input type="text" name="event_name" value="{{ $ticket->event_name }}" required> <label>Tanggal Acara:</label> <input type="date" name="event_date" value="{{ $ticket->event_date }}" required> <label>Harga:</label> <input type="number" name="price" value="{{ $ticket->price }}" required> <label>Jumlah:</label> <input type="number" name="quantity" value="{{ $ticket->quantity }}" required> <button type="submit">Simpan</button> </form> @endsection 9. Middleware untuk Memastikan User Telah Login Middleware digunakan untuk memastikan bahwa hanya pengguna yang telah login yang dapat mengakses rute tertentu. Membuat Middleware php artisan make:middleware EnsureUserIsAuthenticated Middleware File // app/Http/Middleware/EnsureUserIsAuthenticated.php namespace App\\\\Http\\\\Middleware; use Closure; use Illuminate\\\\Support\\\\Facades\\\\Auth; class EnsureUserIsAuthenticated { public function handle($request, Closure $next) { if (!Auth::check()) { return redirect('login'); } return $next($request); } } Mendaftarkan Middleware // app/Http/Kernel .php protected $routeMiddleware = [ // Middleware lainnya... 'auth' => \\\\App\\\\Http\\\\Middleware\\\\EnsureUserIsAuthenticated::class, ]; 10. Menambahkan Autentikasi User Laravel menyediakan alat yang sangat baik untuk menambahkan fitur autentikasi dengan cepat. Perintah untuk Menambahkan Autentikasi composer require laravel/ui php artisan ui vue --auth npm install && npm run dev php artisan migrate Perintah ini akan menambahkan rute, controller, dan tampilan yang diperlukan untuk sistem login dan registrasi user. Dengan langkah-langkah ini, Anda dapat membuat proyek website tiket online yang fungsional dan aman menggunakan Laravel. Setiap bagian dari kode dan penjelasan di atas akan membantu Anda memahami cara membangun dan mengelola proyek ini secara efektif. Penutup: Terus Belajar dan Berkembang Sebagai Web Developer Sebagai web developer, perjalanan belajar tidak pernah berakhir. Dunia teknologi selalu berkembang dengan cepat, dan mengikuti perkembangan terbaru adalah kunci untuk tetap relevan dan kompetitif di industri ini. Laravel, sebagai salah satu framework PHP terpopuler, terus mengalami pembaruan dan perbaikan yang perlu kita pelajari dan manfaatkan untuk meningkatkan kualitas proyek yang kita kerjakan. Mengikuti Perkembangan Laravel Laravel dikenal karena kemudahan penggunaannya dan fitur-fiturnya yang lengkap. Namun, untuk benar-benar memaksimalkan potensi Laravel, kita harus selalu mengikuti perkembangan terbaru dari framework ini. Berikut beberapa tips untuk tetap up-to-date: Ikuti Dokumentasi Resmi: Dokumentasi Laravel yang resmi selalu diperbarui dengan fitur-fitur terbaru dan best practices. Luangkan waktu untuk membaca dan memahami dokumentasi ini.Bergabung dengan Komunitas: Ikut serta dalam komunitas Laravel, seperti forum, grup Facebook, dan Slack, untuk berdiskusi dan berbagi pengetahuan dengan developer lain.Mengikuti Blog dan Podcast: Banyak blog dan podcast yang membahas Laravel dan pengembangan web secara umum. Ini adalah cara yang baik untuk tetap mendapatkan informasi terbaru dan tips praktis. Menggunakan Package untuk Meningkatkan Produktivitas Laravel memiliki ekosistem package yang sangat banyak yang bisa membantu kita meningkatkan produktivitas, keamanan, dan skalabilitas proyek. Berikut beberapa paket yang berguna: Laravel Breeze: Sebuah starter kit yang ringan untuk autentikasi dan scaffolding dasar. Breeze sangat berguna untuk proyek kecil hingga menengah.Laravel Passport: Paket ini memudahkan implementasi OAuth2 server untuk autentikasi API. Sangat cocok untuk aplikasi yang memerlukan autentikasi berbasis token.Laravel Debugbar: Alat debugging yang menambahkan toolbar di aplikasi untuk membantu memantau query database, log, dan banyak lagi.Laravel Horizon: Paket ini mengelola antrian (queues) dengan tampilan dashboard yang menarik dan informatif, sangat berguna untuk aplikasi yang membutuhkan pemrosesan antrian yang kompleks. Manfaatkan Kelas Gratis di BuildWithAngga Belajar dari berbagai sumber adalah cara yang baik untuk memperkaya pengetahuan kita. BuildWithAngga adalah salah satu platform yang menawarkan berbagai kelas gratis untuk meningkatkan keterampilan pengembangan web. Beberapa manfaat yang bisa didapatkan dari kelas ini antara lain: Kursus Terstruktur: Kursus yang disusun dengan baik dan mudah diikuti, mulai dari dasar hingga tingkat lanjut.Proyek Nyata: Belajar dengan mengerjakan proyek nyata yang dapat langsung diterapkan di dunia kerja.Komunitas Belajar: Kesempatan untuk bergabung dengan komunitas belajar yang mendukung dan saling membantu. Langkah-Langkah untuk Terus Berkembang Untuk memastikan kita tetap berkembang sebagai web developer, berikut beberapa langkah yang dapat diambil: Jadwalkan Waktu Belajar: Alokasikan waktu khusus setiap minggu untuk belajar hal baru. Bisa melalui membaca dokumentasi, mengikuti kursus online, atau mencoba proyek sampingan.Eksperimen dengan Teknologi Baru: Jangan takut untuk mencoba teknologi atau alat baru yang dapat meningkatkan efisiensi kerja.Berbagi Pengetahuan: Menulis blog, memberikan presentasi, atau mengajar dapat membantu memperdalam pemahaman dan berbagi pengetahuan dengan komunitas.Evaluasi dan Revisi: Secara berkala, evaluasi portofolio dan proyek yang telah dikerjakan. Identifikasi area yang dapat diperbaiki dan pelajari cara-cara untuk meningkatkannya. Kesimpulan Menjadi seorang web developer yang sukses tidak hanya tentang menyelesaikan proyek, tetapi juga tentang terus belajar dan beradaptasi dengan perkembangan teknologi. Dengan selalu mengikuti perkembangan Laravel, memanfaatkan berbagai paket yang tersedia, dan mengambil manfaat dari kelas-kelas gratis di BuildWithAngga, kita dapat terus meningkatkan keahlian dan tetap kompetitif di industri ini. Semangat belajar dan inovasi adalah kunci untuk mencapai kesuksesan jangka panjang dalam karir sebagai web developer.

Kelas 30 Pengenalan Dasar HTML Pada Website Development di BuildWithAngga

30 Pengenalan Dasar HTML Pada Website Development

Apa Itu HTML dan Manfaat Utama pada website Development Diskusi terkait tentang HTML, ini bukan How to meet ladies seperti di film Silicon Valley ya hahaha, HTML kepanjangan dari HyperText Markup Language adalah bahasa standar yang digunakan untuk membuat dan menyusun halaman website. HTML berfungsi sebagai kerangka dari sebuah websitesite, memungkinkan developer untuk menstrukturkan konten dan menampilkan informasi dengan cara yang terorganisir. Salah satu manfaat utama HTML dalam development website adalah kemampuannya untuk membuat halaman website yang dapat diakses oleh berbagai perangkat dan platform. Dengan HTML, website developer dapat menciptakan struktur dokumen yang konsisten dan semantik, mempermudah mesin pencari dan browser untuk memahami konten halaman website. Versi HTML dan Keunggulan Setiap Versi HTML telah mengalami beberapa evolusi sejak pertama kali diperkenalkan. Berikut adalah beberapa versi utama HTML dan keunggulannya: HTML 1.0: Versi pertama HTML, diperkenalkan pada tahun 1993, menyediakan struktur dasar untuk membuat halaman website.HTML 2.0: Dirilis pada tahun 1995, menambahkan beberapa elemen baru dan memperbaiki beberapa kekurangan dari versi sebelumnya.HTML 3.2: Diperkenalkan pada tahun 1997, menambahkan fitur seperti tabel dan dukungan untuk skrip.HTML 4.01: Diluncurkan pada tahun 1999, menyediakan dukungan untuk CSS dan meningkatkan elemen form.HTML5: Versi terbaru, dirilis pada tahun 2014, membawa banyak peningkatan termasuk dukungan untuk audio, video, grafis, dan peningkatan semantik. Perbedaan HTML dan CSS HTML dan CSS adalah dua teknologi yang wajib digunakan dalam development website yang bekerja sama untuk menciptakan halaman website yang menarik dan fungsional sesuai dengan ide bisnis. Meskipun keduanya sering digunakan bersama, mereka memiliki fungsi dan tujuan yang sangat berbeda, dan developer wajib banget paham! HTML (HyperText Markup Language) HTML adalah bahasa markup yang digunakan untuk membuat struktur halaman projek website yang statis. HTML tersedia elemen-elemen seperti judul, paragraf, gambar, dan link yang menjadi bagian dari konten halaman website statis. Berikut adalah beberapa poin utama tentang HTML: Fungsi Utama: HTML digunakan untuk menentukan struktur dan konten dari sebuah halaman website.Elemen Struktural: HTML menggunakan tag seperti <h1>, <p>, <img>, dan <a> untuk menandai elemen-elemen di halaman.Versi Terbaru: HTML5 adalah versi terbaru yang membawa banyak fitur baru, termasuk elemen semantik seperti <article>, <section>, dan <aside>.Keterbacaan: HTML menyediakan kerangka yang mudah dibaca oleh mesin pencari dan browser, membantu mereka memahami isi dan struktur halaman. Contoh HTML sederhana: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Contoh HTML</title> </head> <body> <h1>Judul Halaman</h1> <p>Ini adalah paragraf pertama di halaman ini.</p> <a href="<https://www.example.com>">Kunjungi Example.com</a> </body> </html> CSS (Cascading Style Sheets) CSS adalah bahasa desain yang digunakan untuk mengatur tampilan dan layout halaman website. CSS memisahkan konten HTML dari desain visual, memungkinkan developer untuk mengontrol tampilan elemen secara konsisten di seluruh situs website. Berikut adalah beberapa poin penting tentang CSS: Fungsi Utama: CSS digunakan untuk mengatur gaya visual dari elemen HTML, termasuk warna, font, margin, dan layout.Selektor dan Properti: CSS menggunakan selektor untuk memilih elemen HTML dan menerapkan properti gaya kepada mereka, seperti color, font-size, dan margin.Fleksibilitas Desain: Dengan CSS, developer dapat membuat desain responsif yang menyesuaikan dengan berbagai ukuran layar dan perangkat.Versi Terbaru: CSS3 adalah versi terbaru yang memperkenalkan banyak fitur baru seperti transisi, animasi, dan flexbox untuk tata letak yang lebih fleksibel. Contoh CSS sederhana: body { font-family: Arial, sans-serif; background-color: #f0f0f0; color: #333; } h1 { color: #0066cc; } p { line-height: 1.5; } Perbedaan Utama antara HTML dan CSS Fungsi: HTML digunakan untuk membuat struktur dan konten halaman website, sedangkan CSS digunakan untuk mengatur tampilan dan desain visual.Sintaksis: HTML menggunakan tag untuk menandai elemen-elemen, sementara CSS menggunakan selektor dan properti untuk menerapkan gaya.Lokasi: HTML berada di dalam dokumen HTML itu sendiri, sedangkan CSS bisa berada dalam dokumen terpisah, dalam tag <style>, atau inline dalam tag HTML.Penggunaan: HTML wajib ada untuk membuat halaman website, sedangkan CSS opsional tetapi sangat penting untuk membuat halaman yang menarik dan mudah diakses. Contoh Penggunaan Bersama Untuk memahami bagaimana HTML dan CSS bekerja bersama, berikut adalah contoh dokumen HTML yang menggunakan CSS untuk styling: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Contoh HTML dan CSS</title> <style> body { font-family: Arial, sans-serif; background-color: #f0f0f0; color: #333; } h1 { color: #0066cc; } p { line-height: 1.5; } </style> </head> <body> <h1>Judul Halaman</h1> <p>Ini adalah paragraf pertama di halaman ini. CSS digunakan untuk mengatur tampilan teks ini.</p> <a href="<https://www.example.com>">Kunjungi Example.com</a> </body> </html> Dalam contoh ini, HTML digunakan untuk membuat struktur dasar halaman, sementara CSS dalam tag <style> digunakan untuk mengatur tampilan elemen-elemen tersebut. Dengan demikian, HTML dan CSS bekerja bersama untuk menciptakan halaman website yang terstruktur dan menarik. Basic HTML Structure Struktur dasar HTML adalah pondasi dari setiap halaman website. Berikut adalah penjelasan dan contoh kode dari struktur dasar HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document Title</title> </head> <body> <h1>Hello, World!</h1> </body> </html> Struktur ini dimulai dengan <!DOCTYPE html> yang mendefinisikan tipe dokumen sebagai HTML5. Tag <html> mencakup seluruh konten halaman website, sedangkan <head> berisi meta informasi seperti karakter set dan judul dokumen. Konten yang terlihat di halaman website ditempatkan di dalam tag <body>. Headings Heading atau judul digunakan untuk memberi hierarki pada konten dalam halaman website. HTML menyediakan enam level heading, dari <h1> hingga <h6>, yang masing-masing memiliki ukuran dan kepentingan yang berbeda. <h1>Heading 1</h1> <h2>Heading 2</h2> <h3>Heading 3</h3> <h4>Heading 4</h4> <h5>Heading 5</h5> <h6>Heading 6</h6> Paragraphs Tag <p> digunakan untuk mendefinisikan paragraf. Setiap paragraf secara otomatis diberi ruang di bawahnya oleh browser. <p>Ini adalah paragraf pertama.</p> <p>Ini adalah paragraf kedua.</p> Links Link atau tautan dibuat menggunakan tag <a>. Atribut href digunakan untuk menentukan URL tujuan dari tautan tersebut. <a href="<https://www.example.com>">Kunjungi Example.com</a> Images Tag <img> digunakan untuk embedding gambar dalam halaman website. Atribut src menentukan sumber gambar, sedangkan alt memberikan teks alternatif jika gambar tidak bisa ditampilkan. <img src="image.jpg" alt="Deskripsi Gambar" width="500" height="300"> Lists HTML menyediakan dua jenis list: ordered list (<ol>) dan unordered list (<ul>). List item dalam kedua jenis list ini menggunakan tag <li>. <!-- Unordered List --> <ul> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> <!-- Ordered List --> <ol> <li>First item</li> <li>Second item</li> <li>Third item</li> </ol> Tables Tabel dalam HTML didefinisikan dengan tag <table>, dan terdiri dari baris (<tr>) dan kolom (<td> atau <th>). <table> <tr> <th>Header 1</th> <th>Header 2</th> </tr> <tr> <td>Data 1</td> <td>Data 2</td> </tr> <tr> <td>Data 3</td> <td>Data 4</td> </tr> </table> Forms Formulir atau forms digunakan untuk menerima input dari pengguna. Tag <form> mengandung elemen input seperti text field, checkbox, dan submit button. <form action="/submit" method="post"> <label for="name">Name:</label> <input type="text" id="name" name="name"> <input type="submit" value="Submit"> </form> Div and Span Tag <div> dan <span> adalah kontainer yang digunakan untuk mengelompokkan elemen. <div> adalah elemen blok, sedangkan <span> adalah elemen inline. <div> <h2>Ini adalah div</h2> <p>Div adalah elemen blok.</p> </div> <p>Ini adalah <span>span</span> dalam paragraf. Span adalah elemen inline.</p> Audio and Video HTML5 memperkenalkan elemen untuk embedding audio dan video. Tag <audio> dan <video> mendukung berbagai format media. <!-- Audio --> <audio controls> <source src="audio.mp3" type="audio/mpeg"> Browser Anda tidak mendukung elemen audio. </audio> <!-- Video --> <video width="320" height="240" controls> <source src="video.mp4" type="video/mp4"> Browser Anda tidak mendukung elemen video. </video> Meta Tags Meta tags menyediakan informasi tentang halaman website seperti deskripsi, kata kunci, dan informasi penulis. Tag ini biasanya ditempatkan di dalam <head>. <meta charset="UTF-8"> <meta name="description" content="Deskripsi singkat halaman"> <meta name="keywords" content="HTML, CSS, JavaScript"> <meta name="author" content="Nama Penulis"> Buttons Tag <button> digunakan untuk membuat tombol yang dapat diklik. <button type="button">Klik Saya</button> Input Types HTML menyediakan berbagai tipe input yang bisa digunakan dalam form, seperti text, password, email, number, dan date. <form> <input type="text" placeholder="Nama"> <input type="password" placeholder="Kata Sandi"> <input type="email" placeholder="Email"> <input type="number" placeholder="Usia"> <input type="date"> </form> HTML Entities HTML entities digunakan untuk menampilkan karakter spesial yang tidak dapat diketik langsung. Misalnya, < untuk < dan > untuk >. <p>Lebih kecil dari: <</p> <p>Lebih besar dari: ></p> Inline vs Block Elements Elemen inline dan blok berperilaku berbeda. Elemen blok mengambil seluruh lebar konten, sedangkan elemen inline hanya mengambil ruang yang diperlukan. <div>Ini adalah elemen blok</div> <span>Ini adalah elemen inline</span> Iframes Tag <iframe> digunakan untuk embedding dokumen HTML lain di dalam halaman website. <iframe src="<https://www.example.com>" width="600" height="400"></iframe> Semantic Elements Elemen semantik memberikan makna yang jelas tentang konten yang dibawa, seperti <article>, <section>, dan <aside>. <article> <h2>Judul Artikel</h2> <p>Ini adalah konten artikel.</p> </article> <section> <h2>Seksi Konten</h2> <p>Ini adalah konten dalam sebuah seksi.</p> </section> <aside> <h2>Informasi Tambahan</h2> <p>Ini adalah konten sampingan atau informasi tambahan.</p> </aside> Comments Komentar dalam HTML digunakan untuk menyisipkan catatan yang tidak akan ditampilkan oleh browser. <!-- Ini adalah komentar --> <p>Paragraf ini akan ditampilkan oleh browser.</p> Attributes Atribut memberikan informasi tambahan pada elemen HTML. Atribut umumnya ditempatkan di dalam tag pembuka elemen. <a href="<https://www.example.com>" target="_blank">Buka Tautan di Tab Baru</a> Class and ID Selectors Class dan ID digunakan untuk memberikan identitas unik pada elemen yang dapat diakses melalui CSS dan JavaScript. <div class="container">Konten dalam div dengan class 'container'</div> <p id="unique">Paragraf dengan ID 'unique'</p> Inline Styles Inline style memberikan cara cepat untuk menambahkan gaya langsung pada elemen HTML. <p style="color: red;">Paragraf ini berwarna merah.</p> External CSS External CSS memungkinkan pemisahan antara konten HTML dan gaya, menyimpan aturan gaya di file terpisah. <link rel="stylesheet" href="styles.css"> Internal CSS Internal CSS ditulis di dalam tag <style> dalam dokumen HTML itu sendiri. <style> body { background-color: lightblue; } p { color: blue; } </style> HTML5 Doctype Deklarasi doctype HTML5 sangat sederhana dibandingkan dengan versi sebelumnya, cukup menggunakan <!DOCTYPE html>. <!DOCTYPE html> Character Sets Deklarasi karakter set dalam HTML penting untuk menentukan bagaimana teks dalam dokumen ditampilkan. <meta charset="UTF-8"> Responsive Design with Viewport Viewport meta tag membantu dalam membuat halaman website yang responsif dengan mengontrol layout pada perangkat mobile. <meta name="viewport" content="width=device-width, initial-scale=1.0"> Data Attributes Data attributes memungkinkan developer untuk menyimpan informasi tambahan pada elemen HTML tanpa mempengaruhi tampilan atau fungsi elemen tersebut. <div data-id="123" data-role="user">User Information</div> Script Tag Tag <script> digunakan untuk menyertakan atau menulis kode JavaScript dalam halaman website. <script src="script.js"></script> <script> console.log("Hello, World!"); </script> HTML5 Input Attributes HTML5 memperkenalkan banyak atribut input baru yang meningkatkan kegunaan form, seperti placeholder, required, dan pattern. <input type="text" placeholder="Nama" required> <input type="email" placeholder="Email" required> <input type="text" pattern="\\\\d{10}" title="Masukkan 10 digit angka"> Favicon Favicon adalah ikon kecil yang muncul di tab browser dan digunakan untuk memberikan identitas visual pada situs website. <link rel="icon" href="favicon.ico" type="image/x-icon"> Dengan memahami dan menguasai elemen-elemen dasar HTML ini, Anda dapat membangun dan mengembangkan halaman website yang efektif, responsif, dan user-friendly. Setiap elemen HTML memiliki peran penting dalam membentuk struktur dan penyajian konten, menjadikannya komponen krusial dalam website development.

Kelas 3 Kombinasi Font Populer untuk UI/UX Design 2024! di BuildWithAngga

3 Kombinasi Font Populer untuk UI/UX Design 2024!

Hello people with the spirit of learning! Memilih font yang tepat untuk desain UI/UX adalah hal yang krusial. Font yang tepat dapat meningkatkan estetika, membantu navigasi pengguna, dan menyampaikan pesan brand dengan efektif. Dalam dunia desain UI/UX, pemilihan font bukan sekadar estetika. Tahun 2024 menghadirkan tren font yang lebih fokus pada keseimbangan, modernitas, dan profesionalisme. Dalam artikel kali ini, kita akan membahas 3 kombinasi font terpopuler yang siap mendominasi desain UI/UX di tahun ini, beserta keunikan dan alasan kenapa kamu harus menggunakannya! Poppins x Lora Poppins: Font sans-serif modern dengan design yang clean dan mudah dibaca. Poppins sangat cocok untuk body text, headings, dan UI elements. Huruf-hurufnya yang tegas dan seimbang menjadikannya pilihan ideal loh guys! Desainnya yang sederhana namun elegan membuat teks jadi easy to read di berbagai ukuran layar. Lora: Font serif klasik dengan sentuhan modern ini cocok untuk judul, subheading, dan elemen yang ingin ditonjolkan. Lora memiliki keunikan pada kontrasnya yang tebal-tipis yang halus dan melengkung. Memberikan gaya klasik namun kontemporernya memberikan sentuhan keanggunan pada teks paragraf. Take a Look for the Original Design by Shaynakit.com Dengan menggabungkan Poppins dan Lora, maka desain akan menciptakan keseimbangan visual antara modernitas dan tradisional. Poppins memberikan kesan yang bersih dan profesional, sementara Lora menambahkan keanggunan dan kemudahan membaca pada teks panjang. Nunito x Karla Nunito: Font sans-serif geometris dengan nuansa yang ramah dan approachable. Font ini sangat cocok untuk body text, UI elements, dan microcopy. Font ini terkenal dengan lekukan halus dan proporsi seimbang. Bentuk hurufnya yang bulat dan ramah memberikan nuansa bersahabat dan nyaman pada teks loh guys Karla: Font sans-serif condensed dengan desain yang kokoh dan profesional ini cocok untuk headings, subheadings, dan elemen yang ingin ditonjolkan. Lora dengan gaya grotesque yang lebih kuat dan karakter tegas. Meskipun begitu, Karla tetap mempertahankan kemudahan membaca yang tinggi. Take a Look for the Original Design by Shaynakit.com Pada kombinasi ini, kita dapat menghadirkan kesan modern dan minimalis. Nunito memberikan kesan ramah dan mudah dibaca, dan Karla memberikan kesan kuat dan profesional. Perpaduan ini sangat cocok untuk website dan aplikasi yang ingin menampilkan kesan modern dan profesional, seperti website startup, website agensi, atau aplikasi fintech. Sangat ideal untuk desain yang ingin menyampaikan informasi dengan jelas dan tetap mempertahankan nuansa yang hangat dan menarik. Alice x Inter Alice: Font serif klasik dengan desain yang indah dan elegan. Font ini cocok untuk judul, subheading, dan elemen yang ingin ditonjolkan. Font ini memilki tipografi klasik dengan sentuhan modern. Gaya elegan dan detail halus pada huruf-hurufnya memberikan kesan mewah dan canggih pada teks. Kombinasi font ini menghadirkan kesan modern dan minimalis. Nunito memberikan kesan ramah dan mudah dibaca, sedangkan Karla memberikan kesan kuat dan profesional. Perpaduan ini cocok untuk website dan aplikasi yang ingin menampilkan kesan modern dan profesional, seperti website startup, website agensi, atau aplikasi fintech dan juga kombinasi ini ideal untuk *design-*mu yang ingin menyampaikan informasi dengan jelas dan tetap mempertahankan nuansa yang hangat dan menarik 🤩 Inter: Font sans-serif modern dengan desain yang netral dan bersih membuat font ini cocok untuk body text, UI elements, dan microcopy. Inter dirancang khusus untuk UI. Desainnya yang sederhana, namun kuat dengan spasi antar huruf yang optimal, membuatnya sangat mudah dibaca di berbagai ukuran layar dan resolusi. Take a Look for the Original Design by Shaynakit.com Kombinasi font Alice dan Inter ini menghadirkan perpaduan antara klasik dan modern. Alice memberikan sentuhan elegan dan berkelas, sedangkan Inter memberikan kesan modern dan mudah dibaca. Sehingga perpaduan ini cocok untuk website dan aplikasi yang ingin menampilkan kesan timeless dan profesional, seperti website brand fashion, website museum, atau aplikasi edukasi dan travel. Kombinasi ini sangat sesuai untuk desain yang ingin menonjolkan kualitas dan kepercayaan. Kesimpulan 💭 Memilih kombinasi font yang tepat untuk desain UI/UX-mu bukan hanya soal estetika loh guys, tapi juga tentang meningkatkan experience pengguna. Di tahun 2024 ini, menghadirkan tren font yang fokus pada keseimbangan, modernitas, dan profesionalisme. Dalam kombinasi font Poppins dan Lora, Nunito dan Karla, serta Alice dan Inter ini, mereka menawarkan perpaduan sempurna antara kejelasan, estetika, dan kenyamanan. Dengan memahami keunikan dan kelebihan masing-masing, kamu dapat menciptakan desain yang menarik, fungsional, dan memenuhi kebutuhan pengguna di tahun 2024 dan seterusnya. So, Selamat mencoba! Tertarik belajar tipografi dalam UI/UX lebih jauh? Yuk join kelas-kelas gratis UI/UX di buildwithangga! Asah skill-mu dan bangun portfolio berkualitas 🥰

Kelas Membuat CRUD Projek Sewa Mobil dengan PHP Laravel 11 di BuildWithAngga

Membuat CRUD Projek Sewa Mobil dengan PHP Laravel 11

Pendahuluan Dengan semakin maraknya pariwisata, kebutuhan akan layanan sewa mobil semakin meningkat, terutama di bandara untuk wisatawan yang ingin berlibur. Banyak pengusaha yang melihat peluang ini dengan menyewakan mobil mereka dan menjangkau lebih banyak pelanggan melalui platform online. Memiliki website untuk bisnis sewa mobil tidak hanya mempermudah pengelolaan bisnis, tetapi juga membantu menjangkau pasar yang lebih luas dan memberikan kemudahan bagi pelanggan dalam melakukan booking mobil. Dalam artikel ini, kita akan membahas langkah-langkah untuk membuat projek CRUD (Create, Read, Update, Delete) sewa mobil menggunakan PHP Laravel 11. Tutorial ini akan mencakup persiapan lingkungan pengembangan, desain database, pengaturan Laravel, dan implementasi fitur CRUD untuk mengelola mobil sewaan. Persiapan Sebelum memulai proyek, kita perlu menyiapkan lingkungan pengembangan. Berikut adalah beberapa alat yang perlu diinstal: PHP: Bahasa pemrograman yang digunakan untuk pengembangan Laravel.Composer: Manajer dependensi untuk PHP.XAMPP: Paket perangkat lunak yang mencakup Apache, MySQL, dan PHP.Visual Studio Code (VSCode): Editor kode sumber yang digunakan untuk menulis dan mengedit kode.Node.js: JavaScript runtime yang diperlukan untuk menjalankan alat-alat pengembangan frontend seperti Laravel Mix. Instalasi PHP Unduh dan instal PHP dari situs resmi PHP. Pastikan PHP ditambahkan ke path sistem operasi Anda. Instalasi Composer Unduh dan instal Composer dari situs resmi Composer. Setelah instalasi, pastikan Composer dapat diakses melalui terminal dengan mengetikkan perintah composer. Instalasi XAMPP Unduh dan instal XAMPP dari situs resmi XAMPP. XAMPP akan menyediakan server Apache dan MySQL yang diperlukan untuk proyek Laravel kita. Instalasi VSCode Unduh dan instal Visual Studio Code dari situs resmi VSCode. Instalasi Node.js Unduh dan instal Node.js dari situs resmi Node.js. Node.js diperlukan untuk mengelola dependensi frontend dan menjalankan Laravel Mix. Mulai Membuat Proyek Sewa Mobil Setelah semua alat diinstal, kita dapat mulai membuat proyek Laravel untuk sewa mobil. Proyek ini akan mencakup fitur katalog mobil, pencarian mobil, dan booking mobil. Persiapan SQL untuk Desain Database Sebelum membuat proyek Laravel, kita perlu merancang database untuk menyimpan data mobil, kategori mobil, transaksi booking, dan pengguna. Berikut adalah contoh struktur tabel yang diperlukan: Table Mobilid (primary key)nama_mobilkategori_id (foreign key)harga_sewastatus (tersedia atau tidak)deskripsigambarTable Kategoriid (primary key)nama_kategoriTable Transaksiid (primary key)user_id (foreign key)mobil_id (foreign key)tanggal_sewatanggal_kembalitotal_hargaTable Usersid (primary key)namaemailpassword Membuat Proyek Laravel Terbaru dengan Composer Buka terminal dan navigasikan ke direktori tempat Anda ingin menyimpan proyek. Ketikkan perintah berikut untuk membuat proyek Laravel baru: composer create-project --prefer-dist laravel/laravel rental_car_project Mengatur .env dengan MySQL Database Buka file .env yang ada di root proyek Laravel Anda dan sesuaikan pengaturan database seperti berikut: DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=rental_car_db DB_USERNAME=root DB_PASSWORD= Buat database baru dengan nama rental_car_db melalui phpMyAdmin atau tool database lain yang Anda gunakan. Mengatur Migration Database Setiap Table Beserta Relationship Untuk membuat database sewa mobil, kita akan membuat beberapa tabel: mobils, kategoris, transaksis, dan users. Setiap tabel akan memiliki kolom dan relasi yang diperlukan. Berikut adalah langkah-langkah untuk membuat masing-masing tabel dengan migration di Laravel. Membuat Tabel mobils Jalankan perintah berikut di terminal untuk membuat migration tabel mobils: php artisan make:migration create_mobils_table Edit file migration yang baru dibuat di database/migrations/xxxx_xx_xx_xxxxxx_create_mobils_table.php: public function up() { Schema::create('mobils', function (Blueprint $table) { $table->id(); $table->string('nama_mobil'); $table->unsignedBigInteger('kategori_id'); $table->decimal('harga_sewa', 10, 2); $table->enum('status', ['tersedia', 'tidak tersedia']); $table->text('deskripsi'); $table->string('gambar')->nullable(); $table->timestamps(); // Foreign key constraint $table->foreign('kategori_id')->references('id')->on('kategoris')->onDelete('cascade'); }); } Membuat Tabel kategoris Jalankan perintah berikut di terminal untuk membuat migration tabel kategoris: php artisan make:migration create_kategoris_table Edit file migration yang baru dibuat di database/migrations/xxxx_xx_xx_xxxxxx_create_kategoris_table.php: public function up() { Schema::create('kategoris', function (Blueprint $table) { $table->id(); $table->string('nama_kategori'); $table->timestamps(); }); } Membuat Tabel transaksis Jalankan perintah berikut di terminal untuk membuat migration tabel transaksis: php artisan make:migration create_transaksis_table Edit file migration yang baru dibuat di database/migrations/xxxx_xx_xx_xxxxxx_create_transaksis_table.php: public function up() { Schema::create('transaksis', function (Blueprint $table) { $table->id(); $table->unsignedBigInteger('user_id'); $table->unsignedBigInteger('mobil_id'); $table->date('tanggal_sewa'); $table->date('tanggal_kembali'); $table->decimal('total_harga', 10, 2); $table->timestamps(); // Foreign key constraints $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); $table->foreign('mobil_id')->references('id')->on('mobils')->onDelete('cascade'); }); } Membuat Tabel users Laravel secara default sudah menyediakan migration untuk tabel users. Namun, jika Anda ingin menyesuaikannya, Anda dapat mengedit file migration yang ada di database/migrations/xxxx_xx_xx_xxxxxx_create_users_table.php: public function up() { Schema::create('users', function (Blueprint $table) { $table->id(); $table->string('nama'); $table->string('email')->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); $table->timestamps(); }); } Migrasi Database Setelah semua migration diatur, jalankan perintah berikut untuk menjalankan migration dan membuat tabel di database: php artisan migrate Relasi Antar Tabel Relasi antar tabel sudah ditentukan di dalam migration dengan menggunakan foreign key. Tabel mobils memiliki relasi many-to-one dengan tabel kategoris, sedangkan tabel transaksis memiliki relasi many-to-one dengan tabel users dan mobils Mengatur Model Fillable dan Controller Resource untuk CRUD Buat model dan controller untuk setiap tabel dengan perintah berikut: php artisan make:model Mobil -mcr php artisan make:model Kategori -mcr php artisan make:model Transaksi -mcr php artisan make:model User -mcr Tambahkan properti fillable di setiap model untuk mengizinkan mass assignment: class Mobil extends Model { protected $fillable = [ 'nama_mobil', 'kategori_id', 'harga_sewa', 'status', 'deskripsi', 'gambar', ]; } Lakukan hal yang sama untuk model lainnya. Mengatur Routing web.php dengan Middleware Login Tambahkan routing untuk fitur CRUD di file routes/web.php dan pastikan menggunakan middleware auth untuk melindungi rute yang memerlukan login: Route::group(['middleware' => ['auth']], function () { Route::resource('mobils', MobilController::class); Route::resource('kategoris', KategoriController::class); Route::resource('transaksis', TransaksiController::class); }); Membuat Fitur CRUD pada Setiap Table Buat metode CRUD di setiap controller untuk mengelola data. Berikut adalah contoh metode store di MobilController: public function store(Request $request) { $request->validate([ 'nama_mobil' => 'required', 'kategori_id' => 'required', 'harga_sewa' => 'required', 'status' => 'required', 'deskripsi' => 'required', 'gambar' => 'required|image', ]); $gambar = $request->file('gambar')->store('public/gambar'); Mobil::create([ 'nama_mobil' => $request->nama_mobil, 'kategori_id' => $request->kategori_id, 'harga_sewa' => $request->harga_sewa, 'status' => $request->status, 'deskripsi' => $request->deskripsi, 'gambar' => $gambar, ]); return redirect()->route('mobils.index')->with('success', 'Mobil berhasil ditambahkan'); } Lakukan hal yang sama untuk metode lainnya seperti index, edit, update, dan destroy. Membuat Fitur Checkout Mobil Buat metode di TransaksiController untuk menangani proses checkout mobil. Contoh metode store untuk transaksi: public function store(Request $request) { $request->validate([ 'mobil_id' => 'required', 'tanggal_sewa' => 'required|date', 'tanggal_kembali' => 'required|date', ]); $mobil = Mobil::find($request->mobil_id); $total_harga = $mobil->harga_sewa * (strtotime($request->tanggal_kembali) - strtotime($request->tanggal_sewa)) / 86400; Transaksi::create([ 'user_id' => auth()->id(), 'mobil_id' => $request->mobil_id, 'tanggal_sewa' => $request->tanggal_sewa, 'tanggal_kembali' => $request->tanggal_kembali, 'total_harga' => $total_harga, ]); return redirect()->route('transaksis.index')->with('success', 'Transaksi berhasil dilakukan'); } Tambahan: Membuat CRUD dengan Cepat Menggunakan FilamentPHP Membangun aplikasi CRUD secara manual di Laravel memang memberikan kontrol penuh atas setiap detail aplikasi, namun memerlukan waktu dan usaha yang cukup banyak. Untuk mempercepat proses ini, kita bisa memanfaatkan berbagai paket atau framework tambahan yang dirancang untuk menyederhanakan pembuatan aplikasi CRUD. Salah satu alat yang sangat membantu dalam konteks ini adalah FilamentPHP. Apa itu FilamentPHP? FilamentPHP adalah sebuah paket Laravel yang memungkinkan pengembang untuk membuat antarmuka administrasi (admin panel) dengan cepat dan mudah. Paket ini menyediakan berbagai fitur out-of-the-box yang dapat digunakan untuk membuat operasi CRUD (Create, Read, Update, Delete) dengan sedikit usaha. Dengan FilamentPHP, Anda dapat menghemat waktu dan fokus pada logika bisnis daripada berurusan dengan detail implementasi CRUD yang berulang. Langkah-langkah Menggunakan FilamentPHP Berikut adalah langkah-langkah untuk mengintegrasikan FilamentPHP ke dalam proyek Laravel Anda dan membuat fitur CRUD dengan cepat: Instalasi FilamentPHP Pertama, tambahkan paket FilamentPHP ke dalam proyek Laravel Anda dengan menggunakan Composer: composer require filament/filamentMengkonfigurasi FilamentPHP Setelah instalasi, Anda perlu menjalankan perintah publish untuk mempublikasikan file konfigurasi FilamentPHP: php artisan vendor:publish --tag=filament-config File konfigurasi yang dipublikasikan akan memungkinkan Anda untuk menyesuaikan pengaturan Filament sesuai kebutuhan aplikasi Anda.Membuat Resource Filament Filament menggunakan konsep resource untuk mengelola model. Anda dapat membuat resource untuk model Mobil dengan perintah berikut: php artisan make:filament-resource Mobil Perintah ini akan menghasilkan beberapa file termasuk resource, model, dan migration jika belum ada. File resource akan berada di app/Filament/Resources/MobilResource.php.Menyesuaikan Resource Edit file resource yang telah dibuat untuk menyesuaikan tampilan dan operasi CRUD. Berikut adalah contoh penyesuaian sederhana pada Dalam file ini, kita mendefinisikan skema formulir untuk menambah atau mengedit mobil, serta kolom-kolom yang akan ditampilkan di tabel daftar mobil. namespace App\\Filament\\Resources; use App\\Filament\\Resources\\MobilResource\\Pages; use App\\Models\\Mobil; use Filament\\Resources\\Resource; use Filament\\Resources\\Table; use Filament\\Resources\\Form; use Filament\\Tables\\Columns\\TextColumn; use Filament\\Forms\\Components\\TextInput; use Filament\\Forms\\Components\\Select; use Filament\\Forms\\Components\\FileUpload; class MobilResource extends Resource { protected static ?string $model = Mobil::class; public static function form(Form $form): Form { return $form ->schema([ TextInput::make('nama_mobil')->required(), Select::make('kategori_id') ->relationship('kategori', 'nama_kategori')->required(), TextInput::make('harga_sewa')->required(), Select::make('status') ->options([ 'tersedia' => 'Tersedia', 'tidak tersedia' => 'Tidak Tersedia', ])->required(), TextInput::make('deskripsi')->required(), FileUpload::make('gambar')->image(), ]); } public static function table(Table $table): Table { return $table ->columns([ TextColumn::make('nama_mobil')->sortable()->searchable(), TextColumn::make('kategori.nama_kategori')->sortable()->searchable(), TextColumn::make('harga_sewa')->sortable(), TextColumn::make('status')->sortable(), ]) ->filters([ // ]) ->actions([ Tables\\Actions\\EditAction::make(), ]) ->bulkActions([ Tables\\Actions\\DeleteBulkAction::make(), ]); } public static function getPages(): array { return [ 'index' => Pages\\ListMobils::route('/'), 'create' => Pages\\CreateMobil::route('/create'), 'edit' => Pages\\EditMobil::route('/{record}/edit'), ]; } } Menjalankan Server Setelah resource dikonfigurasi, jalankan server Laravel dengan perintah: php artisan serve Anda dapat mengakses panel administrasi Filament di URL /admin. Dari sini, Anda dapat mengelola data mobil dengan mudah melalui antarmuka yang disediakan Filament. Keuntungan Menggunakan FilamentPHP Kecepatan Pengembangan: Menggunakan FilamentPHP memungkinkan pengembang untuk membuat aplikasi CRUD dengan cepat tanpa harus menulis kode boilerplate berulang-ulang.Antarmuka Pengguna yang Intuitif: Filament menyediakan antarmuka administrasi yang mudah digunakan dan intuitif.Fleksibilitas: Meskipun Filament mengautomatisasi banyak hal, Anda tetap memiliki kontrol penuh untuk menyesuaikan setiap aspek sesuai kebutuhan aplikasi. Dengan menggunakan FilamentPHP, Anda dapat fokus pada aspek bisnis dari aplikasi sewa mobil Anda, sementara Filament menangani detail teknis dari operasi CRUD. Hal ini akan sangat menghemat waktu dan usaha Anda dalam mengembangkan aplikasi yang handal dan efisien. Penutup Dalam tutorial ini, kita telah membahas langkah-langkah untuk membuat proyek CRUD sewa mobil menggunakan PHP Laravel 11. Mulai dari persiapan lingkungan pengembangan, desain database, pengaturan Laravel, hingga implementasi fitur CRUD dan checkout mobil. Dengan mengikuti langkah-langkah ini, Anda dapat membuat aplikasi sewa mobil yang fungsional dan membantu bisnis Anda menjangkau lebih banyak pelanggan secara online. Jika Anda tertarik belajar dengan mentor maka bisa kunjungi katalog kelas BuildWithAngga dalam menciptakan portfolio menarik sebagai modal bekerja website developer di tahun 2025, sampai jumpa di kelas guys!

Kelas Perbedaan MySQL dan Postgresql dan Kapan Harus Memilihnya? di BuildWithAngga

Perbedaan MySQL dan Postgresql dan Kapan Harus Memilihnya?

Apa Itu SQL dan Manfaat Utama untuk Web Developer Structured Query Language (SQL) adalah bahasa standar untuk mengelola dan memanipulasi database relasional. SQL memungkinkan web developer untuk berinteraksi dengan database melakukan berbagai operasi, seperti menambah, menghapus, dan memperbarui data (CRUD). Salah satu manfaat utama SQL bagi web developer adalah kemampuannya untuk mengoptimalkan pengelolaan data dan memastikan integritas data dalam aplikasi web. Berikut adalah 5 contoh query SQL yang umum digunakan dalam projek toko online Menampilkan semua produk dari kategori tertentu: SELECT * FROM products WHERE category = 'electronics'; Query ini digunakan untuk mengambil semua produk yang berada dalam kategori 'electronics'.Menambahkan produk baru ke dalam tabel products: INSERT INTO products (product_name, category, price, stock) VALUES ('Smartphone XYZ', 'electronics', 299.99, 50); Query ini akan menambahkan produk baru dengan nama 'Smartphone XYZ', kategori 'electronics', harga $299.99, dan stok sebanyak 50 unit.Memperbarui harga produk berdasarkan ID produk: UPDATE products SET price = 249.99 WHERE product_id = 101; Query ini akan memperbarui harga produk dengan product_id 101 menjadi $249.99.Menghapus produk dari tabel products: DELETE FROM products WHERE product_id = 101; Query ini akan menghapus produk dengan product_id 101 dari tabel products.Menampilkan total penjualan per kategori: SELECT category, SUM(price * quantity) AS total_sales FROM order_items JOIN products ON order_items.product_id = products.product_id GROUP BY category; Query ini akan menampilkan total penjualan untuk setiap kategori produk, dengan menjumlahkan hasil dari harga dikali kuantitas produk yang terjual. Query di atas mencakup beberapa operasi dasar yang sering digunakan dalam manajemen toko online, seperti mengambil data, menambah data, memperbarui data, menghapus data, dan data untuk analisis penjualan. Apa Itu MySQL dan Perbedaan dengan SQL MySQL adalah salah satu sistem manajemen database relasional (RDBMS) yang paling populer, menggunakan SQL sebagai bahasa pengelolaannya. Perbedaan utama antara MySQL dan SQL adalah bahwa MySQL adalah implementasi spesifik dari sistem database yang menggunakan SQL untuk mengelola database. Fitur Unggulan MySQL dan Benefit untuk Web Developer MySQL memiliki beberapa fitur unggulan yang menjadikannya pilihan populer di kalangan web developer: Skalabilitas: MySQL dapat menangani database besar dan mendukung banyak pengguna secara bersamaan.Kinerja Tinggi: MySQL dirancang untuk menyediakan kinerja yang cepat dan efisien.Keamanan: MySQL memiliki fitur keamanan yang kuat, termasuk autentikasi pengguna dan izin akses.Komunitas yang Kuat: MySQL didukung oleh komunitas besar yang menyediakan banyak sumber daya dan dukungan. Bagi web developer, MySQL menawarkan manfaat berupa kemudahan penggunaan, dukungan luas, dan kompatibilitas dengan banyak platform dan bahasa pemrograman. Apa Itu PostgreSQL dan Fitur Unggulan Utamanya PostgreSQL adalah RDBMS open-source yang dikenal karena kekayaannya dalam fitur dan ketaatan pada standar SQL. Beberapa fitur unggulan PostgreSQL meliputi: Kompatibilitas SQL yang Lebih Tinggi: PostgreSQL mendukung lebih banyak fitur SQL standar daripada MySQL.Ekstensi dan Fungsionalitas Tambahan: PostgreSQL memungkinkan pengguna untuk menambahkan fungsi-fungsi kustom dan mendukung tipe data yang lebih kompleks.Konsistensi dan Integritas Data: PostgreSQL menyediakan fitur untuk menjaga integritas data dengan lebih baik melalui dukungan penuh untuk transaksi ACID.Skalabilitas Horizontal dan Vertikal: PostgreSQL dirancang untuk dapat diskalakan baik secara horizontal maupun vertikal. ACID adalah singkatan dari Atomicity, Consistency, Isolation, dan Durability. Ini adalah seperangkat prinsip yang memastikan transaksi database dieksekusi dengan andal: Atomicity: Menjamin bahwa semua operasi dalam transaksi dieksekusi sepenuhnya atau tidak sama sekali.Consistency: Memastikan bahwa transaksi hanya membawa database dari satu status valid ke status valid lainnya.Isolation: Menjamin bahwa transaksi yang berjalan bersamaan tidak saling mengganggu.Durability: Menjamin bahwa hasil transaksi yang berhasil tetap ada meskipun terjadi kegagalan sistem. PostgreSQL menyediakan fitur untuk menjaga integritas data dengan lebih baik melalui dukungan penuh untuk transaksi ACID. Kenapa Harus Pilih PostgreSQL Dibandingkan MySQL Beberapa alasan utama untuk memilih PostgreSQL dibandingkan MySQL adalah: Kekayaan Fitur: PostgreSQL memiliki lebih banyak fitur dan mendukung tipe data yang lebih kompleks.Ketaatan pada Standar SQL: PostgreSQL lebih sesuai dengan standar SQL, membuatnya lebih fleksibel dan kuat dalam berbagai skenario.Transaksi dan Integritas Data: Dukungan penuh untuk transaksi ACID menjadikan PostgreSQL lebih andal dalam menjaga integritas data. Apakah PostgreSQL Gratis Digunakan? Yupp, PostgreSQL adalah open-source yang dapat digunakan secara gratis untuk projek latihan dan komersil. developer memiliki akses penuh ke source code dan dapat memodifikasinya sesuai dengan kebutuhan projek mereka tanpa dikenakan lisensi. Gimana Cara Tingatkan Performa MySQL Untuk meningkatkan performa MySQL, beberapa langkah yang bisa diambil adalah: Optimisasi Query: Memastikan query SQL ditulis dengan efisien dan menggunakan indeks dengan tepat.Penggunaan Indeks: Menggunakan indeks pada kolom yang sering digunakan dalam kondisi pencarian atau join.Konfigurasi Server: Menyesuaikan konfigurasi MySQL untuk memaksimalkan penggunaan sumber daya hardware.Pembersihan Data: Menghapus data yang tidak diperlukan secara berkala untuk mengurangi ukuran database. Cara Meningkatkan Performa PostgreSQL Beberapa langkah untuk meningkatkan performa PostgreSQL meliputi: Penggunaan Indeks: Seperti MySQL, indeks dapat sangat meningkatkan performa query.Konfigurasi Autovacuum: Menyesuaikan pengaturan autovacuum untuk memastikan pembersihan ruang yang optimal.Optimisasi Query: Menulis query SQL yang efisien dan menggunakan rencana eksekusi yang optimal.Tuning Parameter: Menyesuaikan parameter konfigurasi seperti shared_buffers, work_mem, dan maintenance_work_mem. Website Developer Harus Pilih yang Mana? Pemilihan antara MySQL dan PostgreSQL tergantung pada kebutuhan spesifik projek. Jika prioritas utama adalah kinerja cepat, kemudahan penggunaan, dan dukungan komunitas yang kuat, MySQL mungkin menjadi pilihan yang tepat. Namun, jika projek membutuhkan fitur lanjutan, kepatuhan yang ketat pada standar SQL, dan integritas data yang tinggi, PostgreSQL bisa menjadi pilihan yang lebih baik. Soooo, MySQL atau juga PostgreSQL adalah RDBMS yang sangat baik dengan kekuatan dan kelemahan masing-masing. Web developer harus mempertimbangkan kebutuhan spesifik projek mereka dan memilih yang paling sesuai. Pelajari materi selengkapnya yang tersedia pada website BuildWithAngga, belajar dengan benefit akses seumur hidup, bisa bertanya juga kepada mentor kelas tanpa batasan waktu! mari ciptakan portfolio menarikmu, dan sampai jumpa di kelas!

Kelas Perkenalan Node.js dan Contoh CRUD Projek Rumah Sakit di BuildWithAngga

Perkenalan Node.js dan Contoh CRUD Projek Rumah Sakit

Mengenal Node.JS sebagai web developer Node.js adalah platform runtime yang dibangun di atas JavaScript V8 milik Google Chrome. Node.js memungkinkan developer untuk menjalankan kodingan JavaScript dari sisi server, sehingga menciptakan lingkungan yang efisien dan mudah diperbesar (scalable) untuk develop web. Perbedaan utama Node.js dan framework Laravel Node.js dan Laravel adalah dua alat yang sangat berbeda untuk pengembangan web, meskipun keduanya digunakan untuk membangun aplikasi server-side. Bahasa Pemrograman: Node.js menggunakan JavaScript, sementara Laravel menggunakan PHP. Ini adalah perbedaan paling mendasar dan mempengaruhi cara pengembangan, ekosistem, dan komunitas masing-masing.Paradigma: Laravel adalah framework berbasis MVC (Model-View-Controller) yang menyediakan struktur yang ketat dan berfokus pada arsitektur yang jelas. Node.js lebih fleksibel dan tidak mengikat pengembang pada satu arsitektur tertentu, meskipun ada banyak framework yang dapat digunakan dengan Node.js seperti Express.js yang membantu membangun aplikasi MVC.Performa: Node.js dikenal karena kemampuannya untuk menangani operasi I/O yang tinggi dengan non-blocking I/O model, yang membuatnya sangat cepat untuk aplikasi real-time seperti chat atau game online. Laravel, dengan arsitektur MVC-nya, lebih cocok untuk aplikasi yang membutuhkan pengolahan data yang kompleks dan tidak terlalu mementingkan performa real-time.Ekosistem dan Komunitas: Ekosistem npm (Node Package Manager) Node.js adalah salah satu yang terbesar di dunia pengembangan perangkat lunak, dengan jutaan paket yang dapat digunakan. Laravel juga memiliki komunitas yang kuat dan banyak paket melalui Composer, tetapi ekosistemnya tidak sebesar npm. Waktu yang tepat memilih pake node.js Node.js adalah pilihan yang sangat baik untuk mengerjakan aplikasi tertentu: Aplikasi Real-Time: Seperti aplikasi chat, kolaborasi langsung, atau permainan online, di mana kecepatan dan kemampuan untuk menangani banyak koneksi secara bersamaan sangat penting.API RESTful: Node.js sangat efisien untuk membuat API karena model I/O yang non-blocking dan dukungan JSON yang kuat.Aplikasi Berbasis Event: Karena arsitektur berbasis event-driven, Node.js sangat cocok untuk aplikasi yang harus merespons banyak event.Microservices: Node.js dapat digunakan untuk membangun arsitektur microservices, yang memerlukan pengolahan cepat dan komunikasi antar layanan yang efisien. Sebelum belajar Node.js, persiapkan hal-hal berikut Pemahaman Dasar JavaScript: Pahami konsep dasar JavaScript, seperti variabel, fungsi, dan asinkronitas.Instalasi Node.js: Unduh dan instal Node.js dari situs resminya (nodejs.org).Editor Kode: Gunakan editor teks seperti VS Code atau Sublime Text.NPM: Familiarisasi dengan npm (Node Package Manager) untuk mengelola paket dan dependensi.Dasar-Dasar Terminal: Pahami perintah dasar terminal atau command line.Dokumentasi: Sediakan akses ke dokumentasi resmi Node.js dan Express.js. Fitur Unggulan dari Menggunakan Node.js Non-Blocking I/O: Model I/O non-blocking memungkinkan Node.js menangani banyak operasi secara bersamaan tanpa menunggu operasi I/O selesai, meningkatkan performa aplikasi.Single Programming Language: Dengan Node.js, pengembang dapat menggunakan JavaScript di sisi klien dan server, menyederhanakan proses pengembangan.Ekosistem npm: Ekosistem npm menyediakan akses ke jutaan paket yang dapat digunakan untuk menambahkan berbagai fitur dan fungsi ke aplikasi dengan mudah.Skalabilitas: Node.js dirancang untuk membangun aplikasi yang scalable, baik secara horizontal maupun vertikal.Cepat dan Efisien: Mesin V8 yang digunakan oleh Node.js memungkinkan eksekusi kode yang sangat cepat. Node.js gratis untuk kita gunakan projek freelance Node.js adalah open-source dan gratis untuk digunakan. Node.js memiliki lisense di bawah Lisensi MIT, yang memungkinkan developer untuk menggunakannya, memodifikasi, dan mendistribusikan tanpa biaya. Framework Node.js Ada beberapa framework yang dapat digunakan bersama Node.js untuk mempercepat pengembangan aplikasi: Express.js: Framework minimalis dan fleksibel untuk membuat aplikasi web dan API. Express.js adalah salah satu framework paling populer untuk Node.js.Koa.js: Dibuat oleh tim yang sama yang membuat Express.js, Koa.js menawarkan fitur modern dan ringan untuk pengembangan web.NestJS: Framework yang sangat cocok untuk membangun aplikasi server-side yang skalabel dan dapat dipelihara, menggunakan TypeScript.Sails.js: Framework MVC yang kuat untuk membangun aplikasi web skala besar, mirip dengan Laravel namun untuk Node.js. CRUD dengan Node.js projek Rumah Sakit Berikut adalah contoh sederhana bagaimana membangun aplikasi CRUD (Create, Read, Update, Delete) untuk mengelola data rumah sakit menggunakan Node.js dan Express.js. 1. Instalasi dan Persiapan projek Pertama, pastikan Anda sudah menginstal Node.js dan npm. Kemudian, buat direktori baru untuk proyek dan inisialisasi npm pada terminal: mkdir hospital-crud cd hospital-crud npm init -y Instal Express.js: npm install express 2. Struktur projek Buat struktur proyek seperti berikut: hospital-crud/ |-- node_modules/ |-- public/ |-- routes/ | |-- index.js |-- app.js |-- package.json 3. Buat Server dengan Express.js Buat file app.js dan tambahkan kode berikut untuk mengatur server: const express = require('express'); const app = express(); const port = 3000; app.use(express.json()); app.use(express.urlencoded({ extended: true })); const indexRouter = require('./routes/index'); app.use('/', indexRouter); app.listen(port, () => { console.log(`Server running at <http://localhost>:${port}`); }); 4. Rute CRUD Buat file routes/index.js dan tambahin kodingan untuk mengatur routing CRUD: const express = require('express'); const router = express.Router(); let patients = []; // Create a new patient router.post('/patients', (req, res) => { const patient = req.body; patients.push(patient); res.status(201).json(patient); }); // Read all patients router.get('/patients', (req, res) => { res.json(patients); }); // Read a single patient router.get('/patients/:id', (req, res) => { const patient = patients.find(p => p.id === parseInt(req.params.id)); if (!patient) return res.status(404).send('Patient not found'); res.json(patient); }); // Update a patient router.put('/patients/:id', (req, res) => { const patient = patients.find(p => p.id === parseInt(req.params.id)); if (!patient) return res.status(404).send('Patient not found'); patient.name = req.body.name; patient.age = req.body.age; patient.diagnosis = req.body.diagnosis; res.json(patient); }); // Delete a patient router.delete('/patients/:id', (req, res) => { const patientIndex = patients.findIndex(p => p.id === parseInt(req.params.id)); if (patientIndex === -1) return res.status(404).send('Patient not found'); patients.splice(patientIndex, 1); res.status(204).send(); }); module.exports = router; Kesimpulan utamanya Node.js adalah platform runtime yang kuat dan efisien untuk pengembangan aplikasi web server-side. Dengan fitur-fitur unggulannya seperti non-blocking I/O dan ekosistem npm yang banyak dan mendukung, Node.js menawarkan solusi yang scalable dan cepat untuk berbagai jenis projek, seperti aplikasi real-time dan API. Dengan berbagai framework yang tersedia, seperti Express.js, develop website dengan Node.js menjadi lebih mudah dan terstruktur. Contoh CRUD di atas menunjukkan bagaimana membangun aplikasi sederhana untuk mengelola data rumah sakit dengan Node.js. Apabila tertarik belajar lebih lanjut maka bisa periksa katalog kelas terbaru BuildWithAngga untuk memulai belajar node js dan membangun portfolio berkualitas tinggi sebagai modal bekerja!

Kelas Mengenal Laravel dan Breeze Serta Fitur Unggulannya di BuildWithAngga

Mengenal Laravel dan Breeze Serta Fitur Unggulannya

Manfaat Website pada Bisnis Online dan Contoh Website Populer Saat Ini Di era digital seperti sekarang, memiliki website untuk bisnis online sangatlah penting. Website bisa menjadi toko online, tempat promosi, dan media komunikasi dengan pelanggan. Dengan website, bisnis dapat beroperasi selama 24 jam tanpa henti, menjangkau lebih banyak pelanggan potensial, dan meningkatkan penjualan secara signifikan. Contoh website populer saat ini termasuk Tokopedia, Shopee, dan Bukalapak di Indonesia. Jika bisnis Anda tidak dapat ditemukan secara online, maka itu akan menjadi masalah yang sangat besar dan berpotensi membuat bisnis Anda kalah bersaing lalu bangkrut Mereka membantu bisnis untuk menjangkau lebih banyak pelanggan dan meningkatkan penjualan. Website tersebut memberikan kemudahan bagi pelanggan untuk berbelanja dari mana saja dan kapan saja, serta memberikan pengalaman berbelanja yang nyaman dan aman. Seberapa Pentingnya Menggunakan Framework Laravel terhadap Proses Website Development Framework seperti Laravel sangat penting dalam proses pengembangan website. Laravel adalah salah satu framework PHP yang paling populer dan digunakan oleh banyak developer di seluruh dunia. Laravel membantu programmer membuat aplikasi web dengan cepat dan efisien. Laravel menyediakan berbagai fitur seperti routing, authentication, dan manajemen database yang memudahkan pengembangan dan pemeliharaan aplikasi. Dengan menggunakan Laravel, developer dapat fokus pada logika bisnis aplikasi tanpa harus khawatir tentang detail teknis yang rumit. Laravel juga memiliki dokumentasi yang sangat baik dan komunitas yang besar, sehingga memudahkan developer untuk mendapatkan bantuan dan dukungan saat menghadapi masalah. Apa Itu Package Breeze pada Laravel Laravel Breeze adalah package yang disediakan oleh Laravel untuk mempermudah proses pembuatan fitur authentication dasar seperti login, register, dan reset password. Breeze menyediakan template sederhana dengan blade dan Tailwind CSS yang bisa dengan mudah dicustom sesuai kebutuhan projek website. Package ini sangat berguna bagi pemula yang ingin memulai proyek Laravel dengan cepat tanpa harus membangun authentication dari nol. Laravel Breeze dirancang untuk memberikan fondasi yang solid untuk aplikasi Laravel, sehingga developer dapat dengan cepat memulai proyek mereka dan fokus pada pengembangan fitur-fitur lain yang lebih spesifik. Beberapa Manfaat Utama Breeze Adapun beberapa manfaat ketika kita menggunakan package breeze: Fast Coding: Breeze membantu developer membuat authentication dalam hitungan menit saja. Dengan beberapa command artisan sederhana, developer bisa langsung memiliki sistem login dan register yang berfungsi.Easy to Custom: Menggunakan Tailwind CSS, yang memudahkan penyesuaian tampilan. web developer dapat dengan mudah mengubah desain dan tata letak sesuai dengan kebutuhan projek website.REST API: Breeze mendukung API token untuk pengembangan aplikasi mobile atau frontend terpisah. Ini sangat berguna jika developer ingin membuat mobile apps atau single-page application (SPA) yang membutuhkan sebuah fitur authentication seperti login atau daftar akun baru.Simplify: Mengelola login, register, dan reset password jadi lebih mudah. Breeze menyediakan semua logika dan tampilan yang diperlukan sehingga developer tidak perlu memulai dari awal. Contoh Projek yang Bisa Dibuat dengan Laravel Breeze Dengan Laravel Breeze, kamu bisa membuat berbagai jenis proyek, seperti: Sistem Manajemen Konten (CMS): Untuk mengelola konten website seperti artikel dan berita. Dengan Breeze, kamu bisa dengan mudah mengelola user yang bisa menambah, mengedit, atau menghapus data produk.Aplikasi eCommerce Sederhana: Dengan fitur login dan register untuk pengguna, serta manajemen produk. Kamu bisa membuat toko online yang memungkinkan pengguna untuk mendaftar, login, dan membeli produk.Platform Blogging: Dimana penulis bisa membuat akun dan memposting artikel. Breeze mempermudah pengelolaan user dan postingan blog, sehingga kamu bisa fokus pada konten.Portal Lowongan Kerja: Dengan fitur registrasi pengguna dan posting lowongan pekerjaan. Pengguna bisa membuat akun, login, dan mencari atau memposting lowongan pekerjaan. Dengan memahami manfaat dan kemudahan yang ditawarkan oleh Laravel Breeze, kamu bisa lebih mudah memulai dan mengembangkan proyek website yang modern. Jika ingin mempelajari lebih lanjut maka segera buka website buildwithangga dan pelajari ratusan kelas gratis tersedia untuk memulai karir sebagai programmer website.

Kelas Perkenalan Laravel 11 dan Spatie Role Permissions di BuildWithAngga

Perkenalan Laravel 11 dan Spatie Role Permissions

Dalam era digital yang serba cepat ini, kebutuhan untuk memiliki sebuah website yang cepat dan juga aman menjadi aspek yang sangat penting. Banyak perusahaan yang sedang berlomba-lomba mengejar trend terbaru untuk tetap relevan dan kompetitif dalam menjangkau lebih banyak customer terbaru. Salah satu framework php yang banyak digunakan untuk membangun aplikasi web yang cepat dan aman adalah Laravel versi 11. Apa Itu framework Laravel? Laravel adalah framework PHP yang dirancang untuk pengembangan aplikasi web dengan sintaks yang ekspresif dan elegan. Laravel membuat pengembangan website menjadi menyenangkan bagi web developer dengan menyederhanakan tugas-tugas utama yang dilakukan dalam sebagian besar proyek web, seperti autentikasi, routing, sesi, dan juga caching. Laravel cocok banget dipake untuk perusahaan kecil yang sedang mencoba membangun bisnis online seperti software as a service yang terintegrasi dengan payment gateway midtrans atau xendit (cukup popular di indonesia). Kapan Menggunakan Laravel? Laravel sangat cocok digunakan ketika Anda membutuhkan pengembangan aplikasi yang cepat dan efisien. Dengan berbagai fitur bawaan dan ekosistem yang kaya, Laravel memudahkan pengembang untuk membuat aplikasi web yang mudah diperbesar (scalable) dan terstruktur dengan baik sehingga mudah di-maintenance. Kita dapat menggunakan Laravel untuk berbagai jenis proyek, mulai dari aplikasi kecil hingga aplikasi bisnis yang kompleks. Ide projek menarik yang bisa dibangun dengan laravel Jika kamu ingin coba belajar laravel maka kami memiliki beberapa rekomendasi projek yang cocok digunakan sebagai bahan latihan dan portfolio pertama kita sebagai berikut: website ujian online (CBT)website jual beli mobil bekaswebsite apotek onlinewebsite booking cuci mobilwebsite jual beli barang bekas Seringnya Projek Membutuhkan User Roles Dalam pengembangan aplikasi website yang modern, sering kali ada kebutuhan untuk mengelola hak akses pengguna yang berbeda-beda. Misalnya, dalam aplikasi e-commerce, Anda mungkin memiliki pengguna dengan peran sebagai admin, penjual, dan pembeli. Masing-masing peran ini memiliki hak akses yang berbeda untuk berbagai fitur dalam aplikasi. Contoh User Roles Sederhana Beberapa contoh user roles yang umum dalam sebuah aplikasi antara lain: Admin: Memiliki akses penuh untuk mengelola seluruh konten dan pengguna dalam aplikasi.Editor: Memiliki akses untuk mengedit dan mempublikasikan konten.User: Memiliki akses terbatas sesuai dengan fitur yang diizinkan untuk pengguna biasa.Guest: Pengguna yang belum terdaftar, biasanya hanya memiliki akses untuk melihat konten tertentu. Membuat User Roles dengan Spatie Untuk mengelola user roles dengan lebih cepat dan efisien, kita bisa menggunakan package Spatie Laravel Permission. Package ini menyediakan cara yang mudah dan cepat untuk mengelola peran dan izin pengguna dalam aplikasi Laravel. Oh ya package spatie juga sudah dipercaya oleh jutaan developer di seluruh dunia untuk projek kecil hingga besar. Membuat Seeder Permission Langkah pertama adalah membuat seeder untuk menyimpan role dan permissions. Seeder ini akan memasukkan data permissions ke dalam database secara otomatis saat dijalankan. Berikut adalah contoh seeder untuk permissions: <?php namespace Database\\Seeders; use App\\Models\\User; use Illuminate\\Database\\Console\\Seeds\\WithoutModelEvents; use Illuminate\\Database\\Seeder; use Spatie\\Permission\\Models\\Permission; use Spatie\\Permission\\Models\\Role; class RolePermissionSeeder extends Seeder { /** * Run the database seeds. */ public function run(): void { // $permissions = [ 'manage countries', 'manage cities', 'manage hotels', 'manage hotel bookings', 'checkout hotels', 'view hotel bookings', ]; foreach($permissions as $perm){ Permission::firstOrCreate([ 'name' => $perm ]); } $customerRole = Role::firstOrCreate([ 'name' => 'customer' ]); $customerPermissions = [ 'checkout hotels', 'view hotel bookings', ]; $customerRole->syncPermissions($customerPermissions); $superAdminRole = Role::firstOrCreate([ 'name' => 'super_admin' ]); $user = User::create([ 'name' => 'Super Admin', 'email' => '[email protected]', 'avatar' => 'images/dummyavatar.png', 'password' => bcrypt('123qwe123') ]); $user->assignRole($superAdminRole); } } Role Berhasil Dibuat pada database Setelah seeder dijalankan, role dan permissions akan otomatis dibuat dalam tabel database proyek Anda. Berikut contoh penggunaan seeder dalam Laravel: php artisan db:seed --class=RolePermissionSeeder Aktifkan Fitur Gate untuk Super Admin Untuk memastikan bahwa super admin memiliki akses ke semua fitur, kita dapat mengaktifkan fitur gate dalam Laravel. Berikut adalah contoh implementasi gate untuk super admin: use Illuminate\\Support\\Facades\\Gate; Gate::before(function ($user, $ability) { return $user->hasRole('super_admin') ? true : null; }); Dengan mengaktifkan gate ini, pengguna dengan peran super_admin akan memiliki akses penuh ke semua fitur dalam web/aplikasi (routes). Kesimpulan Laravel 11 dengan Spatie Role Permissions menyediakan cara yang cepat dan efisien untuk mengelola hak akses pengguna dalam aplikasi web. Dengan fitur-fitur yang ada, Anda dapat dengan mudah membuat dan mengelola user roles, serta memastikan aplikasi Anda tetap cepat dan aman. Menggunakan package seperti Spatie Laravel Permission tidak hanya mempercepat proses pengembangan, tetapi juga memberikan fleksibilitas yang lebih besar dalam mengelola hak akses pengguna. Jika kamu ingin belajar lebih banyak materi laravel 11 dan spatie maka silahkan cek kelas-kelas terbaru kami pada website BuildWithAngga, sampai jumpa di kelas!

Kelas Menjelajahi Dunia Docker: Memudahkan Pengembangan dan Penerapan Software di BuildWithAngga

Menjelajahi Dunia Docker: Memudahkan Pengembangan dan Penerapan Software

Haloo sobat ngodingg Semoga kalian sehat selaluu Docker telah menjadi platform populer dalam dunia pengembangan software. Platform ini memungkinkan pengembang untuk mengemas aplikasi dan dependensi mereka ke dalam container yang ringan dan portabel. Container ini memungkinkan aplikasi untuk dijalankan dengan konsisten di berbagai lingkungan, meningkatkan efisiensi dan fleksibilitas dalam pengembangan dan penerapan software. Apa itu Docker? Docker merupakan platform open-source yang menyediakan alat untuk membuat, menyebarkan, dan menjalankan aplikasi dalam container. Container ini seperti kotak terisolasi yang berisi semua yang diperlukan untuk menjalankan aplikasi, termasuk kode, runtime, pustaka sistem, pengaturan, dan dependensi lainnya. Keuntungan utama Docker adalah kemudahan dalam mengelola container. Pengelolaan dapat dilakukan dengan bantuan Docker API atau command line interface (CLI). Jika Kamu membutuhkan beberapa container, Kamu dapat mengelolanya dengan Docker compose tool. Arsitektur Docker Selain container, arsitektur Docker terdiri dari empat komponen utama: Client Docker: Komponen utama untuk membuat, mengelola, dan menjalankan aplikasi dalam container. Client Docker adalah metode utama untuk mengontrol server Docker melalui CLI seperti Command Prompt atau Terminal . Server Docker: Dikenal juga sebagai daemon Docker. Server Docker menunggu permintaan REST API yang dibuat oleh client Docker dan mengelola image dan container. Image Docker: Komponen yang memerintahkan server Docker terkait persyaratan tentang cara container Docker dibuat. Image dapat didapat dari situs web seperti Docker Hub. Kamu juga dapat membuat image custom dengan membuat Dockerfile dan meneruskannya ke server. Perlu diingat bahwa Docker tidak menghapus image yang tidak digunakan, jadi Anda harus menghapus data image sendiri agar tidak menumpuk. Registry Docker: Aplikasi server open-source yang digunakan untuk meng-hosting dan mendistribusikan image Docker. Registry sangat berguna untuk menyimpan image secara lokal dan mengelolanya sepenuhnya. Atau, Kamu dapat mengakses Docker Hub yang tadi disebutkan, yang merupakan repositori image Docker terbesar di dunia. Komponen-komponen Docker Komponen docker utama adalah: 1. Docker container Docker container merupakan tempat untuk menjalankan dan mengemas aplikasi. Tempat ini termasuk runtime, kode, tools dan pengaturan. Container hanya dapat mengakses source yang sudah ditentukan pada docker image. 2. Docker image Docker image merupakan kumpulan file untuk menunjang sebuah aplikasi. Docker image termasuk komponen untuk menginstruksikan docker server tentang syarat cara container docker dibuat. 3. Docker daemon Docker daemon merupakan tempat untuk mengelola docker image, network, container dan volume. Tempat ini menyediakan command-line-interface (CLI) sisi client supaya user bisa berinteraksi dengan daemon melalui request dari Docker API yang nantinya diproses oleh sistem. 4. Docker Engine RestAPI Docker Engine RestAPI merupakan komponen yang dapat diakses client dari HTTP agar bisa berinteraksi dengan docker daemon. 5. Docker registry Docker registry merupakan tempat menyimpan docker image yang nantinya memberikan output sesuai perintah yang diinginkan. 6. Docker host Docker host merupakan komponen yang memiliki tugas untuk menerima perintah dari docker client serta menyediakan environment untuk menjalankan suatu aplikasi. 7. Docker hub Docker hub merupakan layanan yang bisa dimanfaatkan untuk sejumlah container image. Keuntungan menggunakan Docker Portabilitas: Container Docker dapat dijalankan di berbagai platform, seperti Linux, Windows, dan macOS, tanpa memerlukan modifikasi pada aplikasi.Isolasi: Container berjalan secara terisolasi satu sama lain, sehingga meningkatkan keamanan dan stabilitas.Efisiensi: Container menggunakan sumber daya sistem secara lebih efisien dibandingkan dengan mesin virtual.Kemudahan penggunaan: Docker menyediakan alat yang mudah digunakan untuk membangun, mengelola, dan menyebarkan container. Contoh penggunaan Docker Mengembangkan aplikasi: Docker dapat digunakan untuk membuat lingkungan pengembangan yang konsisten bagi para pengembang.Menyebarkan aplikasi: Container Docker dapat digunakan untuk menyebarkan aplikasi ke berbagai server dengan mudah dan cepat.Menjalankan microservices: Docker sangat cocok untuk menjalankan microservices, yang merupakan arsitektur aplikasi yang membagi aplikasi menjadi layanan-layanan kecil dan independent.Continuous integration dan continuous delivery (CI/CD): Docker dapat digunakan untuk mengotomatisasi proses CI/CD, yang memungkinkan tim pengembang untuk lebih cepat dan efisien dalam mengembangkan dan menyebarkan aplikasi. Kesimpulan: Docker adalah platform yang kuat dan serbaguna yang dapat digunakan untuk berbagai macam tugas dalam pengembangan dan penerapan software. Dengan mempelajari Docker, kamu dapat meningkatkan efisiensi, fleksibilitas, dan portabilitas aplikasi kamu. Jadi buat kawan-kawan yang mau mempelajari tentang python dari dasar kalian bisa mengikuti kelasnya di BuildWithAngga yaitu Kelas Online Gratis Python Pemrograman Dasar Kalian bisa akses kelasnya secara gratiss lohhh. Oke sekian penjelasan tentang Menjelajahi Dunia Docker: Memudahkan Pengembangan dan Penerapan Software , kalian bisa kembali untuk menguliknya sendiri tentunya. Semoga bermanfaat buat kalian. See you guysss !

Kelas Alur dan Langkah-Langkah Belajar Laravel untuk Pemula di BuildWithAngga

Alur dan Langkah-Langkah Belajar Laravel untuk Pemula

Hai Sobat BWA!🙌 Saat ini, banyak orang berlomba-lomba untuk mempelajari coding karena perkembangan teknologi di zaman yang modern ini semakin tinggi. Selain itu, banyak orang ingin menekuni coding karena gaji yang cukup menjanjikan jika bekerja dalam dunia IT. Salah satu langkah yang harus diambil sebelum memulai karir dalam dunia IT adalah mengetahui roadmap atau alur belajar yang tepat agar bisa menjadi developer yang kompeten. Kali ini, kita akan membahas mengenai roadmap belajar Laravel untuk pemula agar kalian dapat mengetahui langkah-langkah yang tepat untuk mempelajari framework PHP satu ini. Simak artikel berikut sampai habis ya! 1. Mengenali Dasar-Dasar PHP Seperti yang kita tahu, Laravel merupakan salah satu framework yang menggunakan PHP sebagai bahasa pemrograman utamanya. Maka dari itu, sebelum memulai belajar Laravel, kalian harus memahami dasar-dasar PHP termasuk sintaks, flow control (if, else, switch), loop (for, foreach, while), dan dasar-dasar OOP (Object Oriented Programming). 2. Memahami Dasar-Dasar Web Development Setelah memahami bahasa pemrograman PHP, selanjutnya penting juga untuk memahami dasar-dasar web development seperti HTML, CSS, dan JavaScript. Kalian juga perlu memahami mengenai konsep dasar HTTP termasuk request dan response karena hal tersebut akan sangat membantu dalam memahami bagaimana Laravel bekerja. Selanjutnya, perlu juga untuk mengenali penggunaan database dan SQL untuk pengelolaan data secara efektif dalam aplikasi website yang dikembangkan. 3. Mulai Memahami Laravel Jika kalian sudah memahami PHP dan dasar-dasar web development yang telah disebutkan di atas, kalian bisa mulai mencari tahu mengenai framework Laravel dan mengapa kalian perlu menggunakan Laravel. Baca “Mengenal Laravel: Framework PHP Terpopular untuk Website Development” Kalian bisa mulai membaca dokumentasi resmi Laravel untuk pengantar dasar dan meng-install Laravel serta mempelajari struktur dasar sebuah proyek yang menggunakan Laravel. 4. Mempelajari Konsep Routing dan Controller Mempelajari routing dan controller di Laravel merupakan langkah penting dalam memahami bagaimana framework ini bekerja dalam menangani permintaan HTTP. Routing adalah proses menentukan bagaimana sebuah aplikasi Laravel menanggapi permintaan URL tertentu. Route mendefinisikan URL dan menentukan tindakan yang harus dilakukan ketika URL tersebut diakses. Sedangkan controller berfungsi sebagai penghubung antara model (data) dan view (tampilan). 5. Views dan Blade Templating Blade adalah template engine yang disediakan Laravel. Dengan mempelajari Blade, kalian bisa dengan mudah membuat tampilan yang dinamis dan terstruktur dalam aplikasi Laravel. Banyak keuntungan dan fitur utama dari Blade yang bisa dimanfaatkan di antaranya sintaks yang sederhana dan mudah dibaca, inheritance templating, penyusunan komponen UI, dan lainnya. 6. Dasar-Dasar Database Selanjutnya, mulailah untuk belajar mengenai database seperti Database Migrations dan bagaimana cara membuatnya. Kalian juga perlu memahami mengenai apa itu Eloquent ORM agar nantinya dapat mengelola dan berinteraksi dengan database secara efisien. Setelah memahami mengenai database dan migration, pahami bagaimana cara membuat model pada Laravel dan menggunakannya untuk operasi CRUD (Create, Read, Update, and Delete). 7. Mulai Membuat Project Setelah memahami semua dasar-dasar Laravel, lanjutkan untuk membuat project sederhana menggunakan Laravel. Tujuan dari membuat project ini agar kalian dapat belajar secara langsung mengenai fitur-fitur yang tersedia dalam Laravel dan menerapkannya. Cara Membuat Project Menggunakan Laravel Pastikan kalian sudah meng-install PHP dan composer sebelum membuat project.Buka command prompt dan jalankan perintah berikut untuk membuat project composer create-project laravel/laravel belajar_laravel Tunggu hingga proses instalasi selesai dan voila! Kalian berhasil membuat project Laravel dan mulailah untuk mengeksplor struktur framework ini, mulai dari migration, controller, route, blade, authentication, dan masih banyak lagiJika kalian membutuhkan dokumentasi atau tutorial mengenai Laravel, kalian bisa membacanya melalui situs website resmi Laravel di sini. Kesimpulan Untuk belajar Laravel bagi pemula, mulailah dengan memahami dasar-dasar PHP dan web development termasuk HTML, CSS, dan JavaScript. Kemudian, mulai memahami Laravel, termasuk konsep routing dan controller, views dan blade templating, serta dasar-dasar database. Setelah memahami semua dasar-dasar Laravel, mulailah membuat project sederhana menggunakan Laravel untuk belajar secara langsung mengenai fitur-fitur yang tersedia dalam Laravel dan menerapkannya. Semoga artikel ini dapat bermanfaat ya! Dan bagi kalian yang tertarik untuk mempelajari lebih lanjut tentang Laravel, kalian bisa mempelajarinya secara gratis melalui BuildWithAngga loh! Jangan lupa kepoin kelas-kelasnya ya! Sampai jumpa di artikel selanjutnya🙌 PHP Laravel Web DevelopmentKelas Online Gratis Eloquent ORM Laravel