This is a login system built using Swift and Firebase . This system includes user registration, login, forgotten password and email verification features. In addition, the main page displays a list of registered users, displays their email verification status, logged in user profiles. there is a feature to search using name and email, then there is a filter feature based on email verification.
1. USER REGISTRATION:
- Users can create a new account by providing their full name, email address, and password.
2. EMAIL VERIFICATION:
- After registration, the system will send a verification email to the user. Users must verify their email address before they can log in.
3. LOGIN:
- Users who have registered and verified can log in with their email address and password.
4. FORGOT PASSWORD:
-
Users can reset their password if they forget it by sending a password reset email.
video.1.1.mov
5. USER LIST:
- The main page displays their accounts and a list of registered users, displaying their email verification status.
6. SEARCHING USERS:
- This feature can be used to search for registered users via full name and email.
7. USER FILTERS: *This feature can be used to filter the list of users according to their email verification status.
8. USER SIGN OUT:
-
This feature can be used to signout from the aplication
video.2.1.mov
- To running this project in the xcode, ensure that you have at least the following software:
- Xcode 15.2 (or later).
- Clone this repository to your Xcode project.
- After you have finished cloning this repository, enter Xcode and wait a few moments until the Firebase SDK installation process is complete
- To run this application on the simulator, make sure your simulator has at least iOS 16.0. run the simulator and the application is ready to use
1. User Registration
-
To register a new user, you can use the registration form and enter your full name, email address and password and confirm the password, the minimum password is 6 characters. After completing the form, the system will send a verification email to the email address provided.
2. Email Verification
-
After registration, you must verify their email address before you can log in, otherwise you will not be able to log in. The system will send a verification email containing a link to verify the email address. Click the link provided and wait until a web page appears stating successful verification
3. Login
-
After registering and verifying their email, registered users can log in using their email address and password. The system will check the credential match and allow access if the data is correct. jika password atau email salah maka sistem akan menampilkan warning
4. Forgot Password
-
If a user forgets their password, you can use the "Forgot Password" option to reset their password. The system will send a password reset email to the user's email address. To reset the password, click the link provided and a form will appear to enter a new password, type the new password and save, wait until a notification appears that the password has been successfully updated
5.Home Page
-
On this page there are 2 sections, the first is a section that provides information about your account, or the account that is currently logged in
-
a. Profile image created from the initials of the full name
-
b. User's full name
-
c. User email
-
d. Email verification status
-
e. SignOut button
-
-
then the second section is the section which contains information on all the lists of users registered in the system, the cards in this section display some of the data there is a profile image created from the initials of the full name.
6. Searching images
-
There is a search form that can be used to search a list of users, this search can use full names or email.
7. Filter
-
in the second section, there is a filter with a tab view segmentation style, this tab will automatically filter according to the user's email verification status, there are 3 options, namely all users, users who have verified, and users who have not verified
8. Sign Out
- On the first home section page there is a button to sign out, click the button to sign out