Skip to content
/ Sparkle Public

πŸš—πŸ§Ό Sparkle - is a modern C# Windows Forms application designed to manage Clients, users, and cleaning orders for both cars and carpets, all stored and handled efficiently using text files (.txt)

Notifications You must be signed in to change notification settings

7mee3d/Sparkle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

114 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌟 Sparkle – Smart Cleaning Services Management System


C# .NET .NET Framework Windows Forms Visual Studio File System Guna UI2 WinForms


πŸ“Œ Overview

Sparkle is an all-in-one management system designed for carpet cleaning and car wash businesses.
It empowers small-to-medium enterprises to automate daily operations β€” from client registration and order creation to user management, login tracking, and reporting β€” all through an intuitive, secure, and modern interface.

Built with C# on .NET Framework (Windows Forms) and enhanced with Guna UI2, Sparkle uses structured text files for data storage, making it lightweight, easy to deploy, and ready for future migration to SQL databases.

πŸ“Έ Project Preview

You can watch the full project explanation in the video:

YouTube


πŸš€ Key Features

1. πŸ§‘β€πŸ’Ό Client Management

  • Add new clients with real-time validation (name, email, phone, address).
  • View all clients in a searchable list by ID.
  • Safely edit or delete client records with confirmation prompts.
  • Prevent ID duplication to ensure data integrity.

2. πŸ“‹ Order Management

Two service types:

🧺 Carpet Cleaning:

  • Size (Small / Medium / Large)
  • Wash Type (Normal / Deep)
  • Add-ons: Quick Drying (+$5), Home Delivery (+$15)

πŸš— Car Wash:

  • Size (Small / Medium / Large)
  • Service: Full Wash ($30) or Custom (Exterior, Interior, Engine Cleaning, Polishing)
  • Auto-calculated pricing based on selections.
  • Visual final invoice before confirmation.
  • Orders stored in separate files for better organization.

3. πŸ‘€ User & Permission Management

  • Create users with flexible access levels:
    • πŸ”“ Full Access: All system sections unlocked.
    • πŸ” Custom Permissions: Toggle access to 9 individual modules (Orders, Clients, Users, History, etc.).
  • Admin account is protected from deletion or modification.
  • Password encryption during storage (simple Caesar cipher).
  • Auto-generate random passwords if none provided.

4. πŸ” Smart Search & Tracking

  • Search clients, orders, or users by ID or username.
  • Highlight matching records in lists for instant visibility.
  • View login history with decrypted passwords (for admin review only).

5. πŸ“Š Modern & Responsive UI

  • Sleek design using Guna UI2 with consistent teal & white theme.
  • Visual dividers and animated elements for better UX.
  • Real-time input validation with ErrorProvider & CorrectProvider.
  • Balloon notifications (NotifyIcon) for key actions (e.g., β€œOrder Added Successfully!”).

6. πŸ’Ύ Smart Local Storage

  • Organized text files with custom delimiters:
    • ;||; β†’ Clients
    • &&//&& β†’ Carpet Orders
    • #|||# β†’ Car Orders
    • || β†’ Users
  • Files auto-created if missing.
  • Data structure designed for easy SQL migration later.

πŸ›‘οΈ Quality Assurance

βœ… Input Validation

  • No letters in numeric fields (phone, ID).
  • No digits in text fields (name, address).
  • Valid email formats only (@gmail.com, @outlook.com, etc.).

βœ… Logical Safeguards

  • Prevents Admin deletion.
  • Blocks duplicate IDs/usernames.
  • Requires full form completion before submission.

βœ… Stability

  • Gracefully handles missing data files.
  • Clean reset & refresh mechanisms.

βœ… User Experience

  • Instant feedback.
  • Clear error messages.
  • Intuitive workflow.

🎯 Target Audience

  • Small car wash centers πŸš—
  • Home-based carpet cleaning services 🧺
  • Computer Science / IT graduation projects πŸ’»
  • Entrepreneurs seeking a simple, digital solution for service businesses πŸ’Ό

