Open apidong opened 1 week ago
Untuk membangun aplikasi menggunakan Vue 3 sebagai frontend dan FastAPI sebagai backend, berikut adalah struktur proyek yang disarankan untuk memisahkan frontend dan backend. Struktur ini memungkinkan pengembangan yang modular dan deployment yang terpisah jika diperlukan.
project-root/ ├── backend/ # Folder untuk backend FastAPI │ ├── app/ # Folder utama untuk aplikasi FastAPI │ │ ├── api/ # Endpoint atau router untuk API │ │ │ ├── init.py │ │ │ └── v1/ # Versi API, bisa disesuaikan jika ada versi berbeda │ │ │ └── routes.py # File definisi endpoint │ │ ├── core/ # Konfigurasi utama aplikasi │ │ │ └── config.py # Pengaturan seperti koneksi database, secret key, dll. │ │ ├── db/ # Pengaturan dan model database │ │ │ ├── models.py │ │ │ ├── session.py # Koneksi database, ORM session │ │ │ └── init_db.py # Inisialisasi database │ │ ├── main.py # Entry point aplikasi FastAPI │ │ ├── dependencies.py # Dependensi seperti autentikasi │ │ └── schemas.py # Definisi pydantic schema untuk request dan response │ └── Dockerfile # File Docker untuk backend FastAPI ├── frontend/ # Folder untuk frontend Vue 3 │ ├── public/ # File publik untuk aplikasi Vue (index.html, favicon, dll.) │ ├── src/ # Sumber utama aplikasi Vue │ │ ├── assets/ # Gambar dan file statis │ │ ├── components/ # Komponen Vue yang reusable │ │ ├── router/ # Konfigurasi routing Vue │ │ │ └── index.js # Definisi rute untuk aplikasi │ │ ├── store/ # State management (Vuex atau Pinia) │ │ │ └── index.js # Store utama aplikasi │ │ ├── views/ # Komponen halaman Vue untuk setiap rute │ │ ├── App.vue # Komponen utama Vue │ │ └── main.js # Entry point untuk aplikasi Vue │ └── vite.config.js # Konfigurasi Vite untuk build dan dev server Vue 3 ├── .env # Environment variable untuk konfigurasi bersama ├── .gitignore # File untuk mengabaikan file tertentu di Git ├── docker-compose.yml # Docker Compose file untuk menjalankan frontend dan backend └── README.md # Dokumentasi proyek
Penjelasan Struktur
untuk Devkit, Fitur-fitur bahasa pemrograman yang dibutuhkan antara lain :
Dari Kebutuhan diatas bahasa pemogramann yang cocok adalah python. kenapa php tidak terpilih, alasannya antara lain
dari kekurangan php sangat tidak direkomendasikan. untuk itu python lebih cocok untuk kebutuhan ini.
python memiliki banyak framework, salah satunya adalah FastAPI. Kelebihan FAstAPI antara lain :
untuk frontend dipilih javascript menggunakan vue 3. kelebihannya antara lain :
alasan kenapa tidak dipakainya laravel :