Sabtu, 27 April 2024 07:00
7

Dalam era digital yang semakin berkembang, banyak orang mengandalkan media sosial dan platform berbagi konten untuk berinteraksi dengan orang lain dan mempromosikan konten mereka. Salah satu aspek penting dari berbagi konten di platform-platform ini adalah tampilan yang menarik dan informatif ketika konten tersebut dibagikan. Di sinilah peran Open Graph hadir sebagai standar protokol yang memungkinkan pengguna untuk mengontrol tampilan konten saat dibagikan di platform-platform tersebut.

Pengertian Open Graph

Open Graph adalah sebuah protokol yang dikembangkan oleh Facebook dengan tujuan untuk memungkinkan konten web memiliki tampilan yang konsisten dan menarik saat dibagikan di media sosial dan platform lainnya. Protokol ini mengharuskan pengguna mengintegrasikan beberapa tag HTML ke dalam kode sumber halaman web mereka sehingga platform-platform tersebut dapat memahami dan menampilkan informasi yang relevan ketika konten tersebut dibagikan.

Fungsi Open Graph

Fungsi utama Open Graph adalah memberikan kontrol kepada pengguna mengenai tampilan konten mereka saat dibagikan di media sosial. Dengan menggunakan Open Graph, pengguna dapat menentukan judul, deskripsi, gambar, dan informasi lainnya yang akan muncul saat konten tersebut dibagikan. Hal ini memungkinkan pengguna untuk membuat tampilan yang menarik dan informatif, yang dapat meningkatkan daya tarik dan keterlibatan pengguna saat melihat dan berinteraksi dengan konten tersebut.

Selain itu, Open Graph juga memungkinkan platform-platform sosial untuk memahami konten dengan lebih baik. Dengan menggunakan tag-tag Open Graph, platform dapat mengenali tipe konten (seperti artikel, produk, video, atau musik) dan mengambil informasi yang relevan untuk ditampilkan dalam tautan yang dibagikan. Misalnya, jika sebuah artikel dibagikan, platform sosial dapat menampilkan judul, gambar, dan deskripsi artikel tersebut secara otomatis.

Cara Penggunaan Open Graph

Berikut adalah beberapa langkah untuk menggunakan Open Graph dalam halaman web Anda:

Menambahkan Tag HTML

Untuk menggunakan Open Graph, Anda perlu menambahkan tag-tag Open Graph ke dalam kode sumber halaman web Anda. Tag-tag ini mencakup tag <meta> yang menyediakan informasi seperti judul, deskripsi, gambar, tipe konten, dan URL halaman.

Mengisi Informasi Relevan

Setelah menambahkan tag-tag Open Graph, Anda perlu mengisi informasi yang relevan untuk setiap tag. Pastikan untuk memberikan judul yang menarik, deskripsi yang singkat namun informatif, gambar yang menarik, dan URL halaman yang benar.

Validasi Open Graph

Setelah menambahkan tag-tag Open Graph, Anda dapat menggunakan alat Validasi Open Graph yang disediakan oleh Facebook. Alat ini akan memeriksa halaman web Anda dan memberikan umpan balik mengenai kesalahan atau masalah yang perlu diperbaiki.

Uji dan Bagikan Konten

Setelah tag-tag Open Graph ditambahkan dan divalidasi, Anda dapat menguji tampilan konten Anda saat dibagikan di platform-platform sosial. Bagikan konten Anda di media sosial dan periksa apakah tampilannya sesuai dengan yang Anda inginkan. Jika ada masalah, periksa kembali kode sumber halaman web Anda dan pastikan tag-tag Open Graph diatur dengan benar.

 ---

Meskipun Open Graph pertama kali dikembangkan oleh Facebook, protokol ini telah diterima secara luas oleh berbagai platform media sosial dan mesin pencari lainnya.

Meskipun tag-tag Open Graph awalnya dirancang untuk digunakan dengan Facebook, platform lain seperti Twitter, LinkedIn, Pinterest, dan banyak lagi sekarang juga mendukung penggunaan tag-tag Open Graph. Ini berarti bahwa konten yang menggunakan tag-tag Open Graph akan memiliki tampilan yang konsisten dan informatif ketika dibagikan di berbagai platform tersebut.

