A feature-rich web application with 3 independent modules (Category, Product, Admin) with role-based access control using SQLite.
- ✅ Multi-Module Architecture: Category, Product, and Admin modules
- ✅ User Authentication: Simple login/register system
- ✅ Role-Based Access Control: User, Editor, Admin roles
- ✅ SQLite Database: Persistent data storage
- ✅ RESTful API: CRUD operations for all modules
- ✅ Responsive UI: Modern, clean design
npm installnpm run seedThis creates:
- Admin User: admin / admin123
- Editor User: editor / editor123
- Regular User: user / user123
npm startVisit http://localhost:3000
- View categories
- View products
- Browse dashboard
- All User permissions
- Create products
- Edit own products
- All permissions
- Manage users
- Manage categories and products
- Access admin dashboard
- View all categories
- View category details with products
- Create/Edit/Delete (Admin only)
- View all products with filtering
- View product details
- Create/Edit/Delete (Admin/Editor)
- Dashboard with statistics
- User management (CRUD)
- Category and product oversight
SQLite database with 3 main tables:
- users: User accounts with roles
- categories: Product categories
- products: Product inventory
- Install:
npm install - Seed:
npm run seed - Run:
npm start - Visit: http://localhost:3000
- Backend: Node.js, Express.js
- Database: SQLite3
- Frontend: EJS, HTML5, CSS3
MIT
app.js- Node.js web applicationpackage.json- DependenciesDockerfile- Container configuration.github/workflows/- CI/CD pipelinegcp/- GCP Cloud Run configsazure/- Azure App Service configsscripts/- Automation scripts
- Push to main branch
- Workflow automatically deploys to both GCP and Azure
GCP:
gcloud run deploy helloworld-app --image gcr.io/PROJECT_ID/helloworld-app --platform managed --region us-central1 --allow-unauthenticated --port 8080Azure:
az webapp create --resource-group helloworld-rg --plan helloworld-asp --name helloworld-app- ✅ Multi-cloud deployment (GCP + Azure)
- ✅ Automated CI/CD with GitHub Actions
- ✅ Docker containerization
- ✅ Security policies (IAM, network rules)
- ✅ Autoscaling configuration
- ✅ Comprehensive monitoring
- Node.js 18+
- Docker
- GCP project with billing enabled
- Azure subscription
- GitHub account
- npm audit checks for vulnerabilities
- Service account credentials via GitHub Secrets
- IAM role-based access control
- Network security groups and firewall rules
- GCP: Cloud Monitoring dashboards
- Azure: Azure Monitor metrics
- GitHub Actions: View logs at https://github.com/Samiksha998/HelloWorld_WebApp/actions
For detailed guides, see:
DEPLOYMENT-GUIDE.md- Step-by-step deploymentARCHITECTURE.md- System designSECURITY-AUTOSCALING.md- Advanced configuration
- GCP Cloud Run: ~$5-20/month (low traffic)
- Azure App Service: ~$10-40/month (low traffic)
For issues or questions, check the troubleshooting section in the detailed guides or review GitHub Actions logs.
MIT