A microservice-based Notification Logger built with NestJS and Next.js to send, track, and analyze Email, SMS, and Webhook messages.
- 🚀 Microservice architecture using NestJS
- 🌐 Clean and powerful GraphQL API
- ✉️ Supports Email, SMS, and Webhook notifications
- 📦 Centralized logging using Winston + MongoDB
- 🎯 Extensible via plug-and-play notification providers
- 🧪 Tested with Jest and designed for scalability
- 💻 Lightweight Next.js frontend dashboard
- Node.js ≥ 18.x
- Yarn or npm
- MongoDB
- Docker (optional)
# Clone repo
git clone https://github.com/mostafiz51/notifylog.git && cd notifylog
# Install dependencies
yarn install
# Setup environment
cp .env.example .env
# Fill required variables (Mongo URI, API keys, etc.)
# Start backend
yarn start:dev:api
# Start frontend
yarn start:dev:ui
# Build and run containers
docker-compose up --build
Ensure you’ve configured
.env
file correctly before running.
To push the image to Docker Hub (replace mostafiz51/notifylog
with your repo):
# Tag image
docker tag notifylog:dev mostafiz51/notifylog:latest
# Login and push
docker login
docker push mostafiz51/notifylog:latest
notifylog/
├── src/
│ ├── config/ # Shared enums/config
│ ├── logger/ # Notification core logic
│ ├── common/ # Common utilities & pipes
│ ├── app.module.ts
│ ├── main.ts
├── ui/ # Next.js frontend dashboard
├── docker-compose.yml
├── .env.example
├── package.json
mutation SendEmail {
sendNotification(input: {
type: "EMAIL",
to: "[email protected]",
subject: "Welcome!",
message: "Hello from NotifyLog!"
}) {
success
messageId
}
}
yarn test
yarn test:cov
- WebSocket real-time log stream
- Retry failed webhooks
- Admin dashboard analytics
- SMTP fallback support
- Mobile-friendly UI
- Fork the repo
- Create branch:
git checkout -b feat/feature-name
- Commit:
git commit -am "add: new feature"
- Push:
git push origin feat/feature-name
- Open PR
Available in .github/ISSUE_TEMPLATE
:
- 🐞 Bug Report
- ✨ Feature Request
- 📚 Documentation Update
- 🆕 Good First Issue
MIT License
Thanks to all contributors! 💖
Let me know if you'd like to add Docker Hub badges, auto-publish GitHub Actions, or CI/CD steps!