{"id":26780359,"url":"https://github.com/bittricky/book-recommendations","last_synced_at":"2026-04-11T09:39:46.660Z","repository":{"id":285002654,"uuid":"956700848","full_name":"bittricky/book-recommendations","owner":"bittricky","description":"Simple flask app to search for books and find something new to read.","archived":false,"fork":false,"pushed_at":"2025-03-28T21:24:01.000Z","size":30,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T21:30:06.544Z","etag":null,"topics":["flask","javascript","npm","open-library-api","pip","python","tailwindcss"],"latest_commit_sha":null,"homepage":"","language":"CSS","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/bittricky.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":"2025-03-28T17:51:37.000Z","updated_at":"2025-03-28T21:24:04.000Z","dependencies_parsed_at":"2025-03-28T21:30:15.673Z","dependency_job_id":"77bdcb8f-0255-4bff-8a62-f4e74b4646a5","html_url":"https://github.com/bittricky/book-recommendations","commit_stats":null,"previous_names":["bittricky/book-recommendations"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bittricky%2Fbook-recommendations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bittricky%2Fbook-recommendations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bittricky%2Fbook-recommendations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bittricky%2Fbook-recommendations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bittricky","download_url":"https://codeload.github.com/bittricky/book-recommendations/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246150452,"owners_count":20731419,"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":["flask","javascript","npm","open-library-api","pip","python","tailwindcss"],"created_at":"2025-03-29T07:16:20.352Z","updated_at":"2025-10-08T06:51:50.320Z","avatar_url":"https://github.com/bittricky.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Book Recommendations\n\nA Flask-based web application that provides book recommendations using the Open Library API. The application features a modern UI built with Tailwind CSS, allowing users to search for books and get recommendations.\n\n## Features\n\n- Search for books by title, author, or keywords\n- Get random book recommendations\n- View book details including cover images, authors, and publication years\n- Responsive design that works on different screen sizes\n- Custom 404 error page\n\n## Tech Stack\n\n- **Backend**: Flask (Python)\n- **Frontend**: HTML, JavaScript, Tailwind CSS\n- **API**: Open Library API\n- **Package Management**: npm (for Tailwind CSS)\n\n## Prerequisites\n\n- Python 3.7+\n- pip (Python package manager)\n- Node.js and npm (for Tailwind CSS)\n\n## Setup Instructions\n\n### 1. Clone the repository\n\n```bash\ngit clone https://github.com/bittricky/book-recommendations.git\ncd book-recommendations\n```\n\n### 2. Set up Python virtual environment\n\n```bash\n# Create a virtual environment\npython -m venv venv\n\n# Activate the virtual environment\n# On Windows\nvenv\\Scripts\\activate\n# On macOS/Linux\nsource venv/bin/activate\n```\n\n### 3. Install Python dependencies\n\n```bash\npip install -r requirements.txt\n```\n\n### 4. Set up Tailwind CSS\n\n```bash\n# Install npm dependencies\nnpm install\n\n# Build the CSS\nnpm run build:css\n```\n\n### 5. Run the application\n\n```bash\n# Set Flask to development mode\n# On Windows\nset FLASK_ENV=development\n# On macOS/Linux\nexport FLASK_ENV=development\n\n# Run the application\npython run.py\n```\n\nThe application will be available at http://localhost:5000\n\n## Development Environment Setup\n\n### Frontend Development\n\nFor frontend development with hot-reloading of Tailwind CSS:\n\n```bash\n# Run Tailwind CSS in watch mode\nnpm run watch:css\n```\n\nThis will automatically rebuild the CSS whenever you make changes to the Tailwind configuration or HTML files.\n\n### Backend Development\n\nFor backend development, you can use Flask's debug mode which is enabled by default in the run.py file. This allows for automatic reloading of the server when Python files are changed.\n\n## Project Structure\n\n```\nbook-recommendations/\n├── app/                    # Application package\n│   ├── __init__.py         # Application initialization\n│   ├── routes.py           # Route definitions\n│   ├── services.py         # Service layer (API interactions)\n│   ├── static/             # Static files\n│   │   ├── scripts/        # JavaScript files\n│   │   └── styles/         # CSS files\n│   └── templates/          # HTML templates\n├── venv/                   # Virtual environment (not in repository)\n├── .gitignore              # Git ignore file\n├── package.json            # npm package configuration\n├── requirements.txt        # Python dependencies\n├── run.py                  # Application entry point\n└── tailwind.config.js      # Tailwind CSS configuration\n```\n\n## Acknowledgments\n\n- [Open Library API](https://openlibrary.org/developers/api) for providing book data\n- [Tailwind CSS](https://tailwindcss.com/) for the utility-first CSS framework\n- [Flask](https://flask.palletsprojects.com/) for the web framework\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbittricky%2Fbook-recommendations","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbittricky%2Fbook-recommendations","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbittricky%2Fbook-recommendations/lists"}