So in a previous blogpost i already told that i was working on my own product. Well this is a Shopify app and last Friday it finally got approved to their app store. In the blogpost from januari i thought it would released within a few weeks, but it took a bit longer. This was on one hand due to having to wait for the Shopify approval process, on the other side due to lack of time from my side. But it’s finally here.

But what kind of app is this? It integrates PostNL into Shopify, a well known Shipping carrier from the Netherlands. You can compare them with UPS or Deutsche Post for example.

This app has a few features:

  • Show the expected delivery date while ordering.
  • Allow to pick a pickup location while ordering.
  • Print the corresponding labels for orders.
  • Automatically mark the shipment as send.

Under the hood it is basically a Laravel and React app. It uses a few Laravel tools:

  • Queuing with Laravel Horizon.
  • An admin panel with Laravel Nova.
  • Slack notification channel.

It (ofcourse) has an extended testsuite, with over 130 tests. Laravel Stats gives me this output:

+-------------------+---------+---------+---------------+-------+------+------------+
| Name              | Classes | Methods | Methods/Class | Lines |  LoC | LoC/Method |
+-------------------+---------+---------+---------------+-------+------+------------+
| Controllers       |      25 |      53 |          2.12 |  1214 |  405 |       7.64 |
| Events            |       4 |      12 |             3 |   169 |   54 |        4.5 |
| Jobs              |       6 |      19 |          3.17 |   287 |  108 |       5.68 |
| Mails             |       1 |       2 |             2 |    40 |   12 |          6 |
| Middlewares       |       6 |       2 |          0.33 |   135 |   30 |         15 |
| Migrations        |      18 |      36 |             2 |   645 |  189 |       5.25 |
| Models            |       8 |      21 |          2.63 |   337 |   72 |       3.43 |
| Nova Resources    |       4 |      19 |          4.75 |   367 |   52 |       2.74 |
| Seeders           |       1 |       1 |             1 |    16 |    1 |          1 |
| Service Providers |       9 |      22 |          2.44 |   405 |   71 |       3.23 |
| PHPUnit Tests     |      38 |     144 |          3.79 |  3347 |  986 |       6.85 |
| Other             |      37 |     125 |          3.38 |  2646 |  558 |       4.46 |
+-------------------+---------+---------+---------------+-------+------+------------+
| Total             |     159 |     459 |          2.47 |  9676 | 2554 |       5.47 |
+-------------------+---------+---------+---------------+-------+------+------------+
 Code LOC: 994    Test LOC: 1002    Code to Test Ratio: 1:1    Number of Routes: 106

Want to try it out? You can visit it here:
https://apps.shopify.com/dikke-brillen-nl-postnl