Blazor Server App - Startup Project Structure
Overview
This repository contains a startup project structure for a Blazor Server application. It is designed to provide a robust foundation for building scalable and maintainable Blazor Server applications. Key features of this project include state management, caching, localization, authentication, logging, REST client integration, image type validation, and local storage services.
Prerequisites
.NET 8.0 SDK or later
Visual Studio 2022 or later (recommended for development)
Basic understanding of Blazor Server applications and C#
Getting Started
Clone the Repository
bash
Copy code
git clone https://github.com/atef-ataya/Blazor-Startup-Template-8.0.git
cd Blazor-Startup-Template-8.0
Restore Dependencies
bash
Copy code
dotnet restore
Run the Application
bash
Copy code
dotnet run
Features
State Management
Implemented using a combination of Blazor's built-in features and custom services to manage the application's state effectively.
Caching Service
Utilizes memory cache for efficient data retrieval, reducing the load on the database and improving response times.
Localization
Supports multiple languages and cultures, ensuring the application is accessible to a global audience.
Authentication Setup
Integrates ASP.NET Core Identity for secure and robust authentication and authorization.
Logging
Configured with Microsoft.Extensions.Logging to provide insightful and detailed logs for debugging and monitoring.
REST Client
A custom REST client service is implemented for handling HTTP requests and responses in a clean and reusable manner.
Image Type Validation
Includes functionality to check and validate the types of images being uploaded, enhancing security and data integrity.
Local Storage Service
Provides a service to interact with the browser's local storage, enabling persistent state on the client side.
Contributing
Contributions to this project are welcome! Please read our CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
Acknowledgments
Blazor Server documentation: https://docs.microsoft.com/en-us/aspnet/core/blazor/
.NET community and contributors
Feel free to customize this README to fit the specifics of your project, such as adding a section for installation instructions, usage examples, or a detailed guide on how to contribute to the project.