diff --git a/README.md b/README.md new file mode 100644 index 0000000..d553d09 --- /dev/null +++ b/README.md @@ -0,0 +1,68 @@ +# Lighthouse + +Lighthouse adalah proyek yang dirancang untuk mengelola dan menganalisis data dengan efisien. Proyek ini ditulis dalam JavaScript dan bertujuan untuk menyediakan fungsionalitas dasar dalam pengolahan data. + +## Fitur + +- **Simpan dan Muat Data**: Menggunakan fungsi untuk menyimpan dan memuat data dalam format JSON. +- **Integrasi dengan Firebase**: Mendukung autentikasi pengguna dan penyimpanan data di Firebase. +- **Antarmuka Pengguna Sederhana**: Menyediakan antarmuka pengguna dasar untuk interaksi. + +## Prasyarat + +Sebelum memulai, pastikan Anda telah menginstal: + +- [Node.js](https://nodejs.org/) (versi terbaru) +- [NPM](https://www.npmjs.com/) (biasanya diinstal bersama Node.js) +- [Firebase](https://firebase.google.com/) (jika menggunakan fitur Firebase) + +## Instalasi + +Ikuti langkah-langkah berikut untuk menginstal dan menjalankan proyek ini: + +1. Clone repositori ini ke mesin lokal Anda: + ```bash + git clone https://github.com/mone-app/lighthouse.git + cd lighthouse + ``` + +2. Jalankan perintah berikut untuk menginstal dependensi: + ```bash + npm install + ``` + +3. Untuk menjalankan aplikasi: + ```bash + npm start + ``` + +## Pengembangan + +Jika Anda ingin berkontribusi pada proyek ini, silakan lakukan hal berikut: + +1. Buat branch baru untuk fitur atau perbaikan Anda: + ```bash + git checkout -b namafitur + ``` + +2. Lakukan perubahan dan commit: + ```bash + git commit -m "Menambahkan fitur baru" + ``` + +3. Kirim pull request ke branch utama. + +## Dokumentasi + +Untuk informasi lebih lanjut, kunjungi [dokumentasi resmi](https://link-ke-dokumentasi) atau baca file yang ada di dalam folder `docs`. + +## Pengujian + +Untuk menjalankan pengujian unit: +```bash +npm test +``` + +## Lisensi + +Proyek ini dilisensikan di bawah [Lisensi MIT](LICENSE). diff --git a/functions/dataManager.js b/functions/dataManager.js new file mode 100644 index 0000000..b5ba42a --- /dev/null +++ b/functions/dataManager.js @@ -0,0 +1,21 @@ +// functions/dataManager.js + +const fs = require('fs'); + +// Fungsi untuk menyimpan data ke file +function saveData(filename, data) { + fs.writeFileSync(filename, JSON.stringify(data, null, 2)); + console.log(`Data saved to ${filename}`); +} + +// Fungsi untuk mengambil data dari file +function loadData(filename) { + const data = fs.readFileSync(filename); + return JSON.parse(data); +} + +// Ekspor fungsi +module.exports = { + saveData, + loadData +}; diff --git a/functions/dataManager.test.js b/functions/dataManager.test.js new file mode 100644 index 0000000..b2cddf0 --- /dev/null +++ b/functions/dataManager.test.js @@ -0,0 +1,12 @@ +// functions/dataManager.test.js +const { saveData, loadData } = require('./dataManager'); + +test('saves and loads data correctly', () => { + const testData = { name: "Test", value: 42 }; + const filename = 'testData.json'; + + saveData(filename, testData); + const loadedData = loadData(filename); + + expect(loadedData).toEqual(testData); +}); diff --git a/functions/fireConfig.js b/functions/fireConfig.js new file mode 100644 index 0000000..ea33371 --- /dev/null +++ b/functions/fireConfig.js @@ -0,0 +1,33 @@ +// functions/firebaseConfig.js + +const firebase = require("firebase/app"); +require("firebase/auth"); + +// Konfigurasi Firebase Anda +const firebaseConfig = { + apiKey: "YOUR_API_KEY", + authDomain: "YOUR_PROJECT_ID.firebaseapp.com", + projectId: "YOUR_PROJECT_ID", + storageBucket: "YOUR_PROJECT_ID.appspot.com", + messagingSenderId: "YOUR_SENDER_ID", + appId: "YOUR_APP_ID" +}; + +// Inisialisasi Firebase +firebase.initializeApp(firebaseConfig); + +// Fungsi untuk mendaftar pengguna baru +function registerUser(email, password) { + return firebase.auth().createUserWithEmailAndPassword(email, password); +} + +// Fungsi untuk login pengguna +function loginUser(email, password) { + return firebase.auth().signInWithEmailAndPassword(email, password); +} + +// Ekspor fungsi +module.exports = { + registerUser, + loginUser +}; diff --git a/index.html b/index.html new file mode 100644 index 0000000..e0e6ad0 --- /dev/null +++ b/index.html @@ -0,0 +1,19 @@ + + + +
+ + +