Walletify is a financial management web application built using ASP.NET Core. It allows users to track their savings, set financial goals, and manage transactions effectively. The application leverages the Model-View-Controller (MVC) pattern and integrates with Identity for user management and authentication.
- Features
- Project Structure
- Technologies Used
- Installation
- Database Setup
- Running the Application
- License
- User Authentication & Authorization: Integrated with ASP.NET Identity for secure user authentication.
- Financial Management: Users can update financial information, track their savings and set target goals.
- Transaction History: Dashboard to view the most recent transactions and overall account status.
- Responsive Design: Optimized for both desktop and mobile users.
The project structure is organized as follows:
Walletify/
├── .vs/ # Visual Studio configuration files
├── DB_Design/ # Database design documents
├── Walletify/ # Main application directory
│ ├── ApplicationDbContext/ # Entity Framework DB context
│ ├── Controllers/ # ASP.NET Core MVC controllers
│ ├── DependencyInjection/ # Custom dependency injection classes
│ ├── Migrations/ # Entity Framework migrations
│ ├── Models/ # Entity models for database
│ ├── Repositories/ # Data access layer
│ ├── ViewModel/ # View models for data binding in views
│ ├── Views/ # Razor views (UI)
│ └── wwwroot/ # Static files (CSS, JavaScript, Images)
- Framework: ASP.NET Core 8.0
- Frontend: Razor Views, Bootstrap, jQuery
- Database: Entity Framework Core with SQL Server
- Authentication: ASP.NET Identity
- Dependency Injection: Custom service registration for repositories
- Version Control: Git
Ensure you have the following installed:
- .NET SDK 8.0
- SQL Server
- Visual Studio 2022 with ASP.NET and web development workloads
-
Clone the repository:
git clone https://github.com/ahmadhamarsheh/Walletify.git cd walletify/Walletify
-
Install dependencies:
Run the following command to restore the required NuGet packages:
dotnet restore
-
Configure the connection string: Open
appsettings.json
in theWalletify
project and update the connection string for your SQL Server instance:"ConnectionStrings": { "DefaultConnection": "Server=your_server;Database=WalletifyDB;Trusted_Connection=True;MultipleActiveResultSets=true" }
-
Apply Migrations: Use the following command to apply the Entity Framework migrations and set up the database:
add-migration nameOfMigrate update-database
-
Build the project:
dotnet build
-
Run the application:
dotnet run
-
Open your browser and navigate to
http://localhost:5000
.