Skip to content

Commit 04767d6

Browse files
authored
Merge pull request #8 from Mike014/Mike014-patch-1
Revise README for tech stack and deployment updates
2 parents a8c0a40 + d05747b commit 04767d6

1 file changed

Lines changed: 34 additions & 10 deletions

File tree

README.md

Lines changed: 34 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Nexus Engine
22

3+
![CI](https://github.com/Mike014/Nexus-Engine/actions/workflows/ci.yml/badge.svg)
4+
35
<div align="center">
46
<img src="assets/images/logo.jpg" alt="Nexus Engine"
57
alt="Nexus Engine"
@@ -74,8 +76,8 @@ Nexus Engine is not a commercial product. It is a technical portfolio project th
7476
## Tech Stack
7577

7678
### Backend
77-
- ASP.NET Core 8 Web API
78-
- Entity Framework Core 8 + Npgsql
79+
- ASP.NET Core 9 Web API
80+
- Entity Framework Core 9 + Npgsql
7981
- MediatR 12 (CQRS)
8082
- SignalR (real-time WebSocket)
8183
- Swashbuckle (Swagger UI)
@@ -110,8 +112,17 @@ cd Nexus-Engine
110112
docker compose --profile csharp up --build
111113
```
112114

115+
### Workflow
116+
117+
```bash
118+
git checkout -b fix/name
119+
git add .
120+
git commit -m "fix: "
121+
git push origin fix/nameix
113122
### Available endpoints
123+
```
114124

125+
### HTTP Requests
115126
```
116127
POST /api/accounts Create a new account
117128
GET /api/accounts/{id} Get current account state (from projection)
@@ -150,6 +161,18 @@ restart with an empty state.
150161

151162
---
152163

164+
## Live Demo
165+
166+
| Service | URL |
167+
|---------|-----|
168+
| Frontend | https://nexus-engine-olive.vercel.app |
169+
| Backend API | https://nexus-engine-production-60c8.up.railway.app |
170+
| Swagger UI | https://nexus-engine-production-60c8.up.railway.app/swagger |
171+
| Health Live | https://nexus-engine-production-60c8.up.railway.app/health/live |
172+
| Health Ready | https://nexus-engine-production-60c8.up.railway.app/health/ready |
173+
174+
---
175+
153176
## Architectural Decisions
154177

155178
### ADR-001: Event Sourcing as persistence strategy
@@ -212,14 +235,15 @@ Handlers depend on `INexusUnitOfWork` interface, never on `NexusDbContext` direc
212235
- 20/20 unit tests passing (xUnit + Moq)
213236
- Selenium E2E test: full buy/sell match flow verified
214237

215-
### Phase 5 — Observability and Deploy
216-
- Structured logging (Serilog)
217-
- Health checks
218-
- MediatR Pipeline Behavior for global exception handling
219-
- Architecture diagrams and ADR documentation
220-
- Deploy to Railway (PostgreSQL + backend + frontend)
221-
- Public URL for portfolio showcase
222-
- Metrics (Prometheus + Grafana, optional)
238+
### Phase 5 — Observability and Deploy ✅
239+
- Structured logging (Serilog) with Console + File sinks
240+
- Health checks (/health/live and /health/ready)
241+
- MediatR Pipeline Behavior (LoggingBehavior)
242+
- Deploy to Railway (PostgreSQL + ASP.NET Core 9 backend)
243+
- Deploy to Vercel (React/Vite frontend)
244+
- Public URLs for portfolio showcase
245+
- GitHub Actions CI (build + 20 tests on every PR)
246+
- Branch protection on main (PR required, CI must pass)
223247

224248
---
225249

0 commit comments

Comments
 (0)