A healthy med web application for health services, prescriptions etc. appointments. 📆
🎯 My project for the ASP.NET Core course at SoftUni. (October 2022)
- Guest visitors:
- browse departments of health services;
- view doctors in their speciality;
- read comment posts.
- Logged Users:
- book appointments using interactive datepicker;
- can cancel appointments;
- can write comments posts.
- receive real time notifications
- Doctor (user role):
- confirms/declines user appointments;
- create/deletes user prescription.
- can review his prescriptions history.
- receive real time notifications
- Admin:
- creates/deletes departments, users(delete only);
- assign/remove roles;
- can review the appointments history.
- ASP.NET Core 6.0
- Entity Framework (EF) Core 6.0.10
- Microsoft SQL Server Express
- ASP.NET Identity System 6.0.10
- MVC Areas with Multiple Layouts
- Razor Pages, Sections, Partial Views
- View Components
- Repository Pattern
- Dependency Injection
- xUnit
- Moq
- Sorting, Filtering, and Paging with EF Core
- Data Validation, both Client-side and Server-side
- Data Validation in the Models and Input View Models
- Custom Validation Attributes
- Responsive Design
- CloudinaryDotNet
- SignalR ( Real time notifications )
- Bootstrap
- jQuery
is in appsettings.json
. If you don't use SQLEXPRESS, you should replace Server=.\\SQLEXPRESS;
with Server=.;
would be applied when you run the application, since the ASPNETCORE-ENVIRONMENT
is set to Development
. If you change it, you should apply the migrations yourself.
would happen once you run the application, including Test Accounts:
- User: [email protected] / password: 123456
- Doctor: [email protected] / password: 123456
- Admin: [email protected] / password: 123456
You won't get an error for missing Cloudinary Credentials - it is handled by using predefined (already uploaded) image, when Cloudinary configuration is missing. So when you are creating content in admin panel, it will be added but not with the image you have chosen.
- Add Cloudinary Credentials in
appsettings.json
in the format:
"Cloudinary": {
"CloudName": "",
"ApiKey": "",
"ApiSecret": "",
"EnvironmentVariable": ""
}
- Update the Cloudinary Setup part of
Program.cs
'sConfigureServices
method as follows:
// Cloudinary Setup
Cloudinary cloudinary = new Cloudinary(new Account(
this.configuration["Cloudinary:CloudName"],
this.configuration["Cloudinary:ApiKey"],
this.configuration["Cloudinary:ApiSecret"]));
services.AddSingleton(cloudinary);
This project is licensed under the MIT License.