Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sararasoulian/dotnet-webapi-vue-portfolio

⚡ A portfolio website built using ASP.NET Core Web API and Vue JS
https://github.com/sararasoulian/dotnet-webapi-vue-portfolio

docker dotnet dotnet-core fullstack-application portfolio-website postgresql restful-api single-page-applications vue

Last synced: about 13 hours ago
JSON representation

⚡ A portfolio website built using ASP.NET Core Web API and Vue JS

Awesome Lists containing this project

README

        

Personal Portfolio Website ⚡

A portfolio website with admin panel. The backend is built with **ASP.NET Core Web API**, the frontend with **Vue JS**, and the database with **PostgreSQL**.

This is a __learning project__ and it showcases the implementation of several software development practices such as clean architecture, design patterns and test-driven development.

In a real-world scenario, these practices should be chosen based on the specific requirements of each project.


Demo 🚀

Home page

![Home -](https://github.com/SaraRasoulian/DotNet-Vue-Portfolio-Website/assets/51083712/b2872aeb-51c0-4452-8e6d-f7df9892b33c)

Admin panel

![Admin new](https://github.com/SaraRasoulian/DotNet-Vue-Portfolio-Website/assets/51083712/dbd59886-8985-4481-8e93-1dedbf5b2219)

Admin Panel Sections

* Profile
* Experiences
* Educations
* Social links
* Messages
* Login
* Change password

Screenshots of Admin Panel 📸

![Login page](https://github.com/SaraRasoulian/.Net-Vue-Portfolio/assets/51083712/a323b561-3f06-4b10-9335-6c9579960bec)

![Social links page](https://github.com/SaraRasoulian/.Net-Vue-Portfolio/assets/51083712/8e4fbea7-fe34-4f85-b73f-3f0145085dfb)

![Messages page](https://github.com/SaraRasoulian/.Net-Vue-Portfolio/assets/51083712/e92fd6a6-6ea2-422b-813c-0f8bad2c119d)

![Admin panel - Mobile](https://github.com/SaraRasoulian/.Net-Vue-Portfolio/assets/51083712/81ad5b85-9777-4108-b9e9-8a2b6abb9845)

Tech Stack 🛠️

- ### Back End
- ASP.NET Core Web API
- .NET -v7
- Entity Framework Core -v7
- Mapster -v7 for object mapping
- JWT (JSON Web Token)
- Clean Architecture
- Repository Service Pattern
- Unit of Work Pattern
- TDD (Test-Driven Development)
- FakeItEasy for mocking & fake data generating
- xUnit for unit and integration testing
- Testcontainers for integration testing
- Fluent Assertions

- ### Front End
- Vue JS -v3 (Vite-based)
- Bootstrap -v5 for admin panel UI
- Axios for API calls
- Vuelidate for client-side validation
- Vue-toastification for notifications
- Skeleton for home page UI
- HTML -v5
- CSS -v3

- ### Database
- PostgreSQL -v15
- Database built via Entity framework migrations (code-first approach)

- ### IDE
- Visual Studio 2022 -v17 for back end development
- Visual Studio Code for front end development

Assets 🗃️

To download the project's UI/UX design file [click here](https://github.com/SaraRasoulian/DotNet-Vue-Portfolio-Website/files/14462479/Home.Page.Admin.Panel.zip).
Adobe XD software is required for viewing.

To download the project's database design file [click here](https://github.com/SaraRasoulian/.Net-Vue-Portfolio/files/14537053/Portfolio-Database-Design.pdf).

Contributions 🤝


Contributions are appreciated. If you identify areas for improvement, please feel free to create an issue or submit a pull request. For any questions or suggestions, please create an issue.