Selain itu, mesin pencari seperti Google juga mengambil manfaat dari tag-tag Open Graph untuk menampilkan tampilan yang lebih baik saat hasil pencarian mengandung tautan ke halaman web yang menggunakan tag-tag tersebut. Dengan menggunakan Open Graph, Anda dapat meningkatkan kemungkinan bahwa konten Anda akan muncul dengan tampilan yang menarik dan relevan di berbagai platform media sosial dan mesin pencari.

Dengan demikian, Open Graph adalah protokol yang berlaku secara luas dan dapat digunakan untuk meningkatkan tampilan dan keterlibatan konten Anda di berbagai platform media sosial dan mesin pencari.

Sabtu, 22 Juli 2023 15:48
360

PHP Calculate Percentages:

jika angka untuk menghitung presentase = 0 (NOL) dan total pembagi > 0 (lebih besar dari NOL) ini tidak akan menimbulkan masalah.

jika angka untuk menghitung presentase = 0 (NOL) dan total pembagi = 0 (NOL) saya dapat error seperti dibawah

PHP Warning: Division by zero in

Solusi: buat function untuk format presentase, fuction untuk menghitung presentase, dan fuction untuk menampilkan format presentase

function format_percentage($percentage_round, $precision_round = 2) {
    return round($percentage_round, $precision_round) . '%';
}
function calculate_percentage($number_round, $total_round) {
    // buat kondisi jika total pembagi = 0 (NOL).
    if ($total_round == 0) {
        return 0;
    }
    return ($number_round / $total_round) * 100;
}
function calculate_percentage_display($number_round, $total_round) {
    return format_percentage(calculate_percentage($number_round, $total_round));
}

bagaimana jika angka untuk menghitung presentase > (lebih besar) dari total pembagi.

print

echo '<br/>'.calculate_percentage_display(50, 250); // = 20%
echo '<br/>'.calculate_percentage_display(30, 1110); // = 2.7%
echo '<br/>'.calculate_percentage_display(0, 250); // = 0%
echo '<br/>'.calculate_percentage_display(0, 0); // = 0%
echo '<br/>'.calculate_percentage_display(250, 0); // = 0%
echo '<br/>'.calculate_percentage_display(250, 99); // = 252.53%

results

Selasa, 19 Juli 2022 17:45
206

Banyak sekali fitur baru yang keluar di ES2015 (ES6). Salah satu dari fitur yang keluar di ES6 adalah adanya tambahan let dan const, yang mana bisa digunakan untuk mendeklarasikan variabel. Pertanyaan nya adalah, apa yang membuat fitur tersebut berbeda dari var yang dulu sering kita gunakan?

Var

Sebelum kedatangan ES6, deklarasi var diatur. Ada masalah terkait variabel  var ini. Itulah kenapa perlu adanya pendeklarasian baru untuk variabel. Mari pahami lebih dulu apa itu  var sebelum lanjut membahas permasalahan tersebut.

Scope dari var

Pada dasarnya Scope adalah dimana variabel itu akan digunakan. Pendeklarasian var adalah secara global atau secara function/lokal.

Scope global terjadi jika variabel  var di deklarasikan diluar function. Ini artinya variabel yang di deklarasikan dengan  var diluar blok function dapat digunakan di seluruh tempat.

var menjadi  function Scope jika di delarasikan didalam function. Ini berarti var tersedia dan hanya dapat di akses didalam function tersebut.

Untuk memahami lebih jauh, lihat contoh dibawah ini.

    var greeter = "hey hi";
    
    function newFunction() {
        var hello = "hello";
    }

Disini, greeter adalah Scope global karena berada diluar function sementara hello adalah  function Scope. Jadi kita tidak bisa mengakses variabel hello diluar function. Jika seperti ini:

    var tester = "hey hi";
    
    function newFunction() {
        var hello = "hello";
    }
    console.log(hello); // error: hello is not defined

Kita akan mendapatkan error yang diakibatkan oleh hello karena tidak berada diluar function.

variabel var dapat di deklarasikan ulang dan diperbaharui

Ini berarti kita dapat melakukannya di Scope yang sama dan tidak akan eror.

    var greeter = "hey hi";
    var greeter = "say Hello instead";

dan ini juga:

    var greeter = "hey hi";
    greeter = "say Hello instead";

Hoisting var

Hoisting adalah mekanisme JavaScript dimana pendeklarasian variabel dan function naik ke atas Scope nya sebelum kode di eksekusi. Berarti jika kita melakukan ini:

    console.log (greeter);
    var greeter = "say hello"

dapat diartikan seperti ini:

    var greeter;
    console.log(greeter); // greeter is undefined
    greeter = "say hello"

