{"id":23150767,"url":"https://github.com/adeiskandarzulkarnaen/notesapp-backend","last_synced_at":"2025-06-16T22:32:11.706Z","repository":{"id":237544214,"uuid":"794692233","full_name":"adeiskandarzulkarnaen/notesapp-backend","owner":"adeiskandarzulkarnaen","description":"NotesApp RESTFull API","archived":false,"fork":false,"pushed_at":"2024-06-11T06:53:47.000Z","size":97,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T14:44:50.865Z","etag":null,"topics":["bcrypt","db-migrate","hapijs","joi","mysql2"],"latest_commit_sha":null,"homepage":"https://2006043.stoplight.io/docs/notesapp","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adeiskandarzulkarnaen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-01T18:46:16.000Z","updated_at":"2024-06-03T02:35:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"59acd70b-7c1c-454a-b2d9-17e01c66d792","html_url":"https://github.com/adeiskandarzulkarnaen/notesapp-backend","commit_stats":null,"previous_names":["adeiskandarzulkarnaen/notesapp-backend"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/adeiskandarzulkarnaen/notesapp-backend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adeiskandarzulkarnaen%2Fnotesapp-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adeiskandarzulkarnaen%2Fnotesapp-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adeiskandarzulkarnaen%2Fnotesapp-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adeiskandarzulkarnaen%2Fnotesapp-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adeiskandarzulkarnaen","download_url":"https://codeload.github.com/adeiskandarzulkarnaen/notesapp-backend/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adeiskandarzulkarnaen%2Fnotesapp-backend/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260251352,"owners_count":22981017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bcrypt","db-migrate","hapijs","joi","mysql2"],"created_at":"2024-12-17T18:18:28.783Z","updated_at":"2025-06-16T22:32:11.671Z","avatar_url":"https://github.com/adeiskandarzulkarnaen.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NotesApp RESTful API\n\nRepositori ini berisi kode sumber untuk proyek Node.js berjudul **NotesApp**, sebuah API RESTful yang dibangun dengan menggunakan framework Hapi.js dan menggunakan database MySQL. NotesApp memungkinkan pengguna untuk mengelola catatan mereka dengan fitur-fitur seperti otentikasi, otorisasi, dan kolaborasi.\n\n\n## Features\n\n- **User Registration:** Pengguna dapat mendaftar untuk membuat akun baru dalam aplikasi. Proses registrasi ini memungkinkan pengguna untuk mengakses fitur-fitur lain dalam NotesApp.\n- **Authentication:** Proses otentikasi diimplementasikan menggunakan JSON Web Tokens (JWT). Pengguna dapat mendaftar, masuk, dan memperoleh token untuk mengotentikasi permintaan mereka ke API.\n- **Authorization:** Otorisasi diimplementasikan untuk memastikan bahwa pengguna hanya dapat mengakses dan mengubah catatan mereka sendiri. Setiap catatan terkait dengan pengguna, dan hanya pemilik catatan yang memiliki izin untuk mengedit atau menghapusnya.\n- **Collaboration** NotesApp memungkinkan kolaborasi dengan memungkinkan pengguna untuk berbagi catatan mereka dengan pengguna lain. Fitur ini memungkinkan beberapa pengguna untuk mengakses dan berkolaborasi pada catatan yang dibagikan.\n\n\n## Technologies Used:\n\n- **Node.js**: Sebuah runtime environment JavaScript yang memungkinkan eksekusi kode JavaScript di luar browser web. Ini digunakan dalam NotesApp untuk menyediakan server side, memungkinkan pengolahan permintaan dari client dan interaksi dengan database.\n- **MySQL**: Sebuah sistem manajemen basis data relasional yang digunakan untuk menyimpan dan mengelola data aplikasi secara efisien.\n- **Hapi.js**: Sebuah framework Node.js yang kuat dan fleksibel untuk membangun aplikasi web dan API dengan cepat dan efisien.\n- **JSON Web Tokens (JWT)**: Sebuah standar untuk mentransmisikan informasi secara aman antara pihak sebagai objek JSON. JWT digunakan untuk otentikasi dalam NotesApp, memastikan keamanan dan keaslian permintaan pengguna.\n\n\n## Getting Started\n1. **Clone the repository:**:\n    ```bash\n    git clone https://github.com/adeiskandarzulkarnaen/notesapp-backend.git\n    ```\n    ```bash\n    cd notesapp-backend\n    ```\n2. **Install dependencies:**:\n    ```bash\n    npm install\n    ```\n3. **Setup .env file:**\n   * Salin file `.env.example` menjadi `.env` dengan menjalankan perintah:\n        ```bash\n        cp .env.example .env\n        ```\n   * Edit file `.env` sesuai kebutuhan Anda, termasuk pengaturan koneksi database dan konfigurasi lainnya.\n4. **Setup the MySQL database:**\n    Buat database MySQL sesuai dengan konfigurasi di file `.env`\n    ```sql\n    CREATE DATABASE database_name;\n    ```\n5. **Run Database Migrasi:**\n    Untuk menjalankan migrasi database, jalankan perintah:\n    ```bash\n    npm run migrate:up\n    ```\n6. **Run the application**\n    ```bash\n    npm start\n    ```\n\n\n## Contributing:\n\nContributions to the NotesApp project are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request.\n\n\n## License:\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadeiskandarzulkarnaen%2Fnotesapp-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadeiskandarzulkarnaen%2Fnotesapp-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadeiskandarzulkarnaen%2Fnotesapp-backend/lists"}