Selamat datang di Databank Universitas Indonesia! Proyek ini adalah platform berbasis web untuk mengelola dan menyediakan data universitas di seluruh Indonesia. Terdapat antarmuka web untuk pengguna dan REST API publik untuk developer.
Berikut adalah cuplikan tampilan dari aplikasi ini:
![]()
- Pencarian Data: Mencari universitas berdasarkan nama atau lokasi.
- REST API: Menyediakan endpoint API publik untuk mengakses data universitas secara terprogram.
- Sistem Pengguna: Terdapat peran untuk
administrator,contributor, dancodersuntuk mengelola data. - Dokumentasi API: Halaman khusus untuk melihat panduan penggunaan API.
- Halaman Kontribusi: Memungkinkan pengguna untuk ikut serta menambahkan data baru.
- PHP 8.3+
- Laravel Framework 11.x
- Tailwind CSS
- MySQL
-
Clone repository:
git clone [https://github.com/fazallsaid/databankofuniversities.git](https://github.com/fazallsaid/databankofuniversities.git) cd databankofuniversities -
Install dependensi PHP:
composer install
-
Buat file environment: Salin file
.env.examplemenjadi.env.cp .env.example .env
-
Generate application key:
php artisan key:generate
-
Konfigurasi Database: Buka file
.envdan sesuaikan pengaturan database (DB_DATABASE, DB_USERNAME, DB_PASSWORD) dengan konfigurasi lokal kamu. -
Jalankan Migrasi & Seeder Database: Perintah ini akan membuat struktur tabel dan mengisi data awal universitas.
php artisan migrate --seed
-
Jalankan server development:
php artisan serve
Aplikasi akan berjalan secara default di
http://127.0.0.1:8000.
Berikut adalah daftar endpoint yang tersedia.
- Method:
GET - Endpoint:
/api/universities - Deskripsi: Mendapatkan seluruh daftar universitas yang ada di database.
- Respons Sukses (200):
{ "success": true, "message": "All Universities of Indonesia (5 Universities)", "data": [ { "university_id": 1, "university_name": "Universitas Gadjah Mada", "university_acronym": "UGM", "university_address": "DI Yogyakarta", "created_at": "...", "updated_at": "..." } ] }
- Method:
POST - Endpoint:
/api/universities - Deskripsi: Menambahkan data universitas baru.
- Body (form-data):
university_name(string, required)university_acronym(string, required)university_address(string, required)
- Respons Sukses (200):
{ "success": true, "message": "Universitas Berhasil Ditambahkan", "data": { "university_name": "Universitas Coding Keren", "university_acronym": "UCK", "university_address": "Internet", "updated_at": "...", "created_at": "...", "university_id": 6 } }
- Method:
PUT - Endpoint:
/api/universities/{id} - Deskripsi: Memperbarui data universitas berdasarkan ID.
- Body (x-www-form-urlencoded):
university_name(string, required)university_acronym(string, required)university_address(string, required)
- Respons Sukses (200):
{ "success": true, "message": "Universitas Berhasil Diupdate", "data": { "university_id": 6, "university_name": "Universitas Keren Sekali", "university_acronym": "UKS", "university_address": "Cloud", "created_at": "...", "updated_at": "..." } }
- Method:
DELETE - Endpoint:
/api/universities/{id} - Deskripsi: Menghapus data universitas berdasarkan ID.
- Respons Sukses (200):
{ "success": true, "message": "Universitas Universitas Keren Sekali Berhasil Dihapus" }
- Method:
GET - Endpoint:
/api/universities/search/name - Deskripsi: Mencari universitas dengan kata kunci pada namanya.
- Query Params:
university_name(string, required)
- Respons Sukses (200):
{ "success": true, "message": "Universitas dengan kata kunci UGM (1 Universitas)", "data": [ { "university_id": 1, "university_name": "Universitas Gadjah Mada", "university_acronym": "UGM", "university_address": "DI Yogyakarta", "created_at": "...", "updated_at": "..." } ] }
- Method:
GET - Endpoint:
/api/universities/search/address - Deskripsi: Mencari universitas dengan kata kunci pada alamatnya.
- Query Params:
provinces(string, required)
- Respons Sukses (200):
{ "success": true, "message": "Universitas di Provinsi Yogyakarta (1 Universitas)", "data": [ { "university_id": 1, "university_name": "Universitas Gadjah Mada", "university_acronym": "UGM", "university_address": "DI Yogyakarta", "created_at": "...", "updated_at": "..." } ] }
Kami sangat terbuka untuk kontribusi! Jika kamu menemukan data yang salah atau ingin menambahkan universitas baru, silakan gunakan halaman /contribute atau buat Pull Request.
Proyek ini berada di bawah lisensi Apache License 2.0. Silakan lihat file LICENSE untuk detail lengkapnya.