complete phase a

hesamTheme
Amir Hossein Khademi 2023-12-07 17:58:06 +03:30
parent b55bfd26b8
commit 34991ea83c
15 changed files with 1964 additions and 281 deletions

View File

@ -1,17 +1,26 @@
<MudCard Elevation="27" class="f-full m-1 bg-[#2E2E48] rounded-lg">
@using Blazorise.Video
<MudCard Elevation="27" class="f-full m-1 bg-[#2E2E48] rounded-lg w-[20rem] lg:w-[35rem] md:w-[25rem] sm:w-[18rem]">
<MudCardContent>
<MudStack Justify="Justify.SpaceBetween">
<MudImage Src="@ImageSrc" ObjectFit="ObjectFit.Cover" Class="rounded-lg" />
@* <Video Source="@VideoSrc" Poster="@ImageSrc"></Video> *@
<video controls preload="none" poster="@ImageSrc">
<source src="@VideoSrc" type="video/mp4">
Your browser does not support the video tag.
</video>
@*<MudImage Src="@ImageSrc" ObjectFit="ObjectFit.Cover" Class="rounded-lg" />
<MudText Typo="Typo.h6" class=" font-outfit mt-1">@Name</MudText>
<p class="text-gray-400">
@Detail
</p>
<div class="flex space-x-1 mt-3">
</p> *@
<div class="flex flex-wrap space-x-1 mt-0">
@foreach (var feild in Feilds)
{
<div class="bg-[#232339] px-3 py-1 rounded-md text-[0.7rem]">
<div class="bg-[#232339] px-3 py-1 mt-1 h-auto rounded-md text-[0.7rem] ">
<p>@feild</p>
</div>
}
@ -21,8 +30,8 @@
@if (ShowButton)
{
<MudButton StartIcon="@Icons.Material.Filled.InsertLink" Variant="Variant.Outlined" Color="Color.Primary"
FullWidth="true">@ButtonText</MudButton>
@* <MudButton StartIcon="@Icons.Material.Filled.InsertLink" Variant="Variant.Outlined" Color="Color.Primary"
FullWidth="true">@ButtonText</MudButton> *@
}
</MudStack>
</MudCardContent>
@ -34,6 +43,7 @@
[Parameter] public string Link { get; set; }
[Parameter] public string[] Feilds { get; set; }
[Parameter] public string ImageSrc { get; set; }
[Parameter] public string VideoSrc { get; set; }
[Parameter] public bool ShowButton { get; set; } = true;
[Parameter] public string ButtonText { get; set; }
}

View File

@ -1,4 +1,4 @@
<MudCard Elevation="27" class="bg-[#2E2E48] rounded-lg">
<MudCard Elevation="27" class="bg-[#2E2E48] rounded-lg h-fit">
<MudCardContent>
<MudHidden Breakpoint="Breakpoint.SmAndDown" Invert="true">
<MudStack AlignItems="AlignItems.Center">

View File

@ -1,4 +1,4 @@
<div class="bg-[#2E2E48] justify-center py-7 px-5 rounded-md">
<div class="bg-[#2E2E48] justify-center py-7 px-5 rounded-md h-full">
<img src="@ImageSrc" class="mb-4 mx-auto w-16 h-16 rounded-md" />
<div class="my-auto ml-2">
<p class="text-center text-white">@Name</p>

View File

