Skip to content

This is a project for Laravel developer to build code base laravel & livewire functions.

Notifications You must be signed in to change notification settings

sacodeofficial/laravel-livewire-plyground

Repository files navigation

πŸ’‘ Laravel Playground

Project Overview

Project ini dibuat untuk mempelajari dan mendalami pengembangan aplikasi web menggunakan dengan konsep TALLSTACK. Dalam satu repository ini terdapat 2 pola pengembangan, yaitu :

  • Pengembangan menggunakan Laravel (Laravel, Bootstrap 5.3)
  • Pengembangan menggunakan TALLSTACK (Tailwind, Alpine.js, Laravel dan Livewire)

Project Screenshots

Table country

Edit country-edit

Show Modal modal

Delete Modal modal-delete

User story

Biasa ditulis oleh project manager yang tulis tapi bisa juga ditulis oleh developer

Aturan dan penjelasan membuat story Point oleh developer

  1. estimasi dalam beberapa menit
  2. estimasi dalam beberapa jam
  3. estimasi dalam 1 hari
  4. estimasi dalam beberapa hari

πŸ“™ Installation

Cara mendownload project melalui GitHub ke local repository.

Download project

git clone https://github.com/janzenfaidiban/laravel-livewire-plygrounds.git

Composer Install

composer install

Setup .env

Copy file .env.example dan modifikasi nama database

cp .env.example .env

Membuat key baru

php artisan key:generate

Do the migration & seeder

php artisan migrate:fresh --seed

Install Laravel Debugbar

Source & documentations https://github.com/barryvdh/laravel-debugbar

Installation using composer

composer require barryvdh/laravel-debugbar --dev

🎯 TODOS

Daftar setiap tugas yang harus dilakukan dan informasi folder / file yang perlu diakses oleh para pengembang.

πŸ“ Models

Model untuk mengolah fungsi data pada project laravel

.
β”œβ”€β”€ app
β”‚   β”œβ”€β”€ Models
|   |    β”œβ”€β”€ City.php βœ…
|   |    β”œβ”€β”€ Country.php βœ…
|   |    β”œβ”€β”€ Shop.php βœ…
|   |    β”œβ”€β”€ User.php βœ…
β”‚   |    └── ...

πŸ“ Migration

File migrasi untuk membuat table pada database

.
β”œβ”€β”€ database
β”‚   β”œβ”€β”€ migrations
|   |    β”œβ”€β”€ 2014_10_12_000000_create_users_table.php βœ…
|   |    β”œβ”€β”€ 22024_03_17_025921_create_countries_table.php βœ…
|   |    β”œβ”€β”€ 2024_03_17_031854_create_cities_table.php βœ…
|   |    β”œβ”€β”€ 2024_03_17_032420_create_shops_table.php βœ…
β”‚   |    └── ...
β”‚   β”œβ”€β”€ seeders
|   |    β”œβ”€β”€ CountrySeeder.php βœ…
|   |    β”œβ”€β”€ CitySeeder.php βœ…
|   |    β”œβ”€β”€ ShopSeeder.php βœ…
|   |    β”œβ”€β”€ DatabaseSeeder.php βœ…
β”‚   |    └── ...

⭐ LARAVEL

πŸ“ Controllers

File controller untuk project laravel

.
β”œβ”€β”€ app
|   β”œβ”€β”€ Http
|   |   β”œβ”€β”€ Controllers
|   |   |   β”œβ”€β”€ CountryController.php⏳
|   |   |   β”œβ”€β”€ CityController.php⏳ 
|   |   |   β”œβ”€β”€ ShopController.php⏳
β”‚   |   |   └── ...

πŸ“ Views

Halaman blade untuk project laravel

.
β”œβ”€β”€ resources
|   β”œβ”€β”€ views
|   |   β”œβ”€β”€ layouts
|   |   |   β”œβ”€β”€ app.blade.php βœ… 
|   |   β”œβ”€β”€ country
|   |   |   β”œβ”€β”€ index.blade.phpβœ… 
|   |   |   β”œβ”€β”€ show.blade.phpβœ… 
|   |   |   β”œβ”€β”€ create.blade.phpβœ… 
|   |   |   β”œβ”€β”€ edit.blade.phpβœ…
β”‚   |   |   └── ...
|   |   β”œβ”€β”€ city
|   |   |   β”œβ”€β”€ index.blade.php βœ… 
|   |   |   β”œβ”€β”€ create.blade.php βœ… 
|   |   |   β”œβ”€β”€ show.blade.php βœ… 
|   |   |   β”œβ”€β”€ edit.blade.php βœ… 
β”‚   |   |   └── ...
|   |   β”œβ”€β”€ shop
|   |   |   β”œβ”€β”€ index.blade.php βœ… 
|   |   |   β”œβ”€β”€ create.blade.php βœ… 
|   |   |   β”œβ”€β”€ show.blade.php βœ… 
|   |   |   β”œβ”€β”€ edit.blade.php βœ… 
β”‚   |   |   └── ...

πŸ“ Routes

File & folder routes untuk project laravel

.
β”œβ”€β”€ routes
|   β”œβ”€β”€ web.php
|   β”œβ”€β”€ laravel.php βœ…
|   β”œβ”€β”€ laravel
|   |   β”œβ”€β”€ country.php βœ…
|   |   β”œβ”€β”€ city.php βœ…
|   |   β”œβ”€β”€ shop.php βœ…
β”‚   |   └── ...

⭐ LIVEWIRE

πŸ“™ Installation

