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 Management:
- Registration, login, and secure authentication.
- User profile management.
-
Expense Tracking:
- Add, view, and categorize expenses.
- Generate detailed expense reports.
-
User-Friendly Interface:
- Intuitive design for seamless navigation.
- Enhanced user experience with responsive layouts.
-
Flexible Codebase:
- Implemented the Factory Design Pattern for better code flexibility and maintainability.
-
Advanced Functionality:
- Integrated job scheduling for automating recurring tasks.
- Third-party email messaging services for sending notifications and updates.
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
Get started with EchoWrite by watching our introductory video:
Untitled.design.mp4
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/LaraSamara/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
.
This project is licensed under the MIT License - see the LICENSE file for details.