This project sets up a complete CI/CD pipeline for a full-stack application (Node.js backend + React frontend) using GitHub Actions. It performs automatic testing, builds both backend and frontend, and deploys the frontend to Render. Slack notifications are sent on success or failure.
root/
├── .github/workflows/ # GitHub Actions YAML
├── BackendCID/ # Node.js Backend
└── FrontendCICD/ # React Frontend
- Checks out the code
- Sets up Node.js environment
- Installs backend dependencies
- Runs linter (if configured)
- Runs backend tests (if configured)
- Waits for backend job to complete
- Sets up Node.js environment
- Installs frontend dependencies
- Builds the React frontend
- Deploys to Render using a webhook
- Sends success or failure message to a Slack channel via webhook
- CI/CD: GitHub Actions
- Backend: Node.js (BackendCID)
- Frontend: React.js (FrontendCICD)
- Deployment: Render.com
- Notifications: Slack Webhooks
In your GitHub repository settings → Secrets and variables → Actions:
Secret Name | Purpose |
---|---|
RENDER_FRONTEND_HOOK |
Render deploy hook for frontend |
SLACK_WEBHOOK_URL |
Slack channel webhook for alerts |
- Clone the repo and set up your backend and frontend directories.
- Push to the
main
branch. - GitHub Actions will:
- Build and test the backend
- Build and deploy the frontend
- Notify your Slack workspace
Shlok Kadam
Connect with me on GitHub
MIT License