πŸ“¦ Tech Stack

  • Language: C#
  • Framework: .NET Framework (Windows Forms)
  • UI Library: Guna UI2
  • Storage: Structured text files (upgrade-ready to SQL)
  • Security: Basic password encryption

πŸ’‘ Why Sparkle?

Sparkle isn’t just software β€” it’s your digital partner to transform paper-based chaos into a smart, scalable, and professional system.
It saves time, reduces errors, and boosts your business credibility β€” one clean order at a time.

✨ β€œClean your business before you clean your carpets!”
β€” The Sparkle Development Team


🧹 Section: New Order Creation System

🎯 Main Purpose

Enables users to create new orders for carpet cleaning or car wash services through an intelligent, all-in-one interface.
The system automatically calculates prices, validates input data, and generates a final invoice before saving β€” all in a single, smooth, and secure process.


✨ Key Features

πŸ”„ Smart Switching Between Carpet & Car Services

  • Radio buttons (Carpets / Cars) dynamically adjust the interface to show relevant fields for each service.
  • Sections appear or hide automatically based on the selected option.
  • Visual icons enhance usability and clearly indicate the chosen service type.

πŸ’° Accurate Automatic Price Calculation

  • For Carpets:
    • Based on size (Small, Medium, Large), wash type (Standard, Deep), extra services (Quick Dry, Home Delivery), and quantity.
  • For Cars:
    • Based on size (Small, Medium, Large), wash type (Full or Custom), and extras (Exterior/Interior wash, Engine Cleaning, Polishing).
  • The total price is displayed instantly and updates automatically with every change.

πŸ“‹ Intelligent Input Form with Real-Time Validation

  • All fields are required β€” submission is disabled unless all inputs are valid.
  • Live validation while typing:
    • πŸ“ Names & Addresses: Do not accept numbers.
    • πŸ“ž Phone Numbers: Accept digits only.
    • πŸ“§ Email: Must contain a valid provider (@gmail.com, @outlook.com, etc.).
  • Uses ErrorProvider and CorrectProvider for immediate visual feedback.

🧾 Final Invoice Preview Before Saving

  • Clicking β€œAdd New Order” opens a final invoice window showing:
    • πŸ†” Order ID
    • πŸ‘€ Client Information
    • πŸ“¦ Service Details (size, type, extras)
    • πŸ’΅ Total Price (highlighted and clearly visible)
  • After confirmation β†’ the order is saved to a text file and the next order ID is auto-generated.

πŸ—‘οΈ Safe Reset Function

  • The β€œReset” button clears all fields and selections without data loss.
  • Restores the interface to its default state, ready for a new entry.

πŸ–ŒοΈ Consistent and Modern Visual Design

  • A vertical divider separates client information from service details for better visual clarity.
  • Consistent Sparkle theme colors (light green + white).
  • The total price is displayed in a colored box beside the service details.

πŸ›‘οΈ Quality & Performance Assurance

βœ… Secure Sequencing
Order IDs are auto-generated as the highest existing value + 1, preventing duplicates.

βœ… System Stability
If the orders file doesn’t exist, it’s automatically created β€” ensuring smooth operation.

βœ… Scalability
The architecture supports future database integration without requiring major UI or logic changes.

βœ… Excellent User Experience

  • Clear, instructive messages
  • Confirmation dialogs
  • Clean, visually organized layout
  • Full compatibility with Guna UI2

πŸ’‘ This module is the operational core of the Sparkle system, combining flexibility, precision, and safety in the order creation process β€” making it a fundamental component of service management.


πŸ“Œ Technical Note
Orders are stored in two separate local text files:

  • CarpetsOrders.txt β€” for carpet cleaning requests
  • CarOrders.txt β€” for car wash requests

