create-kontas
v1.2.2
Published
π Super fast MongoDB & GraphQL API generator
Downloads
1,477
Maintainers
Readme
π KONTAS - Koding Fantasi
KONTAS Stack adalah platform pengembangan modern dan super canggih yang dirancang khusus untuk mempercepat proses pengembangan API menggunakan MongoDB dan GraphQL. Dengan fitur-fitur yang inovatif, KONTAS membantu kamu menciptakan API kompleks hanya dalam hitungan detik! π
π Fitur Unggulan KONTAS
1οΈβ£ Kemudahan Setup
- Proses instalasi super cepat menggunakan satu perintah sederhana.
- Otomatis menghasilkan struktur proyek yang rapi dan terorganisasi.
2οΈβ£ CLI Canggih
- Membuat model, schema, dan seeder hanya dengan satu perintah.
- Mendukung framework seperti MongoDB + GraphQL dan segera hadir untuk Next.js serta Express REST.
3οΈβ£ GraphQL Otomatis
- CRUD otomatis untuk model yang dibuat.
- Dukungan penuh untuk GraphQL Playground.
4οΈβ£ Seeding yang Mudah
- Proses reset, tambah, atau hapus data database dengan perintah sederhana.
5οΈβ£ Modular dan Scalable
- Struktur proyek yang mudah diperluas untuk kebutuhan aplikasi besar.
- Dukungan middleware untuk pengelolaan tugas umum.
6οΈβ£ Dukungan Komunitas
- Aktif di platform seperti Discord dan GitHub untuk membantu semua developer.
π Panduan Lengkap Penggunaan KONTAS
Di bawah ini, kamu akan menemukan tutorial langkah demi langkah untuk memulai, mengatur, dan memaksimalkan potensi KONTAS. Kami juga menyertakan tips praktis, contoh nyata, dan troubleshooting agar pengalaman pengembanganmu semakin menyenangkan. π
1οΈβ£ Instalasi & Setup Proyek dengan KONTAS
Langkah pertama untuk memulai perjalanan bersama KONTAS adalah dengan membuat proyek baru. Dengan tiga cara berikut, kamu bisa langsung memulai tanpa kerumitan:
npx create-kontas my-app # Membuat folder baru dengan nama "my-app"
npx create-kontas . # Menggunakan folder saat ini untuk proyek baru
npx create-kontas # KONTAS akan meminta nama proyek
Setelah menjalankan salah satu perintah di atas, kamu akan diminta untuk:
Memilih framework:
- MongoDB + Apollo GraphQL (Siap digunakan!) π
- MongoDB + Next.js (Akan hadir Januari 2025) β³
- MongoDB + Express REST (Akan hadir Januari 2025) β³
Menentukan MongoDB URI: (Default: mongodb://localhost:27017)
Memberikan nama database: (Default: nama_project)
Langkah ini hanya membutuhkan beberapa detik, dan proyekmu akan langsung siap untuk dikembangkan. π
2οΈβ£ Menguasai CLI: Perintah Dasar KONTAS
KONTAS menyediakan CLI (Command Line Interface) yang powerful untuk mempermudah pekerjaanmu. Berikut format umum untuk menjalankan perintah CLI:
# Format dasar
npx kontas-cli <framework> <command>
# Contoh untuk framework MongoDB + Apollo GraphQL (mongajs):
# Tapi jika sudah create-kontas, maka tidak perlu lagi init
npx kontas-cli mongajs init
# Generate model
npx kontas-cli mongajs generate User name:string email:string
# Alias lebih pendek
npx kontas-cli mongajs g User name:string email:string
Keunggulan KONTAS CLI:
- Cepat: Semua otomatis, tidak perlu konfigurasi manual.
- Fleksibel: Mendukung berbagai framework dan skenario.
- Mudah: Cukup satu perintah untuk membuat model, schema, dan seeder.
3οΈβ£ Struktur Proyek yang Dibuat KONTAS
Setelah memulai proyek, KONTAS secara otomatis akan menghasilkan struktur direktori berikut:
my-app/
ββ models/ # Definisi model database
ββ schemas/ # Schema GraphQL
ββ config/ # Konfigurasi database
β ββ mongodb.json
ββ seeders/ # File seeder untuk database
ββ data/ # Contoh data dalam format JSON
ββ index.js # Entry point aplikasi
ββ package.json # Informasi dependencies
Kelebihan struktur ini:
- Modular dan terorganisasi.
- Mudah diperluas untuk proyek besar.
- Mendukung pengembangan berbasis tim.
4οΈβ£ Perintah Penting dalam Proyek
Berikut adalah beberapa perintah yang wajib kamu kuasai:
npm run dev # Menjalankan server dengan hot reload untuk pengembangan
npm run start # Menjalankan server dalam mode produksi
npm run seed # Reset database dan seed ulang data
npm run seed:up # Menambahkan data baru tanpa mereset database
npm run seed:down # Menghapus semua data dari database
5οΈβ£ Membuat Model & Schema
Fitur utama KONTAS adalah kemampuan untuk membuat model dan schema dengan satu perintah sederhana. Contohnya:
# Format lengkap
npx kontas-cli mongajs generate User name:string age:number
# Format pendek
npx kontas-cli mongajs g User name:string age:number
Setelah menjalankan perintah di atas, KONTAS akan secara otomatis menghasilkan file berikut:
models/user.js
schemas/user.js
seeders/userSeeder.js
data/user.json
- Update otomatis pada:
models/index.js
index.js
seeders/index.js
Jenis tipe data yang didukung:
string
-> Stringnumber
-> Floatboolean
-> Booleandate
-> Dateid
-> ID[type]
-> Array (contoh:[String]
)
6οΈβ£ Contoh Model Kompleks
Berikut adalah contoh pembuatan model dengan kompleksitas lebih tinggi:
# Model User dengan banyak field
npx kontas-cli mongajs g User name:string email:string age:number isActive:boolean
# Model Product dengan array
npx kontas-cli mongajs g Product name:string price:number tags:[string]
# Model Order dengan relasi
npx kontas-cli mongajs g Order userId:id productId:id status:string
7οΈβ£ Seeding Data ke Database
Proses seeding sangat mudah dengan KONTAS. Ikuti langkah berikut:
- Edit file JSON di folder
data/[model].json
. Contoh:
[
{
"_id": "000000000000000000000001",
"name": "Hens MSN",
"email": "[email protected]",
"age": 25
}
]
- Jalankan salah satu perintah berikut:
npm run seed # Reset database dan seed ulang data
npm run seed:up # Menambahkan data baru saja
npm run seed:down # Membersihkan semua data di database
# JANGAN LUPA UNTUK HAPUS SEEDER JIKA SUDAH TIDAK DIBUTUHKAN
8οΈβ£ Menggunakan GraphQL Playground
GraphQL Playground memungkinkanmu untuk menguji API dengan antarmuka yang interaktif. Ikuti langkah berikut:
- Jalankan server:
npm run dev
Buka http://localhost:4000 di browser.
Contoh query GraphQL:
# Mendapatkan semua user
query {
users {
_id
name
email
}
}
# Membuat user baru
mutation {
createUser(input: {
name: "Hens MSN"
email: "[email protected]"
age: 25
}) {
_id
name
}
}
9οΈβ£ Tips dan Trik untuk Pengembangan
Berikut adalah beberapa tips untuk memaksimalkan penggunaan KONTAS:
- Alur Kerja yang Ideal:
# 1. Membuat proyek baru
npx create-kontas my-app
# 2. Membuat model
npx kontas-cli mongajs g User name:string
npx kontas-cli mongajs g Product name:string
# 3. Edit data untuk seeder
# Tambahkan data di data/user.json & data/product.json
# 4. Seed database
npm run seed
# 5. Mulai pengembangan
npm run dev
- Praktik Terbaik:
- Buat model yang modular dan terfokus.
- Gunakan middleware untuk tugas umum seperti validasi.
- Selalu tulis dokumentasi kode yang jelas.
- Untuk proyek besar, pertimbangkan menggunakan TypeScript.
"Think out of the box" - Hens MSN
π₯ Tim Kami
KONTAS Stack diciptakan dengan penuh semangat oleh:
- Hens MSN - Lead Architect
- Karisha Oka - Backend Developer
- Adella Java - Database Architect
- Rafles S - QA Engineer
- Seno W - DevOps Engineer
Kami adalah tim yang berkomitmen untuk memberikan solusi terbaik bagi para developer di seluruh dunia.
π€ Kontribusi
Kamu ingin ikut serta dalam pengembangan KONTAS? Kami selalu membuka kesempatan untuk kontribusi! Kunjungi GitHub repo kami untuk informasi lebih lanjut.
Panduan Kontribusi
- Fork repository kami di GitHub.
- Buat branch baru untuk fitur atau perbaikan yang ingin kamu tambahkan.
- Lakukan pull request dan tuliskan deskripsi rinci.
- Diskusikan dengan tim untuk penggabungan kode.
π License
KONTAS Stack dirilis di bawah lisensi MIT dan dikembangkan dengan cinta β€οΈ oleh tim KONTAS Stack. Untuk informasi lebih lanjut, kunjungi GitHub kami.
KONTAS: Solusi pengembangan API tercepat dan paling canggih untuk era modern. Mulai proyekmu sekarang dan rasakan bedanya!