Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/scottyrichardson/grayl
Grayl is as a lightweight modular set of packages to handle several e-commerce website tasks. It can be installed using the Composer package manager. All packages include unit tests for high code coverage.
https://github.com/scottyrichardson/grayl
composer-package grayl php
Last synced: 4 days ago
JSON representation
Grayl is as a lightweight modular set of packages to handle several e-commerce website tasks. It can be installed using the Composer package manager. All packages include unit tests for high code coverage.
- Host: GitHub
- URL: https://github.com/scottyrichardson/grayl
- Owner: scottyrichardson
- License: mit
- Created: 2023-03-29T21:13:31.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-15T15:29:12.000Z (24 days ago)
- Last Synced: 2024-12-15T16:33:01.434Z (24 days ago)
- Topics: composer-package, grayl, php
- Homepage: http://grayl.richardson.is/
- Size: 22.5 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Grayl - A PHP E-commerce Framework
Grayl is as a lightweight modular set of packages to handle several e-commerce website tasks. It can be installed using the Composer package manager. All packages include unit tests for high code coverage.
## Features
- Uses interfaces and abstract classes in all API gateway classes to enforce conformity.
- Includes a custom query builder. Build SQL queries from objects and run them as prepared statements to protect against SQL injections.
- Handles off-site Paypal payments using the Paypal API.
- Processes on-site credit card payments using the Paypal Payflow API and Authorize.net API.
- Reduces fraudulent charges using the MinFraud API.
- Prevents web form abuse with flood-checks and de-duplication packages.
- Comes with a full store management library including products, discounts, orders, and payments.
- Communicates with common web services like MailChimp, ZenDesk, ZohoCRM, and Mandrill.## Packages
Each package has its own repo and individual instructions if needed.
| Package | Description |
| -- | -- |
| [grayl-config](https://github.com/scottyrichardson/grayl-config) | Imports configuration files into objects for use in classes. |
| [grayl-database-main](https://github.com/scottyrichardson/grayl-database-main) | Runs SQL queries against a PDO gateway. |
| [grayl-database-query](https://github.com/scottyrichardson/grayl-database-query) | Builds select, insert, update, and delete queries using objects. Supports where clauses. Converts query objects into SQL statements ready for use in prepared statements. |
| [grayl-date](https://github.com/scottyrichardson/grayl-date) | Handles date conversions and calculations. |
| [grayl-display-navigation](https://github.com/scottyrichardson/grayl-display-navigation) | Builds navigations from objects. Tracks breadcrumbs and next/prev references. |
| [grayl-file](https://github.com/scottyrichardson/grayl-file) | Creates, reads, and writes to file handlers. |
| [grayl-gateway-common](https://github.com/scottyrichardson/grayl-gateway-common) | Interfaces and abstract classes used in all Grayl gateway classes. |
| [grayl-gateway-mailchimp](https://github.com/scottyrichardson/grayl-gateway-mailchimp) | Connects to the MailChimp API. Creates mailing lists. Subscribes users to mailing lists. Updates user fields and information. |
| [grayl-gateway-mandrill](https://github.com/scottyrichardson/grayl-gateway-mandrill) | Connects to the Mandrill API. Populates an email template with fields. Sends the template as a transactional email. |
| [grayl-gateway-minfraud](https://github.com/scottyrichardson/grayl-gateway-minfraud) | Connects to the MinFraud API. Builds fraud check from user data and payment information. Determines if the payment is high risk. |
| [grayl-gateway-pdo](https://github.com/scottyrichardson/grayl-gateway-pdo) | Creates a PDO object for MySQL database queries. Executes queries on the database using prepared statements. |
| [grayl-gateway-zendesk](https://github.com/scottyrichardson/grayl-gateway-zendesk) | Connects to the ZenDesk API. Creates new users. Updates user fields. |
| [grayl-gateway-zohocrm](https://github.com/scottyrichardson/grayl-gateway-zohocrm) | Connects to the ZohoCRM API. Creates new contacts. Updates contact fields. Creates notes for contacts. |
| [grayl-image-thumbnail](https://github.com/scottyrichardson/grayl-image-thumbnail) | Generates different thumbnail sizes from an image. |
| [grayl-input-duplicator](https://github.com/scottyrichardson/grayl-input-duplicator) | Prevents duplicate web form submissions using keys. |
| [grayl-input-floodcheck](https://github.com/scottyrichardson/grayl-input-floodcheck) | Prevents web form abuse using time checks and keys. |
| [grayl-mixin-common](https://github.com/scottyrichardson/grayl-mixin-common) | Miscellaneous mixin classes used in other Grayl packages. |
| [grayl-omnipay-common](https://github.com/scottyrichardson/grayl-omnipay-common) | Interfaces and abstract classes used in all Grayl Omnipay gateway classes. |
| [grayl-omnipay-authorizenet](https://github.com/scottyrichardson/grayl-omnipay-authorizenet) | Connects to the Authorize.net API. Authorizes direct credit card payments. Captures direct credit card payments. |
| [grayl-omnipay-payflow](https://github.com/scottyrichardson/grayl-omnipay-payflow) | Connects to the Paypal Payflow API. Authorizes direct credit card payments. Captures direct credit card payments. |
| [grayl-omnipay-paypal](https://github.com/scottyrichardson/grayl-omnipay-paypal) | Connects to the Paypal API. Creates links for offsite payment. Handles payment cancellations. |
| [grayl-store-order](https://github.com/scottyrichardson/grayl-store-order) | Creates orders from products and sales. Tracks applied payments and status. |
| [grayl-store-product](https://github.com/scottyrichardson/grayl-store-product) | Handles products in the store. Calculates features, quantities, and pricing. |
| [grayl-store-sale](https://github.com/scottyrichardson/grayl-store-sale) | Handles product sales in the store. Calculates sale discounts. |## Archived packages
| Package | Description |
| -- | -- |
| [grayl-display-content](https://github.com/scottyrichardson/grayl-display-content) | *Archived*: Reads large blocks of content from files into objects. |
| [grayl-display-template](https://github.com/scottyrichardson/grayl-display-template) | *Archived*: Parses template files. Swaps placeholders with values. |
| [grayl-input-form](https://github.com/scottyrichardson/grayl-input-form) | *Archived*: Sanitizes different types of form input. |
| [grayl-utility](https://github.com/scottyrichardson/grayl-utility) | *Archived*: Miscellaneous utility classes used in other Grayl packages. |## Written by
[Scott Richardson](https://github.com/scottyrichardson)
## License
MIT