Project Unit 7 (Over) 48-62
Project Unit 7 (Over) 48-62
7.CONCLUSION
It is critical to examine the platform and technologies that will be utilised, as well as
the security and privacy of user data, while designing an expenditure tracker app. Testing and
user input should also be considered to guarantee that the app satisfies its users' demands and
performs effectively.
Ultimately, with proper preparation and execution, a cost tracker software may be a
significant asset to those trying to gain financial control and make informed decisions about
their spending habits.
FUTURE ENHANCEMENTS
48
Sharing and collaboration: Users may be able to share their costs and budgets with
family members, roommates, or partners so that everyone is on the same page and
avoids repeated expenses.
Tax preparation: The app might include features to assist users in preparing for tax
season, such as tracking deductible spending and creating tax summaries.
Customized suggestions: Based on users' spending habits and financial goals, the
app might employ machine learning to deliver customised advice for saving money,
lowering costs, or increasing income.
Automatic budgeting: uses machine learning to increase savings and anticipate
budgets for the coming months, as well as to inspire people to set goals for
themselves.
49
BIBLIOGRAPHY
Websites Referred:
https://goodbudget.com/
https://mint.intuit.com/
https://www.youneedabudget.com/
50
APPENDIX A -SCREENSHOT
FIGURE A(1.1)
51
FIGURE B(1.2)
52
FIGURE-C(1.3)
53
FIGURE-D(1.4)
54
APPENDIX B - SAMPLE CODING
APP.MODULE.TS
@NgModule({
declarations: [
AppComponent,
LoginComponent,
HomeComponent,
ToasterComponent,
ChartComponent
],
imports: [
55
BrowserModule,
AppRoutingModule,
FormsModule,
ReactiveFormsModule,
AngularFireModule.initializeApp({
apiKey: "AIzaSyDi0I2sNNggKteJUtQVC_WNrBnVRvOVfis",
authDomain: "expenses-management-cf3b9.firebaseapp.com",
projectId: "expenses-management-cf3b9",
storageBucket: "expenses-management-cf3b9.appspot.com",
messagingSenderId: "588510704156",
appId: "1:588510704156:web:2f43fc9f21290e7b9e65d9"}),
AngularFireAuthModule,
NgChartsModule
],
providers: [],
bootstrap: [AppComponent]
})
PACKAGE.JSON
"name": "my-expenses",
56
"version": "0.0.0",
"scripts": {
"ng": "ng",
},
"private": true,
"dependencies": {
"@angular/animations": "^15.1.0",
"@angular/common": "^15.1.0",
"@angular/compiler": "^15.1.0",
"@angular/core": "^15.1.0",
"@angular/fire": "^7.5.0",
"@angular/forms": "^15.1.0",
"@angular/platform-browser": "^15.1.0",
"@angular/platform-browser-dynamic": "^15.1.0",
"@angular/router": "^15.1.0",
"animate.css": "^4.1.1",
"firebase": "^9.15.0",
"ng2-charts": "^4.1.1",
"rxjs": "~7.8.0",
"tslib": "^2.3.0",
57
"zone.js": "~0.12.0"
},
"devDependencies": {
"@angular-devkit/build-angular": "^15.1.1",
"@angular/cli": "~15.1.1",
"@angular/compiler-cli": "^15.1.0",
"@types/jasmine": "~4.3.0",
"jasmine-core": "~4.5.0",
"karma": "~6.4.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage": "~2.2.0",
"karma-jasmine": "~5.1.0",
"karma-jasmine-html-reporter": "~2.0.0",
"typescript": "~4.9.4"
58
APP.COMPONENTS.TS
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
title = 'my-expenses';
message: Object = {}
this.auth.getCurrentUser.subscribe(user => {
console.log('user',user)
if(user){
this.router.navigate(['/'])
} else {
this.router.navigate(['/login'])
59
})
this._toaster.getToasterMessage.subscribe(toaster => {
if(toaster.text){
this.message = toaster
setTimeout(() => {
(document.querySelector('.ngrj-message')
HTMLInputElement).classList.remove('animate__fadeIn');
(document.querySelector('.ngrj-message')
HTMLInputElement).classList.add('animate__fadeOut');
setTimeout(() => {
_this.message = {}
}, 1000)
}, 3000)
})
ngOnInit() {
60
APPENDIX C – TECHNOLOGY/ SOTWARE
Android Studio provides developers with a comprehensive set of tools for building
high-quality Android apps, including a visual layout editor, a code editor, a debugger, and an
emulator. It supports various programming languages such as Java, Kotlin, and C++.
Developers can use Android Studio to create new projects, import existing projects,
and build and deploy their apps on Android devices or emulators. It also includes a range of
features to help with testing and debugging, such as a profiler, a memory monitor, and a
network profiler.
Android Studio is available for free on Windows, macOS, and Linux platforms, and it
receives regular updates with new features and bug fixes. It is an essential tool for any
developer looking to build high-quality Android apps.
ANGULARJS FRAMEWORK:
61
One of the key features of AngularJS is its dependency injection system, which makes it
easier to manage and test code by allowing developers to inject dependencies into
components rather than hard-coding them. This helps to reduce code duplication and improve
the overall maintainability of the application. AngularJS has since been superseded by
Angular, also known as Angular 2+, which is a complete rewrite of the original framework.
However, many applications still use AngularJS, and it remains a popular choice for building
complex, dynamic web applications.
FIREBASE DATABASE:
One of the key features of Firebase is its real-time database, which allows developers to store
and sync data in real-time across multiple clients. This enables the creation of real-time
collaborative applications such as chat apps, multiplayer games, and collaborative document
editors. Firebase also provides authentication services, allowing developers to easily add
secure user authentication to their applications using email and password, social media
accounts, and other popular authentication providers. Other features of Firebase include cloud
functions, which allow developers to run backend code in response to events triggered by
client-side code, and hosting, which provides a fast and secure content delivery network for
web applications. Firebase provides a free tier for developers to get started, with additional
paid features and usage-based pricing for larger applications. It has become a popular choice
for developers looking for an easy-to-use, scalable platform to build their applications on.
62