Skip to content

Commit a7f94eb

Browse files
authored
Merge pull request #69 from dotkernel/index-page
updated index symlink
2 parents f94cfce + 44f4e4c commit a7f94eb

File tree

3 files changed

+27
-34
lines changed

3 files changed

+27
-34
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# DotKernel API
2+
3+
Based on Enrico Zimuel’s Zend Expressive API – Skeleton example, Dotkernel API runs on Laminas and Mezzio components and implements standards like PSR-3, PSR-4, PSR-7, PSR-11 and PSR-15.

docs/book/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
./v5/introduction/introduction.md
1+
../../README.md

docs/book/v5/introduction/introduction.md

Lines changed: 23 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# Introduction
22

3-
Based on Enrico Zimuel’s Zend Expressive API – Skeleton example, Dotkernel API runs on Laminas and Mezzio components and
4-
implements standards like PSR-3, PSR-4, PSR-7, PSR-11 and PSR-15.
3+
Based on Enrico Zimuel’s Zend Expressive API – Skeleton example, Dotkernel API runs on Laminas and Mezzio components and implements standards like PSR-3, PSR-4, PSR-7, PSR-11 and PSR-15.
54

65
Here is a list of the core components:
76

@@ -29,58 +28,53 @@ Here is a list of the core components:
2928

3029
For the persistence in a relational database management system we chose Doctrine ORM (object-relational mapper).
3130

32-
The benefit of Doctrine for the programmer is the ability to focus on the object-oriented business logic and worry about
33-
persistence only as a secondary priority.
31+
The benefit of Doctrine for the programmer is the ability to focus on the object-oriented business logic and worry about persistence only as a secondary priority.
3432

3533
## Documentation
3634

37-
Our documentation is Postman based. We use the following files in which we store information about every available
38-
endpoint ready to be tested:
35+
Our documentation is Postman based.
36+
We use the following files in which we store information about every available endpoint ready to be tested:
3937

4038
* documentation/Dotkernel_API.postman_collection.json
4139
* documentation/Dotkernel_API.postman_environment.json
4240

4341
## Hypertext Application Language
4442

45-
For our API payloads (a value object for describing the API resource, its relational links and any embedded/child
46-
resources related to it) we chose mezzio-hal.
43+
For our API payloads (a value object for describing the API resource, its relational links and any embedded/child resources related to it) we chose mezzio-hal.
4744

4845
## CORS
4946

50-
By using `MezzioCorsMiddlewareCorsMiddleware`, the CORS preflight will be recognized and the middleware will start to
51-
detect the proper CORS configuration. The Router is used to detect every allowed request method by executing a route
52-
match with all possible request methods. Therefore, for every preflight request, there is at least one Router request.
47+
By using `MezzioCorsMiddlewareCorsMiddleware`, the CORS preflight will be recognized and the middleware will start to detect the proper CORS configuration.
48+
The Router is used to detect every allowed request method by executing a route match with all possible request methods.
49+
Therefore, for every preflight request, there is at least one Router request.
5350

5451
## OAuth 2.0
5552

56-
OAuth 2.0 is an authorization framework that enables applications to obtain limited access to user accounts on your
57-
Dotkernel API. We are using mezzio/mezzio-authentication-oauth2 which provides OAuth 2.0 authentication for Mezzio and
58-
PSR-7/PSR-15 applications by using league/oauth2-server package.
53+
OAuth 2.0 is an authorization framework that enables applications to obtain limited access to user accounts on your Dotkernel API.
54+
We are using mezzio/mezzio-authentication-oauth2 which provides OAuth 2.0 authentication for Mezzio and PSR-7/PSR-15 applications by using league/oauth2-server package.
5955

6056
## Email
6157

62-
It is not unlikely for an API to send emails depending on the use case. Here is another area where Dotkernel API shines.
58+
It is not unlikely for an API to send emails depending on the use case.
59+
Here is another area where Dotkernel API shines.
6360
Using `DotMailServiceMailService` provided by dotkernel/dot-mail you can easily send custom email templates.
6461

6562
## Configuration
6663

67-
From authorization at request route level to API keys for your application, you can find every configuration variable in
68-
the config directory.
64+
From authorization at request route level to API keys for your application, you can find every configuration variable in the config directory.
6965

7066
Registering a new module can be done by including its ConfigProvider.php in config.php.
7167

72-
Brand new middlewares should go into pipeline.php. Here you can edit the order in which they run and find more info
73-
about the currently included ones.
68+
Brand new middlewares should go into pipeline.php. Here you can edit the order in which they run and find more info about the currently included ones.
7469

7570
You can further customize your api within the autoload directory where each configuration category has its own file.
7671

7772
## Routing
7873

79-
Each module has a `RoutesDelegator.php` file for managing existing routes inside that specific module. It also allows a
80-
quick way of adding new routes by providing the route path, Middlewares that the route will use and the route name.
74+
Each module has a `RoutesDelegator.php` file for managing existing routes inside that specific module.
75+
It also allows a quick way of adding new routes by providing the route path, Middlewares that the route will use and the route name.
8176

82-
You can allocate permissions per route name in order to restrict access for a user role to a specific route
83-
in `config/autoload/authorization.global.php`.
77+
You can allocate permissions per route name in order to restrict access for a user role to a specific route in `config/autoload/authorization.global.php`.
8478

8579
## Commands
8680

@@ -89,26 +83,22 @@ Then you can enable it by registering it in `config/autoload/cli.global.php`.
8983

9084
## File locker
9185

92-
Here you will also find our brand-new file locker configuration, so you can easily turn it on or off (by
93-
default: `'enabled' => true`).
86+
Here you will also find our brand-new file locker configuration, so you can easily turn it on or off (by default: `'enabled' => true`).
9487

95-
Note: The File Locker System will create a `command-{command-default-name}.lock` file which will not let another
96-
instance of the same command to run until the previous one has finished.
88+
Note: The File Locker System will create a `command-{command-default-name}.lock` file which will not let another instance of the same command to run until the previous one has finished.
9789

9890
## PSR Standards
9991

100-
* [PSR-3](https://www.php-fig.org/psr/psr-3/): Logger Interface – the application uses `LoggerInterface` for error
101-
logging
92+
* [PSR-3](https://www.php-fig.org/psr/psr-3/): Logger Interface – the application uses `LoggerInterface` for error logging
10293
* [PSR-4](https://www.php-fig.org/psr/psr-4): Autoloader – the application locates classes using an autoloader
10394
* [PSR-7](https://www.php-fig.org/psr/psr-7): HTTP message interfaces – the handlers return `ResponseInterface`
10495
* [PSR-11](https://www.php-fig.org/psr/psr-11): Container interface – the application is container-based
105-
* [PSR-15](https://www.php-fig.org/psr/psr-15): HTTP Server Request Handlers – the handlers
106-
implement `RequestHandlerInterface`
96+
* [PSR-15](https://www.php-fig.org/psr/psr-15): HTTP Server Request Handlers – the handlers implement `RequestHandlerInterface`
10797

10898
## Tests
10999

110-
One of the best ways to ensure the quality of your product is to create and run functional and unit tests. You can find
111-
factory-made tests in the `tests/AppTest/` folder, and you can also register your own.
100+
One of the best ways to ensure the quality of your product is to create and run functional and unit tests.
101+
You can find factory-made tests in the `tests/AppTest/` folder, and you can also register your own.
112102

113103
We have 2 types of tests: functional and unit tests, you can run both types at the same type by executing this command:
114104

0 commit comments

Comments
 (0)