Jadi variabel var di naikkan ke atas Scope nya dan diinisialisasi dengan nilai undefined.

Masalah dengan var

Ada kelemahan didalam var. Saya akan gunakan contoh berikut untuk menjelaskannya:

    var greeter = "hey hi";
    var times = 4;

    if (times > 3) {
        var greeter = "say Hello instead"; 
    }
    
    console.log(greeter) // "say Hello instead"

Jadi, jika times > 3 adalah benar, greeter berubah, ke "say Hello instead". Selagi ini bukan masalah jika kamu memang menginginkan greeter berubah, ini menjadi masalah jika kamu  tidak menyadari bahwa variabel greeter telah ditentukan sebelumnya.

Jika kamu menggunakan greeter di bagian kode mu yang lain, kamu mungkin akan terkejut dengan hasil yang akan kamu dapatkan. Ini akan menjadikan kode mu penuh bug. Inilah sebabnya  let dan const diperlukan.

Let

let sekarang lebih disukai untuk pendeklarasian variabe, datang dengan penyempurnaan terhadap variabel var.

let adalah scope blok

Blok adalah bagian dari kode yang dikelilingi oleh {}. Blok terdapat di  tanda kurung kurawal. Apapun yang berada didalam tanda kurung kurawal adalah blok.

Jadi variabel yang di deklarasikan didalam blok dengan let hanya tersedia untuk dipakai didalam blok tersebut. Saya akan menjelaskannya dengan contoh dibawah ini:

   let greeting = "say Hi";
   let times = 4;

   if (times > 3) {
        let hello = "say Hello instead";
        console.log(hello);// "say Hello instead"
    }
   console.log(hello) // hello is not defined

Kita dapat melihat jika kita menggunakan hello diluar blok nya (tanda kurung kurawal) itu menjadi error. Ini dikarenakan variabel let adalah Scope blok.

let dapat diperbaharui tapi tidak dapat di deklarasikan ulang.

Seperti layaknya var, variabel yang di deklarasikan dengan let dapat diperbaharui didalam scope nya. Tidak seperti var, variabel let tidak dapat di deklarasikan ulang didalam scope nya. Jadi ini akan berhasil:

    let greeting = "say Hi";
    greeting = "say Hello instead";

ini akan error:

    let greeting = "say Hi";
    let greeting = "say Hello instead"; // error: Identifier 'greeting' has already been declared

Namun, jika variabel yang sama dibuat di scope yang berbeda, tidak akan error:

    let greeting = "say Hi";
    if (true) {
        let greeting = "say Hello instead";
        console.log(greeting); // "say Hello instead"
    }
    console.log(greeting); // "say Hi"

Kenapa tidak error? Karena kedua variabel tersebut diperlakukan berbeda karena scope nya pun berbeda

Fakta ini membuat let menjadi pilihan yang lebih baik dibanding var. Jika menggunakan let, kamu tidak perlu pusing menggunakan nama untuk variabel yang digunakan sebelumnya karena variabel nya berada di scope yang berbeda. Dan juga, karena variabel tidak dapat di deklarasikan lebih dari sekali di scope nya.

Hoisting pada let

Seperti layaknya var, pendeklarasian let akan dinaikkan ke atas. Tidak seperti var akan terinisialisasi undefined, let  tidak akan terinisialisasi. Jadi jika kamu coba menggunakan variabel let sebelum di deklarasi, kamu akan mendapatkan Reference Error.

Const

Variabel yang di deklarasikan dengan const akan mempertahankan nilai nya. const hampir mirip dengan let.

const adalah scope blok

Seperti let, const hanya dapat di akses didalam blok dimana variabel tersebut di deklarasikan.

const tidak dapat diperbaharui atau di deklarasikan ulang

Ini berarti nilai variabel const tetap sama selagi didalam scope nya. Tidak dapat diperbaharui atau di deklarasikan ulang. Jadi jika kita mendeklarasikan variabel dengan const, kita dapat melakukan seperti ini:

    const greeting = "say Hi";
    greeting = "say Hello instead";// error: Assignment to constant variable. 

dan juga ini:

    const greeting = "say Hi";
    const greeting = "say Hello instead";// error: Identifier 'greeting' has already been declared

Maka dari itu, Semua deklarasi const, harus diinisialisasi di waktu pendeklarasian nya.

