https://github.com/oxid-esales/graphql-storefront-module
This module provides GraphQL queries and mutations for the OXID eShop store front
https://github.com/oxid-esales/graphql-storefront-module
Last synced: 10 months ago
JSON representation
This module provides GraphQL queries and mutations for the OXID eShop store front
- Host: GitHub
- URL: https://github.com/oxid-esales/graphql-storefront-module
- Owner: OXID-eSales
- License: other
- Created: 2020-12-08T14:08:54.000Z (over 5 years ago)
- Default Branch: b-7.1.x
- Last Pushed: 2024-05-22T10:36:48.000Z (about 2 years ago)
- Last Synced: 2024-05-22T10:55:40.401Z (about 2 years ago)
- Language: PHP
- Size: 1.9 MB
- Stars: 20
- Watchers: 10
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# GraphQL Storefront
[](https://github.com/OXID-eSales/graphql-storefront-module/actions)
[](https://packagist.org/packages/oxid-esales/graphql-storefront)
[](https://github.com/oxid-esales/graphql-storefront-module)
[](https://sonarcloud.io/dashboard?id=OXID-eSales_graphql-storefront-module)
[](https://sonarcloud.io/dashboard?id=OXID-eSales_graphql-storefront-module)
[](https://sonarcloud.io/dashboard?id=OXID-eSales_graphql-storefront-module)
This module provides [GraphQL](https://www.graphql.org) queries and mutations for the [OXID eShop](https://www.oxid-esales.com/) storefront.
## Usage
This assumes you have OXID eShop (at least `oxid-esales/oxideshop_ce: v7.0.0` component, which is part of the `v7.0.0` compilation) up and running.
## Branch compatibility
* 3.1.x versions (or b-7.1.x branch) are compatible with OXID eShop compilation b-7.1.x (which uses `graphql-base` 9.x version resp. b-7.1.x branch)
* 3.x versions (or b-7.0.x branch) are compatible with OXID eShop compilation b-7.0.x (which uses `graphql-base` 8.x version resp. b-7.0.x branch)
* ^2.1 versions (b-6.5.x branch) are compatible with OXID eShop compilation b-6.5.x (which uses `graphql-base` 7.x version resp. b-6.5.x branch)
* 2.0.x versions (b-6.4.x branch) are compatible with OXID eShop compilation b-6.4.x (which uses `graphql-base` 6.x version resp. b-6.4.x branch)
* 1.x versions (b-6.3.x branch) are compatible with OXID eShop compilation 6.3.x (no PHP8 support)
### Install
Switch to the shop root directory (the file `composer.json` and the directories `source/` and `vendor/` are located there).
```bash
# Install desired version of oxid-esales/graphql-storefront module, in this case - latest released 3.x version
$ composer require oxid-esales/graphql-storefront ^3.0.0
```
If you didn't have the `oxid-esales/graphql-base` module installed, composer will do that for you.
You should run migrations both after installing the module and after each module update:
```bash
$ vendor/bin/oe-eshop-doctrine_migration migrations:migrate oe_graphql_base
$ vendor/bin/oe-eshop-doctrine_migration migrations:migrate oe_graphql_storefront
```
After installing the module, you need to activate it, either via OXID eShop admin or CLI.
```bash
$ vendor/bin/oe-console oe:module:activate oe_graphql_base
$ vendor/bin/oe-console oe:module:activate oe_graphql_storefront
```
### How to use
A good starting point is to check the [How to use section in the GraphQL Base Module](https://github.com/OXID-eSales/graphql-base-module/#how-to-use)
## Testing
### Linting, syntax check, static analysis
```bash
$ composer update
$ composer static
```
### Unit/Integration/Acceptance tests
- install this module into a running OXID eShop
- reset shop's database
```bash
$ bin/oe-console oe:database:reset --db-host=db-host --db-port=db-port --db-name=db-name --db-user=db-user --db-password=db-password --force
```
- run Unit tests
```bash
$ ./vendor/bin/phpunit -c vendor/oxid-esales/graphql-storefront/tests/phpunit.xml
```
- run Integration tests
```bash
$ ./vendor/bin/phpunit --bootstrap=./source/bootstrap.php -c vendor/oxid-esales/graphql-storefront/tests/phpintegration.xml
```
- run Acceptance tests
```bash
$ SELENIUM_SERVER_HOST=selenium MODULE_IDS=oe_graphql_storefront vendor/bin/codecept run acceptance -c vendor/oxid-esales/graphql-storefront/tests/codeception.yml
```
## Contributing
You like to contribute? 🙌 AWESOME 🙌\
Go and check the [contribution guidelines](CONTRIBUTING.md)
## Build with
- [GraphQLite](https://graphqlite.thecodingmachine.io/)
## License
OXID Module and Component License, see [LICENSE file](LICENSE).