Each file uses custom separators (&&//&& and #|||#) for structured data organization.


πŸ“‹ Section: Show All Orders

🎯 Main Purpose

To display all orders registered in the "Sparkle" system β€” whether for Carpet Cleaning or Car Wash β€” inside a structured and dynamic table.
The user can quickly search by Order ID, switch between order types with ease, and view detailed order information clearly.


✨ Key Features

πŸ” Instant Search by Order ID

  • Allows searching for any order by entering its unique ID.
  • When found:
    • ⭐ The corresponding row highlights in yellow.
    • 🎯 The table automatically scrolls and focuses on that order.
    • πŸ›ŽοΈ A success notification appears.
  • If not found β†’ a clear error message guides the user.

πŸ”„ Smart Switching Between Orders (Carpets / Cars)

  • Radio buttons (Carpets / Cars) dynamically switch the table view between both order types.
  • Table columns change automatically depending on the selected service.
  • Visual icons clarify the selected category to enhance the user experience.

πŸ“Š Organized Orders Table Display

  • Orders are loaded from two separate data files:
    • CarpetsOrders.txt β€” for carpet cleaning orders.
    • CarOrders.txt β€” for car wash orders.
  • Each service has its own data structure:
    • Cars: Car number, model, size, services, total price, etc.
    • Carpets: Size, washing type, extra services, number of carpets, total price, etc.

πŸ” Auto Refresh After Any Operation

  • Whenever a new order is added, the list auto-refreshes upon reloading the section.
  • The system recounts total orders and displays them in a small status bar next to the document icon.

πŸ–ŒοΈ Polished Visual Design

  • A decorative separator line between title and table for visual organization.
  • Colors aligned with Sparkle’s branding (Light Green + White).
  • Displays total number of orders beside the record/document icon.

πŸ›‘οΈ Quality and Performance Guarantees

βœ… Security:
No operation (Edit/Delete) can be executed without clear mode selection, preventing accidental actions.

βœ… Stability:
If an order file does not exist, it is automatically created without system crashes.

βœ… Scalability:
Code structure is ready for future database integration without major interface changes.

βœ… User Experience:

  • Clear confirmation dialogs.
  • Informative messages.
  • Consistent table layout.
  • Full support for Windows Forms interface.

πŸ’‘ This section acts as the core interaction point for order management β€” combining viewing, searching, and switching β€” forming the backbone of the order management system.


πŸ“Œ Technical Note

All order data is stored in two separate text files:

  • CarpetsOrders.txt β†’ Carpet cleaning orders
  • CarOrders.txt β†’ Car wash orders
    Each file uses custom delimiters (&&//&& and #|||#) to organize data efficiently.

πŸ§‘β€πŸ’Ό Section: Client Addition Management

🎯 Main Purpose

Enables users to register new clients in the Sparkle system through a secure and user-friendly interface, ensuring data validity and logical consistency before saving.

✨ Key Features

πŸ”’ Smart Auto-Increment ID Generation

  • Automatically generates a unique ID based on the last stored value in the file.
  • Prevents entering or duplicating existing IDs, ensuring data integrity.

πŸ“‹ Intelligent Input Form with Real-Time Validation

  • All fields are required (Name, Address, Email, Phone).
  • Live validation while typing:
    • πŸ“§ Email: Only accepts addresses from approved providers (@gmail.com, @outlook.com, @yahoo.com, @hotmail.com).
    • πŸ“ž Phone Number: Accepts numbers only β€” rejects any letters or symbols.
  • Uses ErrorProvider and CorrectProvider to show instant visual feedback to the user.

πŸ’Ύ Reliable Local Data Storage

  • Data is saved in a structured text file:
    InformationClients.txt
  • Each client is stored in a single line, using a custom separator: ;||;
    (Example: 101;||;Crasto;||;USA;||;Crasto@example.com;||;32442213455)

πŸ›ŽοΈ Enhanced User Experience

  • Upon successful client addition:
    • Displays a balloon tip notification with operation details.
    • Clicking the notification opens the data folder directly in Windows Explorer.
  • After saving, the form automatically resets and is ready for a new client entry.

🧹 Automatic Cleanup & Maintenance

  • The β€œReset” button (handled internally) clears all fields and removes any error messages.
  • Keeps the interface clean and distraction-free after every operation.

πŸ›‘οΈ Quality Assurance

  • βœ… Prevents empty fields
  • βœ… Validates email format
  • βœ… Ensures phone number contains digits only
  • βœ… Avoids duplicate IDs
  • βœ… Maintains stability even if the data file is missing (auto-creates when needed)

πŸ“‹ Section: Clients List

🎯 Main Purpose

Displays all registered clients in the Sparkle system in a clean, well-organized, and easy-to-navigate interface β€” with options to search by ID, view client details, and delete records when needed.


✨ Key Features

πŸ” Instant Search by Client ID

  • Allows users to find a specific client by entering their unique ID.
  • When a client is found:
    • ⭐ The corresponding row is highlighted in yellow.
    • 🎯 The view automatically scrolls to and focuses on that client.
  • If no client is found β†’ a clear error message is displayed with user guidance.

πŸ“Š Organized Client Data Display

  • All clients are loaded from the text file InformationClients.txt when the section is opened.
  • Data is displayed in a ListView with five columns:
    • πŸ†” ID
    • πŸ‘€ Client Name
    • πŸ“ Address
    • πŸ“§ Email
    • πŸ“ž Phone

πŸ”„ Auto-Refresh After Any Operation

  • When a client is deleted β†’ the list updates instantly and the total count is refreshed.
  • The counter (LblNumberClient) always reflects the accurate number of clients.

πŸ—‘οΈ Safe & Simple Client Deletion

  • Accessible via a context menu (right-click) on any client entry.
  • A confirmation dialog is shown before deletion to prevent mistakes.
  • Once confirmed β†’ the client is removed from the file and the list refreshes automatically.

πŸ“„ Detailed Client Information Window

  • Selecting β€œShow Information” from the context menu opens a new form displaying all client data clearly and neatly.
  • Features an elegant design with a custom background and interactive elements.
  • Includes a smart, color-coordinated close button.

πŸ–ŒοΈ Consistent Visual Design

  • Uses Sparkle’s color theme (light green + white).
  • A decorative line separates the title from the list for better visual organization.
  • The total number of clients is displayed in a small status label beside a user icon.

πŸ›‘οΈ Quality & Performance Assurance

βœ… Safe Loading
If the file doesn’t exist, it is automatically created β€” no crashes or interruptions.

βœ… Data Stability
Client data is held in memory structures and only rewritten after deletion β€” no direct edits during viewing.

βœ… Excellent User Experience

  • Clear and friendly messages
  • Safety confirmations
  • Clean visual hierarchy
  • Full integration with Guna UI2 components

βœ… Scalability
The architecture is designed to support migration to a database later without major UI or logic changes.

πŸ’‘ This section serves as the main interaction hub for client data β€” combining listing, searching, details, and deletion into one cohesive and intuitive module, making it the backbone of client management within the system.

πŸ“Œ Technical Note
Client data is stored locally in a text file (InformationClients.txt) using the separator ;||;.
This storage system can easily be replaced by a database in the future without major interface or logic changes.


πŸ› οΈ Section: Edit or Delete Client

🎯 Main Purpose

Allows the user to update client data or permanently delete a client from the β€œSparkle” system through an integrated interface.
The process begins by searching for the client using their unique ID, then lets the user choose between Edit or Delete mode β€” ensuring data safety, clarity, and an intuitive user experience.


✨ Key Features

πŸ” Smart Search by ID

  • Enables the user to search for any client using a unique ID.
  • Once the client is found:
    • βœ… An instant success message is displayed.
    • 🎯 The client’s details are automatically shown in the form fields.
    • βš™οΈ The appropriate mode (Edit/Delete) is automatically activated based on the user’s choice.

πŸ”„ Dual Smart Modes: Edit | Delete

  • Edit Mode (Update Mode):
    • All form fields become editable for data modification.
    • After confirmation β†’ the updated information is saved directly to the file.
  • Delete Mode (Remove Mode):
    • Client data is displayed as read-only to prevent accidental edits.
    • After confirmation β†’ the client is removed from the system, and the file is updated automatically.
  • Waiting Mode (None Mode):
    • No actions can be taken until a mode is clearly selected.

🧹 Automatic Reset

  • After each operation (Edit or Delete) β†’ all fields are cleared and the mode resets to β€œNone.”
  • This ensures error prevention and a smoother workflow.

πŸ“„ Data Preview Before Deletion

  • In Delete Mode β†’ client details appear in a non-editable format to confirm identity before deletion.
  • Prevents mistaken deletions and ensures user confirmation.

πŸ›‘οΈ Strict Data Validation

  • Real-time validation:
    • The ID field accepts numbers only.
    • Other fields activate only after a successful search.
  • Uses ErrorProvider and CorrectProvider to display instant feedback for errors or valid input.

πŸ–ŒοΈ Visual Interface Design

  • A divider line separates the search area from the operation area for better structure.
  • Color palette: light green + white (consistent with system identity).
  • Clear icons distinguish between modes (Edit, Delete, None).

πŸ›‘οΈ Quality and Performance Guarantees

βœ… Security:
No operation can be performed unless a clear mode (Edit/Delete) is selected β€” preventing unintended actions.

βœ… Stability:
If the client data file does not exist, it is automatically created to avoid system crashes.

βœ… Scalability:
The system architecture is designed to easily integrate with external databases in the future without major interface or logic changes.

βœ… User Experience Excellence:

  • Informative messages.
  • Safety confirmations.
  • Visually clear layout.
  • Full compatibility with Guna UI2 interface.

πŸ’‘ This section is a critical management tool in the system, combining accuracy, security, and full control over client data β€” making it essential for any data-driven system that requires editing or deletion functionality.


πŸ“Œ Technical Note:
All client information is stored in a local text file (InformationClients.txt) using the separator ;||;.
This structure can easily be migrated to a database system later without major modifications.


πŸ‘€ Section: Add New User (UserControlUsers)

🎯 Main Purpose

Allows the administrator to create new user accounts in the "Sparkle" system through an integrated interface that defines user permissions (Full Access or Special Permissions).
It ensures data integrity, prevents duplication, and provides precise access control to different system sections.


✨ Key Features

πŸ” Precise Permission Control

  • Full Access:
    • Grants the user unrestricted access to all system sections.
  • Special Permission:
    • Enables assigning access rights for each section individually:
      • πŸ“‹ New Order Section
      • πŸ“Š Show All Orders Section
      • πŸ‘₯ Client List Section
      • πŸ› οΈ Remove/Update Client Section
      • πŸ‘€ Users Section
      • πŸ—ƒοΈ Users List Section
      • πŸ”„ Remove/Update Users Section
      • πŸ“œ History Login Section

🧩 Password Encryption System

  • Passwords are stored in a text file using a simple encryption key (_KEY_CRYPT = 2).
  • When displayed, they are automatically decrypted for readability.
  • This approach protects sensitive data while maintaining easy management when needed.

🚫 Duplicate Prevention & Admin Protection

  • The system blocks creation of a new Admin account if one already exists, ensuring stability.
  • Prevents creating duplicate usernames and displays a clear error message if duplication occurs.

🎲 Random Password Generation

  • If the admin does not enter a password, a random 4-digit password is automatically generated.
  • This feature speeds up account creation while maintaining security.

πŸ–ŒοΈ Modern and Clear Interface

  • Clean icons distinguish between access modes (Full / Special).
  • Consistent color scheme matching the Sparkle identity (Light Green + White).
  • Simple, user-friendly form design.

πŸ›‘οΈ Quality and Performance Guarantees

βœ… Security:
A user cannot be created without a username and password β€” preventing unauthorized actions.

βœ… Stability:
If the users file does not exist, it is automatically created to prevent system crashes.

βœ… Scalability:
The architecture is designed for easy future database integration with minimal interface changes.

βœ… User Experience:

  • Clear confirmation and error messages.
  • Strong visual hierarchy.
  • Integrated with Guna UI2 design components.

πŸ’‘ This section serves as a core administrative tool, combining accuracy, security, and full control in user creation β€” essential for systems requiring multi-level permission management.

πŸ“Œ Technical Note

User data is stored in a local text file (UsersInformation.txt) using the delimiter ||.
This system can later be replaced with a database without significant structural or interface modifications.


πŸ‘₯ Section: Users List

🎯 Main Purpose

Displays all user accounts in the "Sparkle" system in an organized and easy-to-browse table, allowing instant search by username, while showing each user’s permission level and account status (Locked / Active) β€” all through a clean, interactive interface.


✨ Key Features

πŸ” Instant Search by Username

  • Allows the admin to search for any user by entering the Username.
  • When a match is found:
    • ⭐ The corresponding row is highlighted in yellow.
    • 🎯 The table automatically scrolls to focus on that user.
  • If not found β†’ a clear error message is displayed to guide the user.

πŸ“Š Organized User Data Display

  • Loads all users from the UsersInformation.txt file upon section initialization.
  • The table contains 4 main columns:
    • πŸ‘€ Username
    • πŸ”‘ Password (encrypted, then decrypted on display)
    • πŸ›‘οΈ User Permissions (numeric value representing access level)
    • 🚫 Account Status (Locked / Active)

πŸ–ŒοΈ Clean Visual Design

  • A horizontal line separates the header and the table for better visual structure.
  • Colors match the system’s identity (Light Green + White).
  • The total number of users is displayed in a small label beside a user icon.

🧹 Auto Reset System

  • After each search, the input field is automatically cleared and refocused for faster subsequent searches.

πŸ›‘οΈ Special Protection for β€œAdmin”

  • The Admin account is highlighted in red to emphasize its importance.
  • This account cannot be deleted or modified from this section (handled exclusively in β€œRemove or Update User”).

πŸ›‘οΈ Quality and Performance Guarantees

βœ… Security:
Passwords are stored encrypted in the file and only decrypted when displayed β€” ensuring sensitive data protection.

βœ… Stability:
If the users file does not exist, it is automatically created to prevent system failure.

βœ… Scalability:
The design is ready for future integration with external databases without major UI or logic changes.

βœ… User Experience:

  • Clear messages and confirmations.
  • Logical visual hierarchy.
  • Full support for Windows Forms design components.

πŸ’‘ This section serves as a core interaction hub for managing user data, combining display, search, and security in a unified module β€” making it the backbone of user management in the Sparkle system.


πŸ“Œ Technical Note

User data is stored locally in a text file (UsersInformation.txt) using the delimiter ||.
This structure can later be replaced with a database without significant interface or logic modifications.


πŸ‘€ Section: Edit or Delete User

🎯 Main Purpose

Allows the administrator to manage user accounts in the β€œSparkle” system through an integrated interface.
The process begins by searching for the user by username, then lets the admin choose between Edit or Delete mode β€” ensuring data protection and preventing unauthorized actions (such as modifying or deleting the β€œAdmin” account).


✨ Key Features

πŸ” Smart Search by Username

  • Enables the administrator to search for any user by entering their username.
  • Once the user is found:
    • βœ… A success notification instantly appears.
    • 🎯 The user’s details are displayed in the corresponding input fields.
    • βš™οΈ The proper mode (Edit/Delete) is automatically activated based on the admin’s selection.

πŸ”„ Dual Smart Modes: Edit | Delete

  • Edit Mode (Update Mode):
    • All fields become editable for updating the password or account status (Lock/Unlock).
    • The admin can change the password or keep it unchanged.
    • Account can be locked (attempts = 0) or unlocked (restored to 3 attempts).
  • Delete Mode (Remove Mode):
    • Displays the user’s data in a read-only format.
    • Upon confirmation β†’ the user is deleted from the system, and the file is updated automatically.
  • Waiting Mode (None Mode):
    • No operations can be performed until a mode is clearly selected.

πŸ›‘οΈ Special Protection for "Admin" Account

  • The Admin account cannot be deleted or modified β€” ensuring system stability.
  • If an attempt is made to edit or delete the Admin account β†’ a clear error message is shown, and the action is blocked.

🧹 Automatic Reset

  • After each operation (Edit or Delete) β†’ all fields are cleared, and the mode resets to β€œNone.”
  • Prevents repeated errors and ensures smoother operation.

πŸ“„ Account Status Preview

  • In Edit Mode β†’ the system shows whether the account is locked or active.
  • Helps the administrator make an informed decision when changing account status.

πŸ–ŒοΈ Visual Design

  • A divider line separates the search and operation areas for better organization.
  • Color scheme: light green + white (consistent with system identity).
  • Clear icons distinguish between operation modes (Edit, Delete, None).

πŸ›‘οΈ Quality and Performance Guarantees

βœ… Security:
No operation can be executed without choosing a clear mode (Edit/Delete), preventing random actions.
The Admin account is fully protected from any modifications or deletions.

βœ… Stability:
If the users’ data file does not exist, it is automatically created to avoid crashes.

βœ… Scalability:
The system’s structure is designed for future integration with databases without major changes to the interface or logic.

βœ… Excellent User Experience:

  • Informative feedback messages.
  • Security confirmations.
  • Clean and clear interface design.
  • Full support for Guna UI2 components.

πŸ’‘ This section is a critical management tool within the system β€” combining accuracy, security, and complete control over user accounts, making it essential for any secure administrative environment.


πŸ“Œ Technical Note:
User data is stored locally in a text file (UsersInformation.txt) using the separator ||.
The system can later be upgraded to use a database with minimal interface or logic changes.


πŸ“œ Section: User Login History

🎯 Main Purpose

Tracks and displays all previous user login sessions in the Sparkle system, allowing administrators to search by username, view securely encrypted passwords, and check the date and time of each login β€” ensuring transparency and administrative control.


✨ Key Features

πŸ” Secure Display of Encrypted Passwords

  • Passwords are stored in a text file using a simple encryption key (_KEY_CRYPT = 2).
  • During display, they are automatically decrypted to show the original text safely.
  • This approach ensures sensitive data protection while maintaining readability when needed.

πŸ” Smart Search by Username

  • Supports partial matching, allowing users to search by entering part of the username.
  • Clicking β€œSearch” filters and displays only the matching login records.
  • If the search field is empty β†’ a clear warning message appears.

πŸ“Š Organized Data Display

  • All login records are loaded from the HistoryLoginSparkle.txt file when the section is opened.
  • The table contains three columns:
    • πŸ‘€ Username
    • πŸ”‘ Password (encrypted in file, decrypted for display)
    • πŸ•’ Date Time Login Sparkle

πŸ”„ Auto-Refresh After Search

  • When a new search is performed β†’ the table is cleared and refilled with new results.
  • The counter LblNumberHistoryLoginSparkle updates automatically to reflect the number of displayed records.

πŸ–ŒοΈ Consistent Visual Design

  • A decorative line separates the title from the table for better visual organization.
  • Uses Sparkle’s color palette (light green + white).
  • Displays the total number of login records in a small status label beside a record/document icon.

βš™οΈ Secure and Stable Data Handling

  • If the log file doesn’t exist, it is automatically created β€” preventing any runtime errors.
  • Uses a custom separator ($$$//$$$) to distinguish between data fields.
  • The structured data format allows easy future scalability (e.g., database integration or additional fields).

πŸ›‘οΈ Quality & Performance Assurance

βœ… Security
Simple encryption prevents passwords from being stored in plain text while allowing safe decryption for viewing.

βœ… Accuracy
Partial search makes it easy to locate users even if their full names are not remembered.

βœ… Stability
No direct file modifications occur during viewing β€” data is loaded once and safely displayed.

βœ… Excellent User Experience

  • Clear and friendly messages
  • Clean, organized interface
  • Visually structured layout
  • Full compatibility with Windows Forms

πŸ’‘ This section acts as a monitoring and management tool, providing a complete access history log β€” ideal for verifying user activity, assigning responsibility, and analyzing usage patterns.


πŸ“Œ Technical Note
Login history data is stored locally in HistoryLoginSparkle.txt using the separator $$$//$$$.
This structure can later be replaced with a database system without major UI or logic changes.


πŸŽ“ General Note About the Project:

The Sparkle system is a Training Project developed for the purpose of learning and practical application of concepts such as system management, user interface design, and file handling.


πŸ‘¨πŸ’» Author

Ahmed Jehad Ahmed

πŸ”— GitHub Profile

πŸ“§ Email Contact

About

πŸš—πŸ§Ό Sparkle - is a modern C# Windows Forms application designed to manage Clients, users, and cleaning orders for both cars and carpets, all stored and handled efficiently using text files (.txt)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages