Skip to content

Latest commit

 

History

History
44 lines (37 loc) · 2.29 KB

File metadata and controls

44 lines (37 loc) · 2.29 KB

🔐 Functional Login & Registration System (JavaFX)

🎓 University Project: Developed as part of the Year 1 University curriculum to explore GUI Development and File-based Data Persistence in Java.

A fully functional desktop application featuring a comprehensive user onboarding flow. This project implements a secure registration system with data validation and a login verification engine, using JavaFX for the interface and local file storage for data persistence.

🚀 Key Features

  • Complete User Registration: Detailed signup form capturing personal info, contact details, and account credentials.
  • Unique Username Validation: Real-time checking against stored records to prevent duplicate accounts.
  • Secure Login Engine: Verifies user credentials against local file storage for session access.
  • Data Persistence: Uses custom File I/O logic to store and retrieve user profiles from a .txt database.
  • Interactive GUI: Built with JavaFX FXML, featuring DatePickers, Combo boxes, and dynamic form validation.
  • MVC Design Pattern: Clear separation of concerns between FXML layouts and Java Controllers.

🛠️ Technical Highlights

  • JavaFX Framework: Advanced GUI components and event handling.
  • File Handling: Implementation of FileWriter, FileReader, and BufferedReader for lightweight database functionality.
  • Input Sanitization: Basic validation to ensure data integrity during the signup process.
  • State Management: Logic to handle stage transitions and controller communication.

📂 Project Structure

├── src/main/java/com/example/tut1_des/
│   ├── MainApplication.java   # App entry point & Stage management
│   ├── LoginController.java   # Authentication logic
│   └── SignupController.java  # Registration & File I/O logic
├── src/main/resources/        # FXML layouts & CSS styling
├── user_inputs.txt            # Local file-based "database"
└── pom.xml                    # Maven configuration

⚙️ How to Run

  1. Prerequisites: Ensure you have Java JDK 17+ and Maven installed.
  2. Build:
    mvn clean install
  3. Execute:
    mvn javafx:run

Built with ❤️ by Kavintha Dilshan