Menginstall NPM packages

npm install

Menjalankan development project

npm run dev

Apabila terjadi error pada saat menjalankan npm run dev, bisa dikarenakan oleh beberapa hal berikut :

  • sistem operasi yang digunakan oleh para developer berbeda, sehingga packages yang terinstal juga berbeda. Yang perlu dilakukan adalah menghapus folder node_modules dan file package-lock.json.
  • Jalankan kembali perintah npm install
  • Jalankan juga perintah php artisan optimize:clear
  • Setelah itu coba lagi jalankan npm run dev

πŸ“ Directories

Folder dan file yang digunakan untuk project livewire

.
β”œβ”€β”€ app
β”‚   β”œβ”€β”€ Livewire
|   |    β”œβ”€β”€ Country βŒ›
|   |    |   β”œβ”€β”€ Index.php βœ…
β”‚   |    |   └── From.php βœ…
|   |    |   └── CountryRecord.phpβœ…
|   |    β”œβ”€β”€ City βŒ›
|   |    |   └── CityRecord.phpβœ…
|   |    |   β”œβ”€β”€ form.php βœ…
|   |    |   └── Index.php βœ…
|   |    β”œβ”€β”€ Shop βŒ›
|   |    |   β”œβ”€β”€ Index.php βœ…
β”‚   |    |   └── From.php βœ…
|   |    |   └── ShopRecord.phpβœ…
β”‚   └── ...
β”œβ”€β”€ rosources
β”‚   β”œβ”€β”€ views
β”‚   |   β”œβ”€β”€ components
|   |   |   β”œβ”€β”€ layouts βŒ›
|   |   |   |   β”œβ”€β”€ app.blade.php βŒ›
|   |   |   β”œβ”€β”€ alert.blade.php βœ…
|   |   |   β”œβ”€β”€ modalAlpine.blade.php βœ…
β”‚   |   β”œβ”€β”€ livewire
|   |   |   β”œβ”€β”€ city βŒ›
|   |   |   |   β”œβ”€β”€ city-record.blade.php βœ…
|   |   |   |   β”œβ”€β”€ form.blade.php βœ…
|   |   |   |   β”œβ”€β”€ index.blade.php βœ…
|   |   |   β”œβ”€β”€ country βŒ›
|   |   |   |   β”œβ”€β”€ form.blade.php βœ…
|   |   |   |   β”œβ”€β”€ index.blade.php βœ…
|   |   |   |   β”œβ”€β”€ shop-record.blade.php βœ…
|   |   |   β”œβ”€β”€ shop βŒ›
|   |   |   |   β”œβ”€β”€ form.blade.php βœ…
|   |   |   |   β”œβ”€β”€ index.blade.php βœ…
|   |   |   |   β”œβ”€β”€ shop-record.blade.php βœ…
β”‚   └── ...
β”œβ”€β”€ routes
|   β”œβ”€β”€ livewire.php βŒ›
└── README.md

πŸ“š GIT COMMANDS

Membuat branch baru di local

git checkout -m <branch-name>

atau

git switch -c <branch-name>

Verifikasi branch yang sudah dibuat dan branch yang ada di remote

git branch -a

Push branch baru dari local ke remote

git push origin <branch-name>

atau

git push --set-upstream origin <branch-name>

Menggabungkan perubahan dari branch main ke branch dev-name. Pindah dulu ke branch dev-name

git checkout dev-name

Gabungkan perubahan dari branch main menggunakan perintah merge

git merge main

Cara untuk menghapus branch

git branch --delete <branchname>

πŸ“š LEARNING RESOURCES

Dokumentasi Livewire

Cara instal livewire lihat di sini https://livewire.laravel.com/docs/installation

Install livewire

composer require livewire/livewire

Publikasi konfigurasi livewire gunakan perintah berikut

php artisan livewire:publish --config

Dokumentasi Tailwind CSS

Cara menginstal tailwind css, kunjungi di sini https://tailwindcss.com/docs/guides/laravel

npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p

Videos, articles, and urls from any other platforms you can mention bellow here.

Laravel Collective

Tutorial menggunakan Laravel Collective untuk menerapkan Form & HTML

Source : https://laravelcollective.com/docs/6.x/html

Menginstall package laravelcollective/html

composer require laravelcollective/html

Bootstrap Alerts

Menambahkan packaga bootstrap alert

composer require eelcol/laravel-bootstrap-alerts

Source : https://github.com/eelcol/laravel-bootstrap-alerts

Laravel Eloquent: Deeper Relationships with One Query

Tutorial video by Laravel Daily https://youtu.be/5s-_SnVl-1g?si=rz_TAErEmOtUR2JS

Perbedaan hasMany dan belongsToMany Eloquent Laravel

Tutorial untuk memahami pembuatan relasi pada project laravel https://medium.com/@barutahucoding/perbedaan-hasmany-dan-belongstomany-eloquent-laravel-6236238f243e

Daisy UI for Tailwind CSS

Learn from documentation https://daisyui.com/docs

Install daisyUI:

npm i -D daisyui@latest

Aturan / cara commit

Contoh menulis commit sesuai dengan status

Jika ada pesan atau info baru yang ditambahan atau juga perubahan terbaru di project UPDATE: ...

Jika ada error yang sudah diselesaikan atau jika ada error yang perlu dibantu oleh developer lain FIX : ...

Jika ada fitur baru yang ditambahkan FEAT : ...

About

This is a project for Laravel developer to build code base laravel & livewire functions.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages