hackware / hawese-core
Code shared across Hawese projects.
    0.2.1
    2023-09-25 13:39 UTC
Requires
- php: >=7.1.3
 - illuminate/routing: 5.8.*
 - laravel/lumen-framework: 5.8.*
 - phpmailer/phpmailer: ^6.0
 - spatie/laravel-cors: ^1.5
 
This package is not auto-updated.
Last update: 2025-11-04 08:11:07 UTC
README
Overview
Code shared among Hackware Web Services projects.
Main goals
- Standardize output of JSON based HTTP responses.
 - Provide lightweight base class for table based models.
 - Centralize common helpers.
 
Features
- As consumer I can get JSON based exceptions (instead of HTML based exceptions) out of the box, so that I'm able to process it with a JSON based consumer.
 - As consumer I can get a pager with customizable limit on every collection of objects out of the box, so that I'm able to consult massive amounts of data with ease.
 - As consumer I can sort every collection of objects in ascending or descending order so that I'm able to work with that functionality out of the box.
 
Sorry, I owe you a better description for this last 2:
- As programmer I can create a table based model with ease.
 - User model, password and passwordless (token) authentication.
 
Run it
Requirements
As it's a Laravel/Lumen 5.8+ package, your server must meet the following requirements:
- PHP >= 7.1.3
 - OpenSSL PHP Extension
 - PDO PHP Extension
 - Mbstring PHP Extension
 - Composer
 
Installation
composer require hackware/hawese-core
Error codes
ModelValidationException: Failed model attribute validation.UnknownForeignObjectException: Can't find the foreign relationship inmodel::$foreign_keys.ModelObjectNotFoundException: A model object could not be found based on a key and a value.WrongCredentialsException: Wrong login password or secret.RuntimeException: Too many failed requests.RuntimeException: Unacceptable origin url or HTTP_REFERER, must listed oncors.default_profile.allow_originsconfig.
Copyright and licensing
Copyright 2019 Hackware SpA.
This project is released under the MIT License terms. You can sublicense this work. I will greatly appreaciate your contributions back. Releasing your creative works under free licenses makes the world a little better.