Aturan ini entah bagaimana berbeda ketika const di deklarasikan ke objek. Selagi objek const tidak dapat di perbaharui, properti nya dapat di perbaharui. Oleh karena itu, jika kita mendeklarasikan objek const seperti ini:

    const greeting = {
        message: "say Hi",
        times: 4
    }

kita tidak dapat melakukan ini:

    greeting = {
        words: "Hello",
        number: "five"
    } // error:  Assignment to constant variable.

tapi kita dapat melakukan ini:

    greeting.message = "say Hello instead";

Ini akan memperbaharui nilai dari greeting.message tanpa error.

Hoisting pada const

Seperti layaknya  let, const pendeklarasian nya akan dinaikkan ke atas tapi tidak akan diinisialisasi.

Berikut adalah perbedaannya Var, Let, dan Const

  • deklarasi var adalah scope global atau scope function sementara let dan const adalah  scope blok.
  • variabel var dapat diperbaharui dan dideklarasikan ulang didalam scope nya; variabel let dapat diperbaharui namun tidak dapat dideklarasikan ulang; variabel const juga tidak dapat diperbaharui maupun di deklarasikan ulang.
  • Semuanya akan dinaikkan ke atas scope nya. Namu variabel  var akan diinisialisasi dengan  undefined, let dan const tidak akan diinisialisasi
  • Sementara  var dan let bisa dideklarasikan tanpa diinisialisasi,const harus diinisialisasi terlebih dahulu pada saat pendeklarasian nya.

original article: Var, Let, and Const – What's the Difference?

Senin, 17 Juli 2023 09:41
281

Bismillah, everything will be OK

environment

  • Joomla! Version: Joomla! 3.10.12 Stable [Daraja]
  • Joomla! Platform Version: Joomla Platform 13.1.0 Stable [Curiosity]
  • Database Version: 10.6.14-MariaDB
  • PHP Version: 8.0.29
  • Web Server: Apache

function

  • Joomla: CRUD, User, ACL (access control list), templates front_end
  • rsForm: C of (CRUD), log
  • Community Builder: R and U of (CRUD), return, table report
  • Chartjs/Canvasjs: R of (CRUD), graph report

VPS Pro Managed (Virtual Private Server)

  • 4 Core CPU
  • 8 GB RAM
  • 160 GB Storage
  • CentOS 8 64bit
  • cPanel Admin Cloud License
  • Managed Antivirus & Malware Protection by Imunify360 Proactive
  • Daily Backup: Unmetered Storage 30 Days Retention (powered by Acronis Cyber Protect)

---

implementation project: https://bandungbarat.siminat.co.id | are you interested? Call me

Jumat, 11 November 2011 06:13
227

Joomla dapat menggunakan berbagai jenis database SQL dan berjalan diberbagai macam environments dengan table-prefixes yang berbeda. Untuk menyederhanakan code, rangakain query joomla dapat menghubungkan sejumlah method, satu demi satu dan setiap method mengembalikan object yang dapat mendukung method berikutnya.

koneksi database. untuk mendapatkan return object database, gunakan method getDbo JDatabase

$db = JFactory::getDbo();

query. untuk mendapatkan new instance dari class JDatabaseQuery gunakan method getQuery JDatabaseDriver

$db = JFactory::getDbo();
$query = $db->getQuery(true);

atau

$query = JFactory::getDbo()->getQuery(true);

JDatabaseDriver::getQuery mengambil argumen opsional, $new, bisa bernilai true atau false (defaultnya false).

return object user (yang login). jika tidak login Factory::getUser() return user id = 0 (nol)

$user = JFactory::getUser();
$user_id = $user->get('id');

untuk mendapatkan informasi user bisa dengan cara memangil function menggunakan id atau username (contoh user: id = 99)

$user = JFactory::getUser(99);
echo "<p>nama: {$user->name}, email: {$user->email}, username: {$user->username}</p>";
//nama: nama_user_99, email: email_user_99, username: username_user_99

 

Selasa, 11 Juli 2023 18:53
365

A prenup, or prenuptial agreement, is a contract between two people that's created before they get married. It typically lists each person's assets, debts, and outlines how they'll be handled should the couple divorce later on. Prenups can be a valuable financial tool.

Selasa, 11 Juli 2023 17:53
456

