-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Nikhil Karmakar edited this page Sep 1, 2024
·
1 revision
SignInXert is a basic authentication and login system built using Tkinter in Python. It provides functionalities for user login, account creation, and profile management. The application demonstrates the use of object-oriented programming (OOP) to manage multiple pages and frames, making it suitable for social or e-commerce applications.
- Login System: Allows users to log in using UID and password.
- Account Creation: Enables the creation of new user accounts by providing full name, email, age, and password.
- Verification: Verifies the correctness of the provided user data.
- GUI Interface: Built with Tkinter for a user-friendly interface.
- Configuration Management: Supports modifying application settings such as background color and window geometry through a JSON configuration file.
- Data Caching: Maintains a cache of logged-in user data to streamline user experience.
- Logout Functionality: Allows users to log out and properly manage session data.
./ {Root}
├── main.py {Driver code. Calls SignInXert}
├── util/ {Information for README.md}
├── src
│ ├── SignInXert.py {Main application}
│ ├── UserDataBank.py
│ ├── __init__.py {!NOT DEFINED}
│ ├── lib/ {Custom modules}
│ ├── icon/ {Icons}
│ ├── cache/ {Logged-in user data}
│ ├── logs/
│ ├── info/
│ ├── example/ {Test projects, not part of the application}
│ ├── database/
│ ├── config/ {JSON configuration files}
├── LICENSE
├── README.md
├── .gitignore
-
UserDataBank: Manages user data storage and retrieval using the
lib.FileAccessmodule. - SignInXert: The core application handles routing and controls different pages (LoginPage, HomePage, etc.).
-
Initialization: The application checks for a logged-in user on startup. If a user is logged in, it displays the
HomePage; otherwise, it shows theLoginPage.
- Create Account: Users without an account can create one by clicking the provided button.
- Expand the application with additional features and improvements.
- Enhance the user interface and add more functionalities based on user feedback.
This project is licensed under the MIT License. See the LICENSE file for details.
For detailed documentation and updates, please refer to the Wiki on GitHub (to be created).