Sistem editor drag & drop untuk membuat halaman bio link yang keren dan customizable.
- Drag & Drop Editor: Susun ulang elemen dengan mudah
- Modal Edit: Edit setiap elemen dengan modal yang user-friendly
- Real-time Preview: Lihat perubahan secara real-time
- Responsive Design: Bekerja dengan baik di desktop dan mobile
- JSON Storage: Data tersimpan dalam format JSON yang terstruktur
Sistem menyimpan data dalam format JSON dengan struktur berikut:
{
"profil_pengguna": {
"username": "Nama Pengguna",
"deskripsi": "Deskripsi singkat tentang pengguna",
"foto_profil": "path/to/image.jpg",
"updated_at": "2024-01-01T00:00:00.000Z"
}
}{
"grid_produk": [
{
"foto_produk": "path/to/product1.jpg",
"link_produk": "https://example.com/product1",
"harga": "Rp 100.000"
},
{
"foto_produk": "path/to/product2.jpg",
"link_produk": "https://example.com/product2",
"harga": "Rp 150.000"
}
]
}{
"tombol_link": [
{
"nama_link": "YouTube",
"link_tombol": "https://youtube.com/@username"
},
{
"nama_link": "TikTok",
"link_tombol": "https://tiktok.com/@username"
}
]
}{
"youtube_embeded": {
"header_youtube": "Video Tutorial Terbaru",
"deskripsi_header": "Tonton video tutorial terbaru kami",
"embeded_youtube": [
"<iframe src='...'></iframe>",
"<iframe src='...'></iframe>"
]
}
}{
"sosial_media": [
{
"platform": "YouTube",
"link": "https://youtube.com/@username",
"active": true
},
{
"platform": "Instagram",
"link": "https://instagram.com/@username",
"active": true
}
]
}{
"portfolio_project": [
{
"gambar_project": "path/to/project1.jpg",
"judul_project": "E-Commerce Platform",
"deskripsi_project": "Website toko online dengan fitur lengkap",
"link_project": "https://example.com/project1"
}
]
}{
"gambar_thumbnail": {
"gambar_thumbnail": "path/to/thumbnail.jpg"
}
}{
"spotify_embed": {
"embeded_spotify": [
"<iframe src='...'></iframe>",
"<iframe src='...'></iframe>"
]
}
}{
"order": [
"profil_pengguna",
"grid_produk",
"tombol_link",
"youtube_embeded",
"sosial_media",
"portfolio_project",
"gambar_thumbnail",
"spotify_embed"
],
"hidden": [],
"timestamp": "2024-01-01T00:00:00.000Z",
"profil_pengguna": { ... },
"grid_produk": [ ... ],
"tombol_link": [ ... ],
"youtube_embeded": { ... },
"sosial_media": [ ... ],
"portfolio_project": [ ... ],
"gambar_thumbnail": { ... },
"spotify_embed": { ... }
}POST /store-layout- Simpan/update layoutGET /get-layout- Ambil layout yang tersimpan
POST /update-profile- Update profil penggunaPOST /update-grid-produk- Update grid produkPOST /update-tombol-link- Update tombol linkPOST /update-youtube-embed- Update YouTube embedPOST /update-sosial-media- Update sosial mediaPOST /update-portfolio-project- Update portfolio projectPOST /update-gambar-thumbnail- Update gambar thumbnailPOST /update-spotify-embed- Update Spotify embed
- Akses
/editorsetelah login - Editor akan menampilkan sidebar dengan daftar elemen
- Klik tombol edit (ikon pensil) pada elemen yang ingin diedit
- Modal akan terbuka dengan form yang sesuai
- Isi data yang diperlukan
- Klik "Simpan" untuk menyimpan perubahan
- Gunakan handle drag (ikon grip) untuk memindahkan elemen
- Elemen akan otomatis tersusun ulang
- Klik tombol mata untuk menyembunyikan/menampilkan elemen
- Elemen yang disembunyikan tidak akan muncul di preview
- Klik tombol "Simpan Layout" untuk menyimpan ke server
- Layout akan tersimpan dalam database
Sistem mendukung upload file untuk:
- Foto profil:
profiles/folder - Foto produk:
products/folder - Gambar project:
portfolio/folder - Gambar thumbnail:
thumbnails/folder
Format yang didukung: JPG, PNG, GIF Ukuran maksimal: 2MB
CREATE TABLE links (
id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user_id BIGINT UNSIGNED NOT NULL,
data_link JSON NOT NULL,
created_at TIMESTAMP NULL,
updated_at TIMESTAMP NULL,
FOREIGN KEY (user_id) REFERENCES users(id)
);- Laravel 10+
- PHP 8.1+
- MySQL 8.0+ (dengan JSON support)
- Tailwind CSS
- Font Awesome 6
- Clone repository
- Install dependencies:
composer install - Copy
.env.exampleke.env - Setup database
- Run migrations:
php artisan migrate - Run seeder:
php artisan db:seed - Start server:
php artisan serve
- Fork repository
- Create feature branch
- Commit changes
- Push to branch
- Create Pull Request
MIT License