Ikatan Ners Kardiovaskular Indonesia (INKAVIN) adalah kelompok profesi perawat kardiovaskular Indonesia, berdiri sejak 14 Desember 1991. Menerapkan Nilai-nilai profesi keperawatan yaitu pengasuhan (Caring), pemeliharaan (nurturing), altruisme dan holistik.

  • Content Management System
  • Media Informasi
  • Pendaftaran Anggota Online
  • Data Base Anggota
  • e-KTA
  • Grafik Report
  • e-Library
  • Agenda System
  • e-Learning
  • Learning Management System (LMS)
  • e-Sertifikat
Kamis, 06 April 2023 03:50
386

How to solve "Error: MySQL shutdown unexpectedly"?

Error MySQL shutdown unexpectedly bisa disebabkan karena ada kesalahan dalam penggunaan port atau karena adanya aktivitas seperti menginstall aplikasi lain yang menyebabkan mysql XAMPP berhenti berjalan. Error MySQL shutdown unexpectedly terlihat saat kita coba menjalankan mysql di XAMPP, dengan pesan-pesan seperti di bawah ini.

12:57:02 AM  [mysql] 	Status change detected: stopped
12:57:02 AM  [mysql] 	Error: MySQL shutdown unexpectedly.
12:57:02 AM  [mysql] 	This may be due to a blocked port, missing dependencies, 
12:57:02 AM  [mysql] 	improper privileges, a crash, or a shutdown by another method.
12:57:02 AM  [mysql] 	Press the Logs button to view error logs and check
12:57:02 AM  [mysql] 	the Windows Event Viewer for more clues
12:57:02 AM  [mysql] 	If you need more help, copy and post this
12:57:02 AM  [mysql] 	entire log window on the forums

Bagaimana cara mengatasi jika terjadi error pada mysql XAMPP di windows; MySQL shutdown unexpectedly? berikut langkah-langkah yang harus dilakukan: (PERHATIAN!!! lakukan dengan sangat hati-hati, jika salah dalam menghapus folder atau file, ini akan mengakibatkan database anda musnah)

  1. Rename folder C:\xampp\mysql\data menjadi C:\xampp\mysql\data_old (nama folder bisa apa saja sesuai keinginan)
  2. Buat folder baru C:\xampp\mysql\data
  3. Copy semua folder dan file yang ada di folder mysql\backup ke dalam folder mysql\data
  4. Copy semua folder database yang ada di mysql\data_old ke mysql\data (skip untuk folders mysqlperformance_schema, dan phpmyadmin)
  5. copy dan replace file ibdata1 dari mysql\data_old ke folder mysql\data
  6. Start MySQL dari XAMPP control panel. Selesai

Tested: mysql sudah bisa digunakan lagi, tidak ada database yang hilang, tidak ada port yang diubah, tidak perlu install ulang XAMPP.

BERHASIL.... tapi kok project website saya jadi error

Warning: session_start(): Failed to read session data: user (path: C:\xampp\tmp) in C:\xampp\htdocs\project\nama_project\libraries\joomla\session\handler\native.php on line 260 Error: Failed to start application: Failed to start the session

Catatan: Jika sebelumnya anda setting mysql menggunakan password, maka silahkan setting kembali password mysql anda. Login menggunakan GUI phpMyadmin (user: root | passswor: skip and enter)

Rabu, 22 Februari 2023 02:12
353

Author: "Bang mau tanya, ini kenapa ya saia tidak bisa edit content dari front-end, content kontributor id 143..!!??"

Saia: "pesan errornya ss dong".

Author: "tuh bang gambarnya ada diatas". buruan benerin ya bang, ada typo itu"

Saia: "tolong kasih tau ke para kontributor ya, jika sudah selesai tulis atau edit conten untuk checked out, save&close ya.

Author: "siappp bang, mungkin mereka buru2 :)"

Saia: "login backend pakai akun administrator, pilih menu System - global check-in. checklist item table, lalu klik tombol "Check-in"

Author: "sudah bang, tapi ada error. ini pesan errornya." 1364 Field 'checked_out' doesn't have a default value

Saia: "waduh... punya akses akun untuk login ke cpanel database?"

Author: "punya bang, akunnya pemred saya"

Saia: "ok, silahkan login ke cpanel, kemudian buka phpmyadmin, 1) pilih dan klik table #__k2_items. 2) klik menu tab 'Struktur', 3) pilih dan klik fields 'check_out'."

Saia: "4) perhatikan pada value default, 5) ubah value 'No' menjadi 'NULL' 6) simpan. jika sudah silahkan kembali ke halaman administrator global check-in."

Author: "ok sudah bisa ini bang... tengyu."

Saia: "sama2.. :) ".

