Skip to content

rafaumeu/bookwise

Repository files navigation

📚 Bookwise

License Fix Code Style PHP SQLite TailwindCSS

Bookwise is a comprehensive platform for book management and reviews. The project offers a fluid experience for cataloging your readings, sharing opinions, and discovering new titles.

Built with Modern PHP, Bookwise implements a secure and organized architecture, serving as a robust solution for tracking your literary journey.

✨ Features

  • 🔐 Secure Authentication: Complete Login and Registration system, protecting sensitive routes.
  • 📚 Explore & Discover: Visual book catalog with informative cards, average ratings, and authors.
  • 🔍 Smart Search: Find books by title, author, or keywords in the description.
  • ⭐ Ratings & Reviews: Rate books (1-5 stars) and write detailed reviews.
  • 📸 Cover Uploads: Register new books by uploading custom cover images.
  • 📂 Public-Facing Architecture: Directory structure optimized for security, isolating application logic from public access.

🚀 How to Run

Prerequisites

  • PHP 8.2 or higher
  • SQLite3 extension enabled in php.ini

Step by Step

  1. Clone the repository

    git clone https://github.com/rafaumeu/bookwise.git
    cd bookwise
  2. Start the Server Use the built-in PHP server pointing to the public folder:

    php -S localhost:8888 -t public
  3. Access the Project Open your favorite browser at: http://localhost:8888

🛠️ Tech Stack

  • Language: PHP 8.3 (Focus on Typing and Modern Features)
  • Database: SQLite (Lightweight and fast, no separate server needed)
  • Styling: TailwindCSS (Modern and responsive design)
  • Pattern: Simplified MVC (Model-View-Controller)

📂 Project Structure

bookwise/
├── App/                # Application Logic
│   ├── Controllers/    # HTTP Request Handlers
│   ├── Middlewares/    # Route Protection
│   └── Models/         # Data Entities
├── Core/               # Framework Core (Lockbox Standard)
│   ├── Database.php, Route.php, Session.php...
├── config/             # Configuration & Routes
├── public/             # Entry Point (index.php)
└── views/              # Frontend Templates

## 🛡️ Quality & Security
- **PHPStan**: Running at **Level 6** (Strict Typing enforced).
- **Pint**: PSR-12 automatic code formatting.
- **Strict Types**: `declare(strict_types=1);` in 100% of files.

👨‍💻 Author

Made with 💜 by Rafael Dias Zendron

Linkedin Badge Gmail Badge

About

A robust book management platform built with modern PHP 8.3, strict typing, and high code quality standards.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors