Skip to content

Periodic Table Application πŸ§ͺ Welcome to the Periodic Table Application! This JavaFX project provides an interactive and user-friendly interface to explore the periodic table of elements. Learn more about each element with a simple and elegant graphical user interface.

Notifications You must be signed in to change notification settings

Hasnatrasool163/InteractivePeriodicTable

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Interactive Periodic Table

A dynamic and educational JavaFX application providing an interactive way to explore the periodic table of elements with rich features for chemistry enthusiasts, students, and educators.

Periodic Table Screenshot

Features

  • Complete Periodic Table: Visual representation of all known elements with their basic properties
  • Element Information: Detailed information about each element including atomic number, mass, group, and period
  • Element States Visualization: Toggle between normal view and element state visualization (solid, liquid, gas, or unknown/synthetic)
  • Real Element Images: View actual photographs of elements when available
  • Interactive Element Drag & Drop: Drag elements to:
    • Element Information Viewer: See details about a specific element
    • Electron Shell Visualizer: View the electron configuration of elements
    • Element Combiner: Experiment with combining elements
  • Search Functionality: Quickly find elements by name or atomic number
  • Element Comparison: Compare properties between any two elements
  • Keyboard Shortcuts:
    • Ctrl+F: Quick search
    • Ctrl+H: About application

Screenshots

Main Interface

Main Interface

Element States View

Element States

Element Image View

![Element Image]images-of-products

Electron Configuration

Electron Configuration

Requirements

  • Java 17 or higher
  • JavaFX 22 or higher

Installation

  1. Clone the repository:
git clone https://github.com/hasnatrasool163/InteractivePeriodicTable.git
  1. Navigate to the project directory:
cd InteractivePeriodicTable
  1. Build the project:
mvn clean install
  1. Run the application:
mvn javafx:run

Usage

Viewing Element Information

  • Click on any element to see basic information
  • Right-click on an element to access additional options:
    • Show Details: View comprehensive element information
    • Compare with Another Element: Compare properties of two elements
    • View Element Image: See a real photograph of the element
    • About Application: View application information

Using Element States Toggle

  • Click the "Show States" button to visualize elements by their physical states at room temperature
  • The legend at the right indicates the color coding for each state (solid, liquid, gas, unknown/synthetic)
  • Click "Hide States" to return to the standard periodic table view

Electron Shell Visualization

  • Drag any element onto the electron shell visualization area to see its electron configuration
  • The visualization displays the number of electrons in each shell

Element Combination

  • Drag elements to the combination area to experiment with element combinations
  • Clear the combination area with the "Clear" button

Search

  • Enter an element name or atomic number in the search field
  • Press Enter or click the "Search" button to highlight the matching element

Project Structure

org.htech.interactiveperiodictable/
β”œβ”€β”€ controller/
β”‚   └── PeriodicTableController.java
β”œβ”€β”€ layout/
β”‚   β”œβ”€β”€ CompoundFinder.java
β”‚   └── Layouts.java
β”œβ”€β”€ modal/
β”‚   └── Element.java
β”œβ”€β”€ utils/
β”‚   └── UtilityMethods.java
└── resources/
    β”œβ”€β”€ css/
    β”‚   └── style.css
    β”œβ”€β”€ icons/
    β”‚   └── periodic.jpeg
    └── images/
        └── [element-images]

Maven Configuration

The project uses Maven for dependency management. Key dependencies include:

org.openjfx javafx-controls 17.0.6 org.openjfx javafx-fxml 17.0.6

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Acknowledgments

-Inspiration from traditional periodic tables with modern interactive elements

About

Periodic Table Application πŸ§ͺ Welcome to the Periodic Table Application! This JavaFX project provides an interactive and user-friendly interface to explore the periodic table of elements. Learn more about each element with a simple and elegant graphical user interface.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published