@ -3,6 +3,501 @@
namespace Resume.Blazor;
public static class ExperienceHelper
{
public static List<ProjectCategoryItemModel> ProjectCategoryItemModels = new List<ProjectCategoryItemModel>
{
new ProjectCategoryItemModel
{
Name = "2D Motion Graghics",
Projects = new List<ProjectItemModel>
{
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Saving%20415%20Million%20People.mp4",
Name="Saving 415 Million People" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Saving%20415%20million%20people.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Pride%20800%20Million.mp4",
Name="Pride 800 Million" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Pride%20800%20million.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Paylot%20Saat%20Sefr.mp4",
Name="Paylot Saat Sefr" ,
Feilds= new string[] {"Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Paylot%20Saat%20Sefr.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Hallway%20To%20Progress.mp4",
Name="Hallway To Progress" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Hallway%20to%20Progress.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Future%20Superpowers.mp4",
Name="Future Superpowers" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Future%20Superpowers.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Dollar%2C%20The%20Beginning%2C%20The%20Power%2C%20The%20End.mp4",
Name="Dollar, The Beginning, The Power, The End" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Dollar%2C%20the%20beginning%2C%20the%20power%2C%20the%20end.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Combined%20Cycle%20Power%20Plant.mp4",
Name="Development Of Oil Value" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Development%20of%20oil%20value.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Combined%20Cycle%20Power%20Plant.mp4",
Name="Combined Cycle Power Plant" ,
Feilds= new string[] {"Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Combined%20Cycle%20Power%20Plant.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/Building%20The%20Future.mp4",
Name="Building The Future" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/Building%20the%20future.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/25-Year%20Contract.mp4",
Name="25-Year Contract" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/25-Year%20Contract.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/2D%20Motion%20Graghics/7-Headed%20Demon.mp4",
Name="7-Headed Demon" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/2D%20Motion%20Graghics/7-Headed%20Demon.jpg",
Detail=""},
}
},
new ProjectCategoryItemModel
{
Name = "3D Motion Graghics",
Projects = new List<ProjectItemModel>
{
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Dependence%20On%20Oil.mp4",
Name="Dependence On Oil" ,
Feilds= new string[] {"Rendering" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Dependence%20on%20oil.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Drone%20Power.mp4",
Name="Drone Power" ,
Feilds= new string[] {"Rendering" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Drone%20power.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Evanescent%20Opportunities.mp4",
Name="Evanescent Opportunities" ,
Feilds= new string[] {"Desingin" , "Rendering" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Evanescent%20opportunities.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Having%20A%20House.mp4",
Name="Having A House" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" ,"Rendering" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Having%20a%20house.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Import%20Of%20Foreign%20Goods.mp4",
Name="Import Of Foreign Goods" ,
Feilds= new string[] {"Rendering" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Import%20of%20foreign%20goods.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Iran%27s%20Space%20Movement.mp4",
Name="Iran's Space Movement" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" ,"Rendering" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Iran%27s%20space%20movement.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Knowledge%20Base%20In%20Agriculture.mp4",
Name="Knowledge Base In Agriculture" ,
Feilds= new string[] {"Rendering" , "Composite"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Knowledge%20base%20in%20agriculture.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Shield%20Of%20Iran.mp4",
Name="Shield Of Iran" ,
Feilds= new string[] {"Rendering" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Shield%20of%20Iran.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/3D%20Motion%20Graghics/Waste%20Production%20Of%20The%20Automotive%20Industry.mp4",
Name="Waste Production Of The Automotive Industry" ,
Feilds= new string[] {"Rendering" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/3D%20Motion%20Graghics/Waste%20production%20of%20the%20automotive%20industry.jpg",
Detail=""},
}
},
new ProjectCategoryItemModel
{
Name = "Animation",
Projects = new List<ProjectItemModel>
{
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Agricultural%20Machinery.mp4",
Name="Agricultural Machinery" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Agricultural%20Machinery.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Girl%27s%20Day.mp4",
Name="Girl's Day" ,
Feilds= new string[] {"Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Girl%27s%20Day.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Military%20Power.mp4",
Name="Military Power" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/military%20power.mp4_snapshot_00.34.633.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Sickle%20and%20Mass.mp4",
Name="Sickle and Mass" ,
Feilds= new string[] {"Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Sickle%20and%20Mass.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/The%20Braves%20of%20Tangestan.mp4",
Name="The Braves of Tangestan" ,
Feilds= new string[] {"Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/The%20Braves%20of%20Tangestan.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Satellite%20Launch.mp4",
Name="Satellite Launch" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Satellite%20launch.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Watering%20Systems.mp4",
Name="Watering Systems" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Watering%20Systems.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Rural%20Gas%20Supply.mp4",
Name="Rural Gas Supply" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Rural%20gas%20supply.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Animation/Rural%20Telephone.mp4",
Name="Rural Telephone" ,
Feilds= new string[] {"Decoupage" , "Director" , "Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Animation/Rural%20telephone.jpg",
Detail=""},
}
},
new ProjectCategoryItemModel
{
Name = "Motion Comic",
Projects = new List<ProjectItemModel>
{
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Motion%20Comic/Motion%20Comic%20Ebrahim%20Hadi.mp4",
Name="Motion Comic Ebrahim Hadi" ,
Feilds= new string[] {"Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Motion%20Comic/Motion%20Comic%20Ebrahim%20Hadi.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Motion%20Comic/Motion%20Comic%20Tehrani%20Moghadam.mp4",
Name="Motion Comic Tehrani Moghadam" ,
Feilds= new string[] {"Composite" , "Editing"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Motion%20Comic/Motion%20Comic%20Tehrani%20Moghadam.jpg",
Detail=""},
}
},
new ProjectCategoryItemModel
{
Name = "Teaser",
Projects = new List<ProjectItemModel>
{
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Igarson%20Teaser.mp4",
Name="Igarson Teaser" ,
Feilds= new string[] {"Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/iGarson%20teaser.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Mucut%20Teaser.mp4",
Name="Mucut Teaser" ,
Feilds= new string[] {"Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Mucut%20Teaser.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Corona%20Deaths.mp4",
Name="Corona Deaths" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Corona%20Deaths.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Do%20Smile.mp4",
Name="Do Smile" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Do%20smile.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Eid%20Al-Fitr.mp4",
Name="Eid Al-Fitr" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Eid%20al-Fitr.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Father%27s%20Day.mp4",
Name="Father's Day" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/father%27s%20Day.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Fleeting%20Life.mp4",
Name="Fleeting Life" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Fleeting%20life.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Half%20Of%20Sha%27ban.mp4",
Name="Half Of Sha'ban" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Half%20of%20Sha%27ban.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Happy%20New%20Year.mp4",
Name="Happy New Year" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Happy%20new%20year.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Instagram%20Promo.mp4",
Name="Instagram Promo" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Instagram%20Promo.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Municipality%20Of%20Tehran.mp4",
Name="Municipality Of Tehran" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Municipality%20of%20Tehran.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Teaser/Petroshimi%20Pars.mp4",
Name="Petroshimi Pars" ,
Feilds= new string[] {"Decoupage" , "Director" , "Designing" , "Composite" , "Editing" , "SFX and Music"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Teaser/Petroshimi%20Pars.jpg",
Detail=""},
}
},
new ProjectCategoryItemModel
{
Name = "Video Editing",
Projects = new List<ProjectItemModel>
{
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Video%20Editing/Documentary%20Transit.mp4",
Name="Documentary Transit" ,
Feilds= new string[] {"Title" , "Editing" , "SFX and Music" , "Color correction"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Video%20Editing/Documentary%20Transit.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Video%20Editing/Moharram%20Clip.mp4",
Name="Moharram Clip" ,
Feilds= new string[] {"Title" , "Editing" , "SFX and Music" , "Color correction"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Video%20Editing/Moharram%20Clip.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Video%20Editing/Music%20Video%20Of%20Naim%20Sha%27ban.mp4",
Name="Music Video Of Naim Sha'ban" ,
Feilds= new string[] {"Editing" , "Color correction"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Video%20Editing/Music%20video%20of%20Naim%20Sha%27ban.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Video%20Editing/Penguins%20Event.mp4",
Name="Penguins Event" ,
Feilds= new string[] {"Editing" , "SFX and Music" , "Color correction"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Video%20Editing/Penguins%20event.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Video%20Editing/The%20Way%20Shud%20To%20Go.mp4",
Name="The Way should To Go" ,
Feilds= new string[] {"Title" , "Editing" , "SFX and Music" , "Color correction"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Video%20Editing/The%20way%20shud%20to%20go.jpg",
Detail=""},
new ProjectItemModel{
VideoSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Videos/Video%20Editing/Zam%20Zam%20Eshgh.mp4",
Name="Zam Zam Eshgh" ,
Feilds= new string[] {"Director" , "Editing" , "Color correction"},
ButtonText ="WebSite" ,
Link="",
ImageSrc="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Video%20Editing/Zam%20Zam%20Eshgh.jpg",
Detail=""},
}
},
};
public static List<ProjectItemModel> ProjectItemModels = new List<ProjectItemModel>
{
new ProjectItemModel{
@ -92,65 +587,30 @@ public static class ExperienceHelper
};
public static List<SkillItemModel> ToolsItemModels = new List<SkillItemModel>
{
new SkillItemModel{ExperiencePeriod = 7 , Name = "Visual Studio" , ImageSrc = "../assets/images/vsLogo.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "Nuget" , ImageSrc = "../assets/images/nugetLogo.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "GitHub" , ImageSrc = "../assets/images/githubLogo.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "Microsoft Office" , ImageSrc = "../assets/images/officeLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Photoshop" , ImageSrc = "../assets/images/photoshopLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "VSCode" , ImageSrc = "../assets/images/vscodeLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Postman" , ImageSrc = "../assets/images/postmanLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "SQLServer Management" , ImageSrc = "../assets/images/sqlmLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "ReSharper" , ImageSrc = "../assets/images/resharperLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Jira" , ImageSrc = "https://logowik.com/content/uploads/images/jira3124.jpg"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "BitBucket" , ImageSrc = "../assets/images/bitbucketLogo.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "WordPress" , ImageSrc = "../assets/images/wordpressLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "Adobe Xd" , ImageSrc = "../assets/images/xdLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "SonarQube" , ImageSrc = "../assets/images/sonarLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "Figma" , ImageSrc = "../assets/images/figmaLogo.png"},
new SkillItemModel{ExperiencePeriod = 1 , Name = "Rider" , ImageSrc = "../assets/images/riderLogo.png"},
new SkillItemModel{ExperiencePeriod = 1 , Name = "NDepend" , ImageSrc = "../assets/images/ndependLogo.png"},
new SkillItemModel{ExperiencePeriod = 1 , Name = "Studio 3T" , ImageSrc = "../assets/images/studio3tLogo.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "Adobe After Effects" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/After%20Effects.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "Adobe Premiere" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Premiere.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Adobe Illustrator" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Illustrator.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Adobe Photoshop" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Photoshope.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "Adobe Audition" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Audition.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Maxone Cinama 4D" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Cinama%204D.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "Unreal Engine" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Unreal%20Engine.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Microsoft Office Word" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Word.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Microsoft Office Execl" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Excel.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Microsoft Office PowerPoint" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Tools/Power%20Point.png"},
};
public static List<SkillItemModel> SkillItemModels = new List<SkillItemModel>
{
new SkillItemModel{ExperiencePeriod = 7 , Name = "C# Programming" , ImageSrc = "https://static.javatpoint.com/csharp/images/c-sharp.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "C++ Programming" , ImageSrc = "../assets/images/cppLogo.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "Asp .Net Core" , ImageSrc = "../assets/images/netcorLogo.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "Xamarin" , ImageSrc = "../assets/images/xamarinLogo.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "Xamarin Forms" , ImageSrc = "../assets/images/xamarinLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = ".NET MAUI" , ImageSrc = "../assets/images/mauiLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Prism" , ImageSrc = "../assets/images/prismLogo.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "iOS Application" , ImageSrc = "../assets/images/iosLogo.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "Android Application" , ImageSrc = "../assets/images/androidLogo.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "Git" , ImageSrc = "https://git-scm.com/images/logos/downloads/Git-Icon-1788C.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Microsoft SQL Server" , ImageSrc = "https://logowik.com/content/uploads/images/microsoft-sql-server4529.jpg"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Windows Application" , ImageSrc = "https://www.sketchappsources.com/resources/source-image/windows-logo-alesiamjau.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Wpf" , ImageSrc = "../assets/images/netcorLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "SOLID" , ImageSrc = "../assets/images/solidLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "DDD" , ImageSrc = "../assets/images/dddLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "XAML" , ImageSrc = "../assets/images/xamlLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "MVVM Design Pattern" , ImageSrc = "../assets/images/mvvmLogo.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Entity Framework Core" , ImageSrc = "https://codeopinion.com/wp-content/uploads/2017/10/Bitmap-MEDIUM_Entity-Framework-Core-Logo_2colors_Square_Boxed_RGB.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "RESTful Api" , ImageSrc = "https://lh3.googleusercontent.com/-XvJzhz3pfH0/XjYG_xWkESI/AAAAAAAAJ9c/AYlgAtRknEU2W5fMcFhQoL6rmO8EBtIDQCK8BGAsYHg/s0/2020-02-01.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Web API" , ImageSrc = "https://static.javatpoint.com/tutorial/webapi/images/web-api-tutorial.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Postgress SQL" , ImageSrc = "https://www.influxdata.com/wp-content/uploads/PostgreSQL-logo.jpg"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Scrum" , ImageSrc = "https://images.credly.com/images/db768524-81d9-435e-96fc-33b517e15616/blob.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "SignalR" , ImageSrc = "https://img.stackshare.io/service/4013/SignalR-logo.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "Docker" , ImageSrc = "../assets/images/dockerLogo.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "UI-UX" , ImageSrc = "https://artographic.ir/file/attach/202102/1330.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "Clean Architecture" , ImageSrc = "../assets/images/carchLogo.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "MicroServices" , ImageSrc = "../assets/images/microserviceLogo.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "Redis" , ImageSrc = "../assets/images/redisLogo.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "STOMP" , ImageSrc = "https://seeklogo.com/images/S/STOMP-logo-9B23B79AF7-seeklogo.com.gif"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "RabbitMQ" , ImageSrc = "../assets/images/rabbitLogo.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "DevOps" , ImageSrc = "https://cdn.dribbble.com/users/13574/screenshots/9711275/logo-devops.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "MongoDB" , ImageSrc = "https://res.cloudinary.com/hevo/image/upload/f_auto,q_auto/v1626694700/hevo-blog/MongoDB-sm-logo-500x400-1-1.gif"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "gRPC" , ImageSrc = "https://avatars.githubusercontent.com/u/7802525?s=280&v=4"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "CICD" , ImageSrc = "../assets/images/cicdLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "ML.Net" , ImageSrc = "../assets/images/mlLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "QraphQL" , ImageSrc = "../assets/images/graphLogo.png"},
new SkillItemModel{ExperiencePeriod = 2 , Name = "Unity" , ImageSrc = "../assets/images/unityLogo.png"},
new SkillItemModel{ExperiencePeriod = 10 , Name = "Googling" , ImageSrc = "../assets/images/googleLogo.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "Editing Video" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Editing%20Video.png"},
new SkillItemModel{ExperiencePeriod = 7 , Name = "Motion Graphics" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Motion%20Graphics.png"},
new SkillItemModel{ExperiencePeriod = 6 , Name = "Making Teaser" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Making%20Teaser.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Director" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Director.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "Scenario Writer" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/scenario%20writer.png"},
new SkillItemModel{ExperiencePeriod = 3 , Name = "Model Maker" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/model%20maker.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Filming" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Filming.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "Aerial Photography" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Aerial%20Photography.png"},
new SkillItemModel{ExperiencePeriod = 4 , Name = "Stage Design" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Stage%20Design.png"},
new SkillItemModel{ExperiencePeriod = 5 , Name = "Sound Editing" , ImageSrc = "https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/Icones/Skills/Sound%20Editing.png"},
};
}

View File

@ -0,0 +1,7 @@
namespace Resume.Blazor.Models.ItemModels;
public class ProjectCategoryItemModel
{
public string Name { get; set; }
public List<ProjectItemModel> Projects { get; set; } = new();
}

View File

@ -4,6 +4,7 @@ public class ProjectItemModel
public bool ShowButton { get; set; } = true;
public string Name { get; set; }
public string ImageSrc { get; set; }
public string VideoSrc { get; set; }
public string Link { get; set; }
public string ButtonText { get; set; }
public string Detail { get; set; }

View File

@ -7,10 +7,11 @@
<MudItem xs="0" md="3" class="bg-transparent">
<div class="m-8">
<img src="https://s3.ir-thr-at1.arvanstorage.ir/igarson/Images/utils/photo_2023-06-18_11-20-13.jpg"
<img src="https://s3.ir-thr-at1.arvanstorage.ir/resume-contents/Images/hesamProfile.png"
class="rounded-md" />
@* <mud class="text-white font-extrabold font-outfit-black text-4xl mt-8"> Amir Hossein Khademi </p> *@
<MudText class="text-white font-extrabold font-outfit-black text-4xl mt-8" Typo="Typo.h1"> Amir Hossein Khademi
<MudText class="text-white font-extrabold font-outfit-black text-4xl mt-8" Typo="Typo.h1">
Hesam Masoumi
</MudText>
<MudText Typo="Typo.h2" class="bg-clip-text font-extrabold font-outfit-black text-3xl text-transparent bg-gradient-to-r mb-8 from-pink-500
to-violet-500">
@ -136,7 +137,7 @@ to-violet-500">
<p class="text-white text-2xl font-bold">Experience</p>
</MudStack>
<div class="flex ml-5 flex-row">
<div class="w-0.5 bg-[#2E2E48] h-auto collapse md:visible"></div>
@* <div class="w-0.5 bg-[#2E2E48] h-auto collapse md:visible"></div> *@
<MudGrid class="md:ml-5 my-5">
@ -165,19 +166,40 @@ to-violet-500">
<p>Latest Projects</p>
</MudText>
</MudStack>
<MudStack Row="true" class="md:ml-5">
<div class="w-0.5 md:mr-10 bg-[#2E2E48] h-auto collapse md:visible"></div>
<MudGrid class="my-5" Spacing="1" Justify="Justify.Center">
<div>
@* <div class="w-0.5 mr-5 bg-[#2E2E48] h-auto collapse md:visible"></div> *@
<div>
<div class="flex relative w-full overflow-x-auto ml-5 justify-items-stretch py-3">
<div class="flex relative w-full overflow-x-auto">
<MudChipSet SelectedChipChanged="CategorySelectedChange" Filter="true">
@foreach (var item in ProjectCategoryItemModels)
{
if (categoryChipCounter == 0)
{
<MudChip Default="true" Value="@item" SelectedColor="Color.Primary"> <p>@item.Name</p> </MudChip>
}else
{
<MudChip Value="@item" SelectedColor="Color.Primary"> <p>@item.Name</p> </MudChip>
}
categoryChipCounter++;
}
</MudChipSet>
</div>
</div>
<div class="flex relative w-full overflow-x-auto ml-5 justify-items-stretch py-3">
<div class="flex relative w-full overflow-x-auto">
@foreach (var item in ProjectItemModels)
{
<MudItem xs="12" sm="6" md="6" lg="6" xl="3">
<ProjectItemTemplate Name="@item.Name" Detail="@item.Detail" ImageSrc="@item.ImageSrc"
<div class="mb-3">
<ProjectItemTemplate VideoSrc="@item.VideoSrc" Name="@item.Name" Detail="@item.Detail" ImageSrc="@item.ImageSrc"
ShowButton="@item.ShowButton" Link="@item.Link" Feilds="@item.Feilds" ButtonText="@item.ButtonText" />
</MudItem>
</div>
}
</MudGrid>
</MudStack>
</div>
</div>
</div>
</div>
@ -188,7 +210,7 @@ to-violet-500">
<p class="my-auto mx-5 text-white text-2xl font-bold">Skills</p>
</MudStack>
<MudStack Row="true" class="md:ml-5">
<div class="w-0.5 collapse md:visible md:mr-10 bg-[#2E2E48] h-auto"></div>
@* <div class="w-0.5 collapse md:visible md:mr-10 bg-[#2E2E48] h-auto"></div> *@
<MudGrid class="my-5" Spacing="1">
@foreach (var item in SkillItemModels)
{
@ -232,6 +254,18 @@ to-violet-500">
[Parameter] public List<SkillItemModel> SkillItemModels { get; set; } = ExperienceHelper.SkillItemModels;
[Parameter] public List<SkillItemModel> ToolsItemModels { get; set; } = ExperienceHelper.ToolsItemModels;
[Parameter] public List<ProjectItemModel> ProjectItemModels { get; set; } = ExperienceHelper.ProjectItemModels;
[Parameter] public List<ProjectItemModel> ProjectItemModels { get; set; } = new();
[Parameter] public List<ProjectCategoryItemModel> ProjectCategoryItemModels { get; set; } = ExperienceHelper.ProjectCategoryItemModels;
private int categoryChipCounter = 0;
private void CategorySelectedChange(MudChip obj)
{
if (obj.Value is ProjectCategoryItemModel category)
{
ProjectItemModels = new List<ProjectItemModel>();
ProjectItemModels.AddRange(category.Projects);
}
}
}

View File

@ -2,10 +2,15 @@ using Microsoft.AspNetCore.Components.Web;
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
using Resume.Blazor;
using MudBlazor.Services;
using Blazorise;
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.Add<App>("#app");
builder.RootComponents.Add<HeadOutlet>("head::after");
builder.Services.AddBlazorise(options =>
{
options.Immediate = true;
});
builder.Services.AddMudServices();
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });

View File

@ -2,6 +2,8 @@
"profiles": {
"http": {
"commandName": "Project",
"launchBrowser": true,
"hotReloadProfile": "aspnetcore",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},

View File

@ -3,15 +3,16 @@
<Exec Command="npm run buildcss" />
</Target>
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<ServiceWorkerAssetsManifest>service-worker-assets.js</ServiceWorkerAssetsManifest>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="7.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="7.0.4" PrivateAssets="all" />
<PackageReference Include="MudBlazor" Version="6.5.0" />
<PackageReference Include="Blazorise.Video" Version="1.3.3" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.0" PrivateAssets="all" />
<PackageReference Include="MudBlazor" Version="6.11.1" />
</ItemGroup>
<ItemGroup>

View File

@ -1,14 +1,18 @@
{
"name": "Resume.Blazor",
"name": "resume",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "resume",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"autoprefixer": "^10.4.14",
"postcss": "^8.4.23",
"postcss": "^8.4.31",
"postcss-cli": "^10.1.0",
"tailwindcss": "^3.3.2"
"tailwindcss": "^3.3.5"
}
},
"node_modules/@alloc/quick-lru": {
@ -392,9 +396,9 @@
}
},
"node_modules/fast-glob": {
"version": "3.2.12",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
"integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
"integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
@ -647,9 +651,9 @@
}
},
"node_modules/jiti": {
"version": "1.18.2",
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz",
"integrity": "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==",
"version": "1.21.0",
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz",
"integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==",
"bin": {
"jiti": "bin/jiti.js"
}
@ -835,9 +839,9 @@
}
},
"node_modules/postcss": {
"version": "8.4.23",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
"integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
"version": "8.4.31",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"funding": [
{
"type": "opencollective",
@ -1182,19 +1186,19 @@
}
},
"node_modules/tailwindcss": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz",
"integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==",
"version": "3.3.5",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.5.tgz",
"integrity": "sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA==",
"dependencies": {
"@alloc/quick-lru": "^5.2.0",
"arg": "^5.0.2",
"chokidar": "^3.5.3",
"didyoumean": "^1.2.2",
"dlv": "^1.1.3",
"fast-glob": "^3.2.12",
"fast-glob": "^3.3.0",
"glob-parent": "^6.0.2",
"is-glob": "^4.0.3",
"jiti": "^1.18.2",
"jiti": "^1.19.1",
"lilconfig": "^2.1.0",
"micromatch": "^4.0.5",
"normalize-path": "^3.0.0",
@ -1206,7 +1210,6 @@
"postcss-load-config": "^4.0.1",
"postcss-nested": "^6.0.1",
"postcss-selector-parser": "^6.0.11",
"postcss-value-parser": "^4.2.0",
"resolve": "^1.22.2",
"sucrase": "^3.32.0"
},

View File

@ -11,8 +11,8 @@
"license": "ISC",
"dependencies": {
"autoprefixer": "^10.4.14",
"postcss": "^8.4.23",
"postcss": "^8.4.31",
"postcss-cli": "^10.1.0",
"tailwindcss": "^3.3.2"
"tailwindcss": "^3.3.5"
}
}

View File

@ -0,0 +1 @@
{"ConfigurationFile":"tailwind.config.js","InputCssFile":null,"OutputCssFile":null}

File diff suppressed because it is too large Load Diff

View File

@ -4,17 +4,17 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>Amir Hossein Khademi | امیرحسین خادمی</title>
<title>Hesam Masoumi | حسام معصومی</title>
<base href="/" />
<link href="css/app.min.css" rel="stylesheet" />
<meta name="theme-color" content="#232339" />
<meta name="description" content="امیرحسین خادمی | Amir Hossein Khademi مهندس نرم افزار و توسعه دهنده .net">
<meta property="og:title" content="Amir Hossein Khademi | امیرحسین خادمی">
<meta property="og:description" content="امیرحسین خادمی | Amir Hossein Khademi مهندس نرم افزار و توسعه دهنده .net">
<meta name="description" content="Hesam Masoumi | حسام معصومی مهندس نرم افزار و توسعه دهنده .net">
<meta property="og:title" content="Hesam Masoumi | حسام معصومی">
<meta property="og:description" content="Hesam Masoumi | حسام معصومی مهندس نرم افزار و توسعه دهنده .net">
<meta property="og:url" content="https://amir-khademi.ir">
<meta name="twitter:title" content="Amir Hossein Khademi | امیرحسین خادمی">
<meta name="twitter:description" content="امیرحسین خادمی | Amir Hossein Khademi مهندس نرم افزار و توسعه دهنده .net">
<meta name="twitter:title" content="Hesam Masoumi | حسام معصومی">
<meta name="twitter:description" content="Hesam Masoumi | حسام معصومی مهندس نرم افزار و توسعه دهنده .net">
<meta name="twitter:url" content="https://mucut.ir">
<meta name="twitter:card" content="summary_large_image">