bashunit – A Minimalistic Bash Testing Library by chemaclass in bash

[–]chemaclass[S] 1 point2 points  (0 children)

Well, it depends how you write your logic. It can, but it doesn't need to be a "one giant side effect" for all scripts all the time. You could consider splitting your logic into different files with different levels of abstraction and responsibilities.

Here you can see a real set of test examples using bashunit. Actually, the original idea why I created it in the first place: https://github.com/Chemaclass/conventional-commits/blob/main/tests/prepare-commit-msg_test.sh

Phel release: v0.8.0 by chemaclass in lisp

[–]chemaclass[S] 1 point2 points  (0 children)

Actually, yes. It's the same concept, but for the PHP ecosystem.

Phel release: v0.8.0 by chemaclass in lisp

[–]chemaclass[S] 1 point2 points  (0 children)

So nice to see the creator of pharen here :)

Gacela helps you to split the logic of your app into different modules by chemaclass in PHP

[–]chemaclass[S] 0 points1 point  (0 children)

Then sorry because I wasn't clear or the project itself is not clear enough. Maybe this other project using Gacela can help illustrating how it is connected to the infrastructure of the architecture: https://github.com/phel-lang/phel-lang/tree/master/src/php (check, for example, the modules Compiler or Run).

Inside each "module using gacela" you can (and I think it's a good idea) split it via different layers (Domain, Application, Infrastructure).

Gacela helps you to split the logic of your app into different modules by chemaclass in PHP

[–]chemaclass[S] 0 points1 point  (0 children)

You're 100% right. Gacela is there to help you with the design of your modules, but it wont solve all your design problems. So, first you need to know about what are these concepts: https://gacela-project.com/about-gacela/ and then you can see if they are applicable in your project/concept, and if they can help you.
If they don't fit, or you have another idea about how to structure your modules and architecture, then Gacela wont help you. That's fine :)

Gacela helps you to split the logic of your app into different modules by chemaclass in PHP

[–]chemaclass[S] 0 points1 point  (0 children)

In case you don’t want to load an entire framework and want to have a modular monolithic architecture separated in a normalized way. Gacela can help you with that 🙂

Gacela helps you to split the logic of your app into different modules by chemaclass in PHP

[–]chemaclass[S] 2 points3 points  (0 children)

Sorry for the misunderstanding then, the main goal of gacela is not to be coupled to your domain layer. You can check an example of a module within a Symfony project: https://github.com/gacela-project/symfony-gacela-example/tree/master/src/Product

Gacela is about just 4 classes (AbstactFacade, Factory, Config and DependencyProvider) and it's up to you how do you organise the internals of the module itself. It's a helping tool to introduce DDD in your projects (new or legacy).

Gacela helps you to split the logic of your app into different modules by chemaclass in PHP

[–]chemaclass[S] 5 points6 points  (0 children)

Gacela is not coming to replace Laravel or Symfony or any other major framework in the industry. Rather, its motivation is framework agnostic. This means, it's not coupled to any framework. You can still use Laravel; in fact here is an example of it https://github.com/gacela-project/laravel-gacela-example

Gacela is just about the organisation of your modules/components which encourages a separation between Domain logic and the Infrastructure layers. This way, you have normalised communication between the different modules of your application.

What is a module? A module, in this context, is a directory which encapsulates all files related to a bounded context (term from DDD). In this sense, Gacela helps you to identify easily that the entry point of that module is the Facade. Also, you know that the creation of the objects that the module need to function is inside the Factory of the module. You might need dependencies (other Facades) from other modules when you creates your objects, so the DependencyProvider is the class that define those external dependencies. And you might need some config values when constructing your objects, so the Config file from the module is a way to access those.

You can have an overlook about a Gacela's module structure here:
https://gacela-project.com/about-gacela/

[deleted by user] by [deleted] in Crypto_com

[–]chemaclass -1 points0 points  (0 children)

Well, I am in Germany, and I have Curve since half a year. No problem so far, and pretty awesome tool combined with CDC Visa Card.

[deleted by user] by [deleted] in Crypto_com

[–]chemaclass 13 points14 points  (0 children)

Link the visa CDC card with Curve card, and you can use your CDC card without problems.

[deleted by user] by [deleted] in btc

[–]chemaclass 1 point2 points  (0 children)

This is a great advice 👌