Skip to content

ibnehussain/Demoappaz204

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

155 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Demoappaz204 - Modern E-Commerce Web Application

.NET Azure License

A modern, responsive e-commerce web application built with ASP.NET Core 8.0 and deployed to Azure using Infrastructure as Code (Bicep). This project showcases best practices for cloud-native web development, automated deployment pipelines, and modern web UI design.

πŸš€ Features

  • Modern E-Commerce Interface: Responsive design with product showcases, promotional banners, and shopping cart functionality
  • Azure Cloud Deployment: Fully automated deployment to Azure using Bicep templates
  • CI/CD Ready: Configured for continuous integration and deployment
  • Application Insights: Built-in monitoring and telemetry
  • Security: HTTPS enforcement and HSTS headers
  • Responsive Design: Mobile-first approach with Bootstrap 5

πŸ› οΈ Technology Stack

  • Backend: ASP.NET Core 8.0 with Razor Pages
  • Frontend: HTML5, CSS3, Bootstrap 5, JavaScript
  • Infrastructure: Azure Bicep templates
  • Cloud Platform: Microsoft Azure
  • Monitoring: Azure Application Insights
  • Containerization: Docker support

πŸ“‹ Prerequisites

πŸš€ Quick Start

Local Development

  1. Clone the repository

    git clone https://github.com/ibnehussain/Demoappaz204.git
    cd Demoappaz204
  2. Restore dependencies

    dotnet restore
  3. Run the application

    cd Demoappaz204
    dotnet run
  4. Open your browser and navigate to https://localhost:5001 or http://localhost:5000

Docker Development

  1. Build the Docker image

    docker build -t demoappaz204 .
  2. Run the container

    docker run -p 8080:80 demoappaz204

☁️ Azure Deployment

This project includes multiple deployment options for Azure:

Option 1: Quick Deployment Scripts

Windows (PowerShell)

.\deploy-to-azure.ps1

Linux/macOS (Bash)

chmod +x deploy-to-azure.sh
./deploy-to-azure.sh

Option 2: Manual Bicep Deployment

  1. Login to Azure

    az login
  2. Create Resource Group

    az group create --name rg-demoappaz204-dev --location "East US"
  3. Deploy Infrastructure

    az deployment group create \
      --resource-group rg-demoappaz204-dev \
      --template-file main.bicep \
      --parameters main.bicepparam
  4. Deploy Application Code

    dotnet publish -c Release
    # Deploy using Azure App Service deployment methods

For detailed deployment instructions, see DEPLOYMENT-GUIDE.md and BICEP-DEPLOYMENT.md.

πŸ—οΈ Project Structure

Demoappaz204/
β”œβ”€β”€ Demoappaz204/                 # Main application project
β”‚   β”œβ”€β”€ Pages/                    # Razor pages
β”‚   β”‚   β”œβ”€β”€ Index.cshtml         # Home page with e-commerce features
β”‚   β”‚   β”œβ”€β”€ Privacy.cshtml       # Privacy policy page
β”‚   β”‚   β”œβ”€β”€ Error.cshtml         # Error handling page
β”‚   β”‚   └── Shared/              # Shared layouts and components
β”‚   β”œβ”€β”€ wwwroot/                 # Static web assets
β”‚   β”‚   β”œβ”€β”€ css/                 # Stylesheets
β”‚   β”‚   β”œβ”€β”€ js/                  # JavaScript files
β”‚   β”‚   └── lib/                 # Third-party libraries
β”‚   β”œβ”€β”€ Properties/              # Launch settings and configurations
β”‚   β”œβ”€β”€ Program.cs               # Application entry point
β”‚   └── Demoappaz204.csproj     # Project file
β”œβ”€β”€ main.bicep                   # Azure infrastructure template
β”œβ”€β”€ main.bicepparam             # Bicep parameters file
β”œβ”€β”€ deploy-*.ps1|.sh            # Deployment scripts
β”œβ”€β”€ Dockerfile                   # Container configuration
β”œβ”€β”€ DEPLOYMENT-GUIDE.md          # Deployment instructions
β”œβ”€β”€ BICEP-DEPLOYMENT.md          # Bicep-specific deployment guide
└── README.md                    # This file

βš™οΈ Configuration

Application Settings

The application uses standard ASP.NET Core configuration files:

  • appsettings.json - Production settings
  • appsettings.Development.json - Development settings

Infrastructure Parameters

Key configuration parameters for Azure deployment:

Parameter Default Description
appName demoappaz204 Base name for Azure resources
environment dev Environment designation (dev/staging/prod)
location East US Azure region for deployment
appServicePlanSku F1 App Service pricing tier
dotnetVersion net8.0 .NET runtime version

🎨 Features Showcase

E-Commerce Components

  • Hero Carousel: Rotating promotional banners
  • Product Showcases: Featured products with pricing
  • Promotional Banners: Seasonal sales and offers
  • Responsive Design: Mobile-optimized layout
  • Modern UI: Clean, professional interface

Cloud-Native Features

  • Auto-scaling: Azure App Service automatic scaling
  • Monitoring: Application Insights integration
  • Security: HTTPS enforcement and security headers
  • High Availability: Multi-region deployment support

πŸ”§ Development

Building the Project

# Clean and restore
dotnet clean && dotnet restore

# Build
dotnet build

# Run tests (if any)
dotnet test

# Publish for production
dotnet publish -c Release -o ./publish

Code Style and Standards

  • Follows standard C# naming conventions
  • Uses ASP.NET Core best practices
  • Implements secure coding practices
  • Responsive design principles

πŸ“Š Monitoring and Observability

The application includes built-in monitoring through:

  • Azure Application Insights: Performance metrics, request tracing, and error logging
  • Azure Log Analytics: Centralized logging and analysis
  • Health Checks: Application health monitoring
  • Custom Telemetry: Business metrics and user behavior tracking

πŸ”’ Security

Security features implemented:

  • HTTPS enforcement
  • HSTS (HTTP Strict Transport Security)
  • Secure headers configuration
  • Input validation and sanitization
  • Azure-managed certificates

πŸš€ CI/CD Integration

The project is configured for:

  • GitHub Actions workflows
  • Azure DevOps pipelines
  • Docker container builds
  • Infrastructure as Code deployment
  • Automated testing and validation

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ†˜ Support

For support and questions:

🎯 Roadmap

  • Add shopping cart functionality
  • Implement user authentication
  • Add payment integration
  • Implement search functionality
  • Add admin dashboard
  • Mobile app development
  • Microservices architecture migration

πŸ™ Acknowledgments

  • TechM Team for project collaboration
  • CloudThat for cloud architecture guidance
  • Microsoft for Azure platform and .NET framework
  • Bootstrap Team for responsive design framework

Made with ❀️ by TechM Team

Deploy with confidence, scale with ease, monitor with precision.

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages