{"id":18356659,"url":"https://github.com/getz-devs/librakeeper-web","last_synced_at":"2026-05-09T06:10:37.139Z","repository":{"id":245568614,"uuid":"818424402","full_name":"getz-devs/librakeeper-web","owner":"getz-devs","description":"Modern Personal Book Library Manager Frontend 📚","archived":false,"fork":false,"pushed_at":"2024-07-28T03:21:12.000Z","size":1335,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-30T00:15:19.467Z","etag":null,"topics":["barcode-scanner","book-library","book-management","books","firebase-auth","mantine","nextjs","pnpm","react","rest-api","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/getz-devs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-06-21T20:31:28.000Z","updated_at":"2024-07-28T03:16:35.000Z","dependencies_parsed_at":"2024-11-05T22:11:16.347Z","dependency_job_id":"d5221c13-5b9e-4a24-8864-297b456b8dd5","html_url":"https://github.com/getz-devs/librakeeper-web","commit_stats":null,"previous_names":["getz-devs/librakeeper-web"],"tags_count":1,"template":false,"template_full_name":"mantinedev/next-app-template","purl":"pkg:github/getz-devs/librakeeper-web","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getz-devs%2Flibrakeeper-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getz-devs%2Flibrakeeper-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getz-devs%2Flibrakeeper-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getz-devs%2Flibrakeeper-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/getz-devs","download_url":"https://codeload.github.com/getz-devs/librakeeper-web/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getz-devs%2Flibrakeeper-web/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32809149,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["barcode-scanner","book-library","book-management","books","firebase-auth","mantine","nextjs","pnpm","react","rest-api","typescript"],"created_at":"2024-11-05T22:11:06.223Z","updated_at":"2026-05-09T06:10:37.125Z","avatar_url":"https://github.com/getz-devs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Librakeeper Web\n\n*― A Modern Personal Book Library Frontend*\n\nLibrakeeper Web is a sleek and user-friendly web application designed for managing your personal book collection. Built with a modern tech stack and intuitive interface, Librakeeper makes organizing and exploring your books a breeze.\n\n## Key Features\n\n- **Effortless Book Adding:** Quickly add books to your library by scanning ISBNs using your phone's camera or manually inputting them.\n- **Detailed Book Information:** View comprehensive details for each book, including title, author, cover image, description, and more.\n- **Customizable Bookshelves:** Create personalized bookshelves to categorize your books based on genre, author, or any criteria you prefer.\n- **Advanced Search:** Utilize our powerful search engine to find books within your library based on various parameters.\n- **Secure Authentication:** Seamlessly log in and manage your library with secure authentication powered by Firebase.\n\n## Tech Stack\n\n- **Next.js:** A powerful React framework for building fast and SEO-friendly web applications.\n- **Mantine:** A modern React component library providing pre-built components and styling tools for a streamlined development experience.\n- **TypeScript:** A strongly typed superset of JavaScript, ensuring code quality and maintainability.\n- **pnpm:** A fast and efficient package manager for JavaScript.\n\n## App Structure\n\nLibrakeeper Web is structured around a clear hierarchy of pages, each serving a specific purpose in managing your book collection. \n\n- `/`\n    - Displays all books\n    - Displays all collections (bookshelves)\n    - Button to add a new book using the camera\n- `/search`\n    - Search for books using ISBN\n    - Button to go to Advanced Search\n- `/advSearch`\n    - Advanced search for books \n- `/camera`\n    - Captures ISBN from the camera\n    - Redirects to the search with scanned ISBN\n- `/collections`\n    - Displays all bookshelves\n- `/collections/[id]`\n    - Displays all books for the bookshelf with `id`\n- `/book/[id]`\n    - Displays detailed info about a book with `id`\n    - Contains a button to edit this book\n- `/book/[id]/edit`\n    - Allows editing info about a book with `id`\n- `/debug`\n    - Debug page to test API requests\n\n## User Journey\n\nThe following diagram illustrates a typical user journey through the Librakeeper Web application, highlighting how users interact with various features and navigate between pages.\n\n```mermaid\ngraph TB\n    Login((Login)) -- Authenticate --\u003e Home([\"/\"]) \n    Home -- \"View Book Details\" --\u003e Book([\"/book/[id]\"])  \n    Home --\u003e Camera([\"/camera\"]) \n    Camera -- \"Scan or Enter ISBN\" --\u003e Search([\"/search\"])  \n    Search --\u003e SearchResults([\"Search Results\"])\n    Search -- \"No Books Found\" --\u003e AdvSearch([\"/advSearch\"]) \n    AdvSearch --\u003e SearchResults\n    SearchResults -- \"Save Book\" --\u003e Book \n    Home --\u003e Collections([\"/collections\"]) \n    Collections -- \"Open Bookshelf\" --\u003e Bookshelf([\"/collections/[id]\"]) \n    Home -- \"View Bookshelf\" --\u003e Bookshelf\n    Bookshelf -- \"View Book Details\" --\u003e  Book\n    Book -- \"Edit Information\" --\u003e EditBook([\"/book/[id]/edit\"]) \n```\n\n## Getting Started\n\n### Prerequisites\n- **Node.js**: [https://nodejs.org/](https://nodejs.org/)\n- **pnpm**: [https://pnpm.io/](https://pnpm.io/)\n\n### Installation\n\nClone the repository:\n\n```bash\ngit clone https://github.com/your-username/librakeeper-web.git\ncd librakeeper-web\n```\n\nInstall Dependencies:\n\n```bash\npnpm install \n```\n\n### Start the Development Server\n\n```bash\npnpm dev\n```\n\nThis will start the development server, typically at `http://localhost:3000`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetz-devs%2Flibrakeeper-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgetz-devs%2Flibrakeeper-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetz-devs%2Flibrakeeper-web/lists"}