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: 2024-12-17 04:01:35 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_origins
config.
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.