Selasa, 16 April 2019 04:23
247

Menampilkan intro text pada halaman menu dengan sigle-category cukup dengan cara mengatur parameter pada categori k2 dengan cara pilih "publish" atau "unpublish" kemudian tentukan introtext word limit sesuai dengan yang anda inginkan.

Bagaimana caranya membatasi introteks halaman menu jika menggunakan multi-category?

  • default: components/com_k2/templates/default/category_item.php
  • override: templates/nama_template_anda/html/com_k2/category_item.php

temukan baris code berikut:

<?php echo $this->item->introtext; ?>

replace sehingga menjadi:

<?php echo K2HelperUtilities::wordLimit($item->introtext, 20); ?>

*20 adalah nilai word limit, anda bisa memberikan berapa saja nilainya sesuai dengan kebutuhan.

ini juga dapat digunakan untuk beberapa halaman pada componentk2 dan module k2 yang tidak menyediakan fiture setting pada back-end administrator, seperti:

  • layout and view options for search dan date listings
  • layout and view options for tag listings
  • layout and view options for user (author) pages

<?php echo K2HelperUtilities::wordLimit($YOUR_VARIABLE, 20); ?>

Anda dapat mengimplementasikannya sendiri dengan menambahkan baris kode di atas pada pages default atau overrides templates sesuai kebutuhan yang diinginkan.

environment:

  • php versi 8.0.27
  • database v10.6.12-MariaDB 
  • joomla 3.10.11 Stable [Daraja]
  • component K2 v2.11
  • override templates inisialdotcom_v2.01
Kamis, 15 September 2022 15:22
293

case

  • upgrade php versi 7.4 ke php versi 8.0
  • Joomla 3.10.11 Stable [Daraja]
  • component plotalot versi 5.12.01 (the latest version is 6.26) upgrade dong (:

error

Fatal error: Array and string offset access syntax with curly braces is no longer supported in /home/siteDir/public_html/plugins/content/plotalot/plotalot.php on line 109

solusi

buka file dimaksud, go to baris #109 replace "curly braces" dengan menggunakan "square bracket" (lihat gambar contetn diatas)

$myArray[$index] equivalent to $myArray{$index}, sejak PHP 7.4 penggunaan sintaks "kurung kurawal" untuk mengakses elemen array dan offset string telah tergantikan dengan "square bracket", dukungan penggunaan sintaks "kurung kurawal" sepenuhnya akan dihapus di PHP 8.0

silahkan mulai dibiasakan jari jemarinya untuk mencolek si "square bracket" dan selamat begadang untuk kalian yang menggunakan component, module dan plugins yang sudah tidak disupport developernya.

Halaman 1 dari 13

intronesia

more content
  • saiful

    saiful maarif - inisial

  • achmad

    achmad inisial

  • farida

    farida - inisialdotcom

  • agus

    agus - inisialdotcom

  • wahyu

    wahyu - inisialdotcom

  • prio hans

    priohans- inisialdotcom

  • uman

    uman - inisialdotcom

  • imran

    imran - inisialdotcom

  • alif

    alif - inisialdotcom

  • akmal

    akmal - inisialdotcom

  • rian

    rian - inisialdotcom

  • sumber bahagia

    Sumber Bahagia - iinisialdotcom

inisialdotcom adalah penyedia jasa dan layanan yang bergerak di bidang teknologi informasi dan industri kreatif. kami menyediakan jasa dan layanan creative content management, pembuatan website, web design and development, logo and brand identity design, pembuatan video profile, sosial media management, networking, komputer multimedia, fleksibel server hosting, interior design and build.

"berawal dari sekedar hobby hingga mencetak prestasi" dari tahun 2008 kami berdiri dan bertekad untuk membangun bisnis yang memiliki daya saing untuk menciptakan produk-produk dan jasa layanan yang dapat memberikan manfaat bagi masyarakat secara luas. tidak hanya mengedapankan kualitas, kepuasan anda merupakan salah satu tujuan kami.

contact us

  • Jl. Melati 3, Cibening. Jatibening Baru, Pondok Gede, Bekasi 17412, Indonesia

studio

  • Jl. Manggis Dalam III No.16-A, Ciganjur, Jagakarsa, Jakarta Selatan, 16520

workshop

  • Jl. Kemang l. Gang Pemancingan ll, Jatibening Barru, Pondok Gede, Kota Bekasi, Jawa Barat, 17412

© 2008-2023 inisialdotcom