{"id":29897686,"url":"https://github.com/tingwai-85/book-notes","last_synced_at":"2026-04-08T18:02:44.674Z","repository":{"id":301025417,"uuid":"1006949735","full_name":"TingWai-85/book-notes","owner":"TingWai-85","description":"A personal book log app with reviews and ratings built using Node.js, Express, and PostgreSQL.","archived":false,"fork":false,"pushed_at":"2025-07-04T08:04:12.000Z","size":60,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-01T11:32:55.746Z","etag":null,"topics":["backend","book-review","book-tracker","ejs","expressjs","frontend","fullstack","nodejs","postgresql","reading-log","web-app"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/watch?v=vx5v4JAE2as","language":"CSS","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/TingWai-85.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,"zenodo":null}},"created_at":"2025-06-23T08:34:34.000Z","updated_at":"2025-07-04T08:05:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"bfa401e2-9d36-4582-99ac-2a65d9dbcaa9","html_url":"https://github.com/TingWai-85/book-notes","commit_stats":null,"previous_names":["tingwai-85/book-notes"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TingWai-85/book-notes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TingWai-85%2Fbook-notes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TingWai-85%2Fbook-notes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TingWai-85%2Fbook-notes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TingWai-85%2Fbook-notes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TingWai-85","download_url":"https://codeload.github.com/TingWai-85/book-notes/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TingWai-85%2Fbook-notes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31567227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["backend","book-review","book-tracker","ejs","expressjs","frontend","fullstack","nodejs","postgresql","reading-log","web-app"],"created_at":"2025-08-01T11:00:39.289Z","updated_at":"2026-04-08T18:02:44.653Z","avatar_url":"https://github.com/TingWai-85.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📚 Book Note Website\n![Node.js](https://img.shields.io/badge/Node.js-18.x-green?logo=node.js)\n![PostgreSQL](https://img.shields.io/badge/PostgreSQL-Database-blue?logo=postgresql)\n![EJS](https://img.shields.io/badge/EJS-Templating-orange?logo=ejs)\n![License](https://img.shields.io/badge/License-MIT-yellow.svg)\n![Status](https://img.shields.io/badge/Status-Completed-brightgreen.svg)\n![PRs Welcome](https://img.shields.io/badge/PRs-welcome-blue.svg)\n\nThe **Book Note Website** is a full-stack web application that allows users to store and manage books they have read. For each book, users can leave a review and assign a rating — making it a personal reading log and review system all in one.\n\n---\n\n## 🌟 Features\n\n- 📖 Add books you've read\n- 📝 Write personal reviews for each book\n- ⭐ Rate books on a scale (e.g., 1 to 5)\n- 🔍 View a list of all stored books\n- 🧐 Search for the book you have read before stored in the database\n- 🧹 Edit or delete book entries\n\n---\n\n## 🛠️ Tech Stack\n\n| Layer      | Technology                     |\n|------------|--------------------------------|\n| Frontend   | HTML, CSS, JavaScript, EJS     |\n| Backend    | Node.js, Express               |\n| Database   | PostgreSQL                     |\n| Version Control | Git, GitHub               |\n| Environment Variables | dotenv              |\n\n---\n\n## 🚀 Getting Started\n\nBefore you begin, make sure the following are installed in your development environment:\n\n- **[Node.js](https://nodejs.org/en/download)**\n- **[PostgreSQL](https://www.postgresql.org/download/)**\n- (Optional) **[pgAdmin](https://www.pgadmin.org/download/)** – GUI for PostgreSQL\n\n\u003e ⚠️ You can initialize your PostgreSQL database using the SQL file included in this repository.\n\n---\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/TingWai-85/book-notes.git\ncd book-notes\n```\n\n### 2. Install Dependencies\n```bash\nnpm install\n```\n\n### 3. Set Up Environment Variables\nCreate a .env file in the root directory:\n```bash\ntouch .env\n```\nOpen the .env file and add the following variables (replace with your actual credentials):\n```env\nPG_USER=your_db_username\nPG_HOST=\"localhost\"\nPG_DATABASE=\"booknote\"\nPG_PASSWORD=your_db_password\nPG_PORT=\"5432\"\n```\nMake sure PostgreSQL is installed and your database is set up with the matching credentials.\n\n### 4. Run the App\n```bash\nnode index.js\n```\nThe app will be accessible at: http://localhost:3000\n\n---\n\n## 🎥 Video Tutorial\n\nWatch the setup tutorial on [YouTube](https://www.youtube.com/watch?v=vx5v4JAE2as).\n\n---\n\n## 🔧 Future Enhancements\n\n - 🔐 Add user authentication (login, register)\n - 📅 Track reading dates or reading time\n - 📊 Dashboard for reading statistics\n - 👥 Community for sharing the books\n\n---\n\n## 👨‍💻 Author\n©2025 TingWai-85\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftingwai-85%2Fbook-notes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftingwai-85%2Fbook-notes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftingwai-85%2Fbook-notes/lists"}