Star-Note adalah aplikasi all-in-one untuk pengelolaan catatan, flashcard untuk pembelajaran, dan timer pomodoro untuk meningkatkan produktivitas. Aplikasi ini dirancang untuk memudahkan pengguna dalam mengorganisir pikiran, meningkatkan proses belajar, dan mengelola waktu dengan lebih efektif.
- Buat, edit, dan hapus catatan dengan rich text formatting
- Organisasi catatan dengan tag
- Unggah dan lampirkan gambar pada catatan
- Cari catatan berdasarkan judul atau konten
- Buat kartu flashcard untuk membantu proses belajar
- Organisasi flashcard berdasarkan kategori
- Mode latihan dengan sistem pengulangan berdasarkan tingkat penguasaan
- Lampirkan gambar pada flashcard
- Atur sesi kerja dan istirahat dengan timer pomodoro
- Statistik penggunaan untuk melacak produktivitas
- Notifikasi untuk pergantian antara sesi kerja dan istirahat
- Pengaturan durasi yang dapat disesuaikan
- Penyimpanan dan pengelolaan gambar melalui Cloudinary
- Upload gambar dengan drag-and-drop
- Preview gambar sebelum upload
- React.js
- Vite
- Tailwind CSS
- Axios untuk API calls
- Nginx (untuk serving static files dalam container)
- Node.js
- Express.js
- MongoDB (database)
- JWT untuk autentikasi
- Cloudinary API untuk penyimpanan gambar
- Docker & Docker Compose untuk containerization
- RESTful API architecture
- Docker dan Docker Compose terinstal di komputer Anda
- Git untuk mengkloning repository (opsional)
-
Unduh atau clone repository ini ke komputer lokal:
git clone <repository-url>
atau unduh sebagai ZIP dan extract ke folder lokal
-
Buka terminal atau command prompt dan arahkan ke folder Star-Note:
cd path/to/Star-Note
-
Jalankan aplikasi dengan Docker Compose:
docker-compose up -d
Perintah ini akan membangun dan menjalankan container untuk frontend dan backend aplikasi.
-
Tunggu beberapa saat hingga proses build selesai. Setelah selesai, buka browser dan akses:
- Frontend: http://localhost
- Backend API: http://localhost:5001/api
-
Untuk menghentikan aplikasi:
docker-compose down
- Akses aplikasi online di: [URL Demo] (akan ditambahkan jika tersedia)
- Buka aplikasi di browser dan klik "Register" untuk membuat akun baru
- Isi username, email, dan password
- Setelah registrasi berhasil, login dengan email dan password Anda
- Setelah login, navigasi ke menu "Notes"
- Klik tombol "New Note" untuk membuat catatan baru
- Isi judul dan konten catatan
- Gunakan toolbar formatting untuk mengedit teks
- Tambahkan tag jika diperlukan
- Klik "Save" untuk menyimpan catatan
- Navigasi ke menu "Flashcards"
- Klik "Create Flashcard" untuk membuat flashcard baru
- Isi bagian depan (pertanyaan) dan belakang (jawaban) kartu
- Pilih kategori atau buat kategori baru
- Tambahkan gambar jika diperlukan
- Klik "Save" untuk menyimpan flashcard
- Gunakan mode "Practice" untuk berlatih dengan flashcard
- Navigasi ke menu "Pomodoro"
- Atur durasi sesi kerja dan istirahat
- Klik "Start" untuk memulai timer
- Timer akan otomatis beralih antara sesi kerja dan istirahat
- Lihat statistik penggunaan di bagian bawah halaman
Star-Note/
├── docker-compose.yml # Konfigurasi Docker Compose
├── be-star-note/ # Backend aplikasi
│ ├── Dockerfile # Docker config untuk backend
│ ├── server.js # Entry point backend
│ ├── config/ # Konfigurasi aplikasi
│ ├── middleware/ # Express middleware
│ ├── models/ # Model database MongoDB
│ └── routes/ # API routes
│
└── star-note-frontend/ # Frontend aplikasi
├── Dockerfile # Docker config untuk frontend
├── nginx.conf # Konfigurasi Nginx
├── src/ # Source code React
│ ├── components/ # Reusable components
│ ├── contexts/ # React contexts
│ ├── pages/ # Page components
│ └── utils/ # Utility functions
└── public/ # Static assets
POST /api/users/register
- Registrasi user baruPOST /api/users/login
- Login user
GET /api/notes
- Ambil semua catatan userPOST /api/notes
- Buat catatan baruGET /api/notes/:id
- Ambil detail catatan berdasarkan IDPUT /api/notes/:id
- Update catatanDELETE /api/notes/:id
- Hapus catatan
GET /api/flashcards
- Ambil semua flashcard userPOST /api/flashcards
- Buat flashcard baruGET /api/flashcards/:id
- Ambil detail flashcard berdasarkan IDPUT /api/flashcards/:id
- Update flashcardDELETE /api/flashcards/:id
- Hapus flashcard
GET /api/pomodoro
- Ambil pengaturan dan statistik pomodoroPOST /api/pomodoro
- Simpan sesi pomodoro baruPUT /api/pomodoro/settings
- Update pengaturan pomodoro
-
Tidak dapat mengakses aplikasi di browser
- Pastikan container Docker berjalan dengan perintah
docker-compose ps
- Cek apakah port 80 dan 5001 tidak digunakan oleh aplikasi lain di komputer Anda
- Coba akses backend API langsung di http://localhost:5001/api/health
- Pastikan container Docker berjalan dengan perintah
-
Login atau register gagal
- Pastikan koneksi internet aktif karena aplikasi menggunakan MongoDB Atlas cloud
- Periksa apakah email sudah terdaftar sebelumnya
-
Gambar tidak dapat diupload
- Pastikan koneksi internet aktif karena upload gambar menggunakan Cloudinary
- Periksa ukuran file, maksimal 10MB per gambar
-
Container Docker gagal memulai
- Jalankan
docker-compose logs
untuk melihat detail error - Pastikan tidak ada container lain yang menggunakan port yang sama
- Jalankan
Jika mengalami masalah, coba restart container:
docker-compose down
docker-compose up -d
© 2025 StarNote K2 Group 6. All rights reserved.