Skip to content

Commit b989d46

Browse files
mbniebergallcookieguru
authored andcommitted
feature/20251211meetup Dec 2025 meetup details
1 parent c2d24a9 commit b989d46

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed
1.98 MB
Loading
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace MergePHP\Website\Meetup;
6+
7+
use DateTimeImmutable;
8+
use DateTimeZone;
9+
use MergePHP\Website\AbstractMeetup;
10+
11+
class Meetup20251211GeneratingHexagonalArchitectureCodeFromOpenapiContracts extends AbstractMeetup
12+
{
13+
public function getTitle(): string
14+
{
15+
return 'Generating Hexagonal Architecture Code From OpenAPI Contracts';
16+
}
17+
18+
public function getDescription(): string
19+
{
20+
return <<<END
21+
With an api contract first design in mind, we can generate ton of our code
22+
using hexagonal architecture and CQRS patterns.
23+
The code generated will have a 100% code coverage and mutant testing.
24+
In this talk we will cover on how to approach the openapi/swagger contracts,
25+
small introduction to cqrs and hexagonal architecture, and how all together
26+
merges in a beautiful code generator.
27+
END;
28+
}
29+
30+
public function getDateTime(): DateTimeImmutable
31+
{
32+
/** @noinspection PhpUnhandledExceptionInspection */
33+
return new DateTimeImmutable('2025-12-11 19:00:00', new DateTimeZone('America/New_York'));
34+
}
35+
36+
public function getImage(): string
37+
{
38+
return '/images/hexagonal-architecture.png';
39+
}
40+
41+
public function getSpeakerName(): string
42+
{
43+
return 'Carlos Agudo';
44+
}
45+
46+
public function getSpeakerBio(): string
47+
{
48+
return '';
49+
}
50+
51+
public function getYouTubeLink(): string
52+
{
53+
return 'https://www.youtube.com/@MergePHP';
54+
}
55+
}

0 commit comments

Comments
 (0)