Skip to content

Commit

Permalink
docs: add class hierarchy and SQL diagrams
Browse files Browse the repository at this point in the history
  • Loading branch information
s4nt14go committed Oct 21, 2023
1 parent f82c25f commit ba2d00b
Show file tree
Hide file tree
Showing 14 changed files with 477 additions and 0 deletions.
24 changes: 24 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,30 @@ E2E tests:
- Notifications:
- [NotifyFE](src/modules/notification/useCases/notifyFE/NotifyFE.e2e.ts)

## Class hierarchy

Blue solid lines are *extends*, while green dashed ones are *implements*.

<br />
<p align="center">
<img alt="graph" src="doc/classHierarchy/Identifier.jpg" width="300px" /><br /><br />
<img alt="graph" src="doc/classHierarchy/Entity.jpg" /><br /><br />
<img alt="graph" src="doc/classHierarchy/ValueObject.jpg" /><br /><br />
<img alt="graph" src="doc/classHierarchy/IRepo.jpg" /><br /><br />
<img alt="graph" src="doc/classHierarchy/AppSyncController.jpg" /><br /><br />
<img alt="graph" src="doc/classHierarchy/DomainEventBase.jpg" width="600px" /><br /><br />
<img alt="graph" src="doc/classHierarchy/SubscriberController.jpg" /><br /><br />
<img alt="graph" src="doc/classHierarchy/IDecorator.jpg" /><br /><br />
<img alt="graph" src="doc/classHierarchy/IFeClient.jpg" width="450px" />
</p>
<br />

## SQL diagram

<p align="center">
<img alt="graph" src="doc/SQLdiagram.png" width="600px" />
</p>

## Stack

* DBs: PostgreSQL [CockroachDB](https://www.cockroachlabs.com) Serverless and DynamoDB
Expand Down
31 changes: 31 additions & 0 deletions doc/SQLdiagram.drawio
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<mxGraphModel dx="0" dy="0" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" background="none" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="node2" parent="1" vertex="1" value="&lt;p style=&quot;margin:0px;margin-top:4px;text-align:center;&quot;&gt;&lt;b&gt;accounts&lt;/b&gt;&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0 0 0 4px;line-height:1.6;&quot;&gt; active: boolean&lt;br/&gt; user_id: uuid&lt;br/&gt; created_at: timestamp with time zone&lt;br/&gt; updated_at: timestamp with time zone&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0 0 0 4px;line-height:1.6;&quot;&gt; id: uuid&lt;/p&gt;" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-192" y="188" width="267" height="142" as="geometry" />
</mxCell>
<mxCell id="node0" parent="1" vertex="1" value="&lt;p style=&quot;margin:0px;margin-top:4px;text-align:center;&quot;&gt;&lt;b&gt;transactions&lt;/b&gt;&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0 0 0 4px;line-height:1.6;&quot;&gt; balance: numeric&lt;br/&gt; delta: numeric&lt;br/&gt; description: varchar(255)&lt;br/&gt; date: timestamp with time zone&lt;br/&gt; created_at: timestamp with time zone&lt;br/&gt; updated_at: timestamp with time zone&lt;br/&gt; account_id: uuid&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0 0 0 4px;line-height:1.6;&quot;&gt; id: uuid&lt;/p&gt;" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-192" y="391" width="267" height="208" as="geometry" />
</mxCell>
<mxCell id="node1" parent="1" vertex="1" value="&lt;p style=&quot;margin:0px;margin-top:4px;text-align:center;&quot;&gt;&lt;b&gt;users&lt;/b&gt;&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0 0 0 4px;line-height:1.6;&quot;&gt; email: varchar(250)&lt;br/&gt; username: varchar(250)&lt;br/&gt; password: varchar(255)&lt;br/&gt; alias: varchar(250)&lt;br/&gt; is_email_verified: boolean&lt;br/&gt; is_admin_user: boolean&lt;br/&gt; is_deleted: boolean&lt;br/&gt; created_at: timestamp with time zone&lt;br/&gt; updated_at: timestamp with time zone&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0 0 0 4px;line-height:1.6;&quot;&gt; id: uuid&lt;/p&gt;" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-192" y="-125" width="267" height="252" as="geometry" />
</mxCell>
<mxCell id="edge0" edge="1" value="" parent="1" source="node2" target="node1" style="html=1;rounded=1;edgeStyle=orthogonalEdgeStyle;dashed=0;startArrow=none;endArrow=block;endSize=12;strokeColor=#595959;exitX=0.500;exitY=0.000;exitDx=0;exitDy=0;entryX=0.500;entryY=1.000;entryDx=0;entryDy=0;">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="label2" parent="edge0" vertex="1" connectable="0" value="user_id:id" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=top;strokeColor=default;">
<mxGeometry x="-119" y="165" as="geometry" />
</mxCell>
<mxCell id="edge1" edge="1" value="" parent="1" source="node0" target="node2" style="html=1;rounded=1;edgeStyle=orthogonalEdgeStyle;dashed=0;startArrow=none;endArrow=block;endSize=12;strokeColor=#595959;exitX=0.500;exitY=0.000;exitDx=0;exitDy=0;entryX=0.500;entryY=1.000;entryDx=0;entryDy=0;">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="label8" parent="edge1" vertex="1" connectable="0" value="account_id:id" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=top;strokeColor=default;">
<mxGeometry x="-138" y="368" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
Binary file added doc/SQLdiagram.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/AppSyncController.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/DomainEventBase.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/Entity.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/IDecorator.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/IFeClient.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/IRepo.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/Identifier.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/SubscriberController.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/classHierarchy/ValueObject.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit ba2d00b

Please sign in to comment.