@@ -4,11 +4,28 @@ This is a simple E-Wallet application that can be accessed via USSD interface. T
4
4
5
5
## Table of Contents
6
6
7
- - [ Technologies] ( #Technologies )
8
- - [ Features] ( #Features )
9
- - [ Installation] ( #Installation )
10
- - [ Testing] ( #Testing )
11
- - [ interaction] ( #interaction )
7
+ - [ Technologies] ( #technologies )
8
+ - [ Features] ( #features )
9
+ - [ Account-Creation] ( #account-creation )
10
+ - [ Top-Up] ( #top-up )
11
+ - [ Withdraw] ( #withdraw )
12
+ - [ Check-Balance] ( #check-balance )
13
+ - [ Request-Statement] ( #request-statement )
14
+ - [ Reactivate-Account] ( #reactivate-account )
15
+ - [ Deactivate-Account] ( #deactivate-account )
16
+ - [ Installation] ( #installation )
17
+ - [ Testing] ( #testing )
18
+ - [ Continuous-Integration-Continuous-Deployment] ( #continuous-integration-continuous-deployment )
19
+ - [ Application-Design] ( #application-design )
20
+ - [ Database-Design] ( #database-design )
21
+ - [ User-Registration-Sequence] ( #user-registration-sequence )
22
+ - [ Account-Activation-Sequence] ( #account-activation-sequence )
23
+ - [ Account-Deactivation-Sequence] ( #account-deactivation-sequence )
24
+ - [ Account-Topup-Sequence] ( #account-topup-sequence )
25
+ - [ Account-withdraw-Sequence] ( #account-withdraw-sequence )
26
+ - [ Account-Balance-Request-Sequence] ( #account-balance-request-sequence )
27
+ - [ Account-Statement-Request-Sequence] ( #account-statement-request-sequence )
28
+ - [ User-Initiated-C2B-Topup-Sequence] ( #user-initiated-c2b-topup-sequence )
12
29
- [ License] ( #license )
13
30
14
31
## Technologies
@@ -47,68 +64,118 @@ To install and run the application, follow these steps:
47
64
48
65
The application was developed using a test-driven approach, and tests are included in the ` tests ` folder. To run the tests, execute ` poetry run flask test ` from the command line.
49
66
50
- ## Continuous Integration/ Continuous Deployment
67
+ ## Continuous- Integration- Continuous- Deployment
51
68
52
69
The application is deployed to an AWS EC2 instance using a CI/CD pipeline with GitHub Actions. The pipeline automatically tests and deploys the application whenever code is pushed to the ` main ` branch. The configuration for the pipeline can be found in the ` .github/workflows/deploy.yml ` file.
53
70
54
71
## How It Works
55
72
56
- ### Account Creation
73
+ ### Account- Creation
57
74
58
- When a user dials the USSD code, they are prompted to create an account by entering their name and phone number .
75
+ When a user dials the USSD code, they are prompted to create an account by entering their username .
59
76
60
- ![ Account Creation] ( screenshots/create_account.gif )
77
+ <div style =" display :flex ; gap :2rem ;" >
78
+ <img style =" max-width :200px ;" src =" ./screenshots/reg3.jpg " />
79
+ <img style =" max-width :200px ;" src =" ./screenshots/reg2.jpg " />
80
+ <img style =" max-width :200px ;" src =" ./screenshots/reg1.jpg " />
61
81
62
- ### Top Up
82
+ </div >
83
+
84
+ ### Top-Up
63
85
64
86
Users can top up their wallet by entering the amount they wish to add.
65
87
66
- ![ Top Up] ( screenshots/top_up.gif )
88
+ <div style =" display :flex ; gap :2rem ;" >
89
+ <img style =" max-width :200px ;" src =" ./screenshots/top1.jpg " />
90
+ <img style =" max-width :200px ;" src =" ./screenshots/top2.jpg " />
91
+ <img style =" max-width :200px ;" src =" ./screenshots/top3.jpg " />
92
+ <img style =" max-width :200px ;" src =" ./screenshots/top4.jpg " />
93
+
94
+ </div >
67
95
68
96
### Withdraw
69
97
70
98
Users can withdraw money from their wallet by entering the amount they wish to withdraw.
71
99
72
- ![ Withdraw] ( screenshots/withdraw.gif )
100
+ <div style =" display :flex ; gap :2rem ;" >
101
+ <img style =" max-width :200px ;" src =" ./screenshots/with1.jpg " />
102
+ <img style =" max-width :200px ;" src =" ./screenshots/with2.jpg " />
103
+ <img style =" max-width :200px ;" src =" ./screenshots/drw3.png " />
104
+ </div >
73
105
74
- ### Check Balance
106
+ ### Check- Balance
75
107
76
108
Users can check their wallet balance by selecting the balance option from the menu.
77
109
78
- ![ Check Balance] ( screenshots/check_balance.gif )
110
+ <div style =" display :flex ; gap :2rem ;" >
111
+ <img style =" max-width :200px ;" src =" ./screenshots/balance1.jpg " />
112
+ <img style =" max-width :200px ;" src =" ./screenshots/balance.jpg " />
113
+ <img style =" max-width :200px ;" src =" ./screenshots/balance_sms.jpg " />
114
+ </div >
79
115
80
- ### Request Statement
116
+ ### Request- Statement
81
117
82
118
Users can request for their transaction statement by selecting the statement option from the menu.
83
-
84
- ![ Request Statement] ( screenshots/request_statement.gif )
85
-
86
- ## Application Desing.
87
-
88
- ### Database Design
89
- ![ database-design] ( design/db.png )
90
- ### User Registration Sequence
91
- ![ register] ( design/register.png )
92
- ### Account Activation Sequence
93
- ![ register] ( design/activate.png )
94
-
95
- ### Account Deactivation Sequence
96
- ![ deactivate] ( design/deactivation.png )
97
-
98
- ### Account Topup Sequence
99
- ![ register] ( design/topup.png )
100
-
101
- ### Account withdraw Sequence
102
- ![ register] ( design/withdraw.png )
103
-
104
- ### Account Balance Request Sequence
105
- ![ register] ( design/balance.png )
106
-
107
- ### Account Statement Request Sequence
108
- ![ register] ( design/statement.png )
109
-
110
- ### User Initiated C2B Topup Sequence
111
- ![ register] ( design/c2b.png )
119
+ <div style =" display :flex ; gap :2rem ;" >
120
+ <img style =" max-width :200px ;" src =" ./screenshots/stat1.jpg " />
121
+ <img style =" max-width :200px ;" src =" /screenshots/stat2.jpg " />
122
+ </div >
123
+
124
+ ### Reactivate-Account
125
+
126
+ Users can request for account reactivation
127
+ <div style =" display :flex ; gap :2rem ;" >
128
+ <img style =" max-width :200px ;" src =" ./screenshots/activate1.jpg " />
129
+ <img style =" max-width :200px ;" src =" ./screenshots/top3.jpg " />
130
+ <img style =" max-width :200px ;" src =" ./screenshots/activated_sms.jpg " />
131
+ </div >
132
+
133
+ ### Deactivate-Account
134
+
135
+ Users can request for account deactivation at will
136
+ <div style =" display :flex ; gap :2rem ;" >
137
+ <img style =" max-width :200px ;" src =" ./screenshots/deactivate.jpg " />
138
+ <img style =" max-width :200px ;" src =" ./screenshots/deactivated.jpg " />
139
+ <img style =" max-width :200px ;" src =" ./screenshots/deactivated_sms.jpg " />
140
+ </div >
141
+
142
+ ## Application-Design
143
+
144
+ ### Database-Design
145
+ <!--  -->
146
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/db.png " />
147
+
148
+ ### User-Registration-Sequence
149
+ <!--  -->
150
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/register.png " />
151
+
152
+ ### Account-Activation-Sequence
153
+ <!--  -->
154
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/activate.png " />
155
+
156
+ ### Account-Deactivation-Sequence
157
+ <!--  -->
158
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/deactivation.png " />
159
+
160
+ ### Account-Topup-Sequence
161
+ <!--  -->
162
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/topup.png " />
163
+
164
+ ### Account-withdraw-Sequence
165
+ <!--  -->
166
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/withdraw.png " />
167
+
168
+ ### Account-Balance-Request-Sequence
169
+ <!--  -->
170
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/balance.png " />
171
+
172
+ ### Account-Statement-Request-Sequence
173
+ <!--  -->
174
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/statement.png " />
175
+
176
+ ### User-Initiated-C2B-Topup-Sequence
177
+ <!--  -->
178
+ <img width =" 400 " style =" max-width :100% ;" src =" ./design/c2b.png " />
112
179
113
180
## License
114
181
0 commit comments