https://github.com/lordzeusisback/periodic-table
An interactive educational tool that lets you combine elements through a drag-and-drop interface to visualize chemical compounds in real time. Built in Python, it’s designed to make learning chemistry fun and engaging.
https://github.com/lordzeusisback/periodic-table
chemistry drag-and-drop educational interactive learning periodic-table python3 simulation
Last synced: 4 months ago
JSON representation
An interactive educational tool that lets you combine elements through a drag-and-drop interface to visualize chemical compounds in real time. Built in Python, it’s designed to make learning chemistry fun and engaging.
- Host: GitHub
- URL: https://github.com/lordzeusisback/periodic-table
- Owner: LordZeusIsBack
- License: mit
- Created: 2024-09-06T14:14:51.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-02-05T21:55:11.000Z (over 1 year ago)
- Last Synced: 2025-03-31T19:51:15.100Z (about 1 year ago)
- Topics: chemistry, drag-and-drop, educational, interactive, learning, periodic-table, python3, simulation
- Language: Python
- Homepage:
- Size: 48.8 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Elemental Combinator - Periodic Table
This project is an interactive educational tool named **Elemental Combinator**, designed to teach users about the periodic table of elements by allowing them to combine elements to form compounds. The project combines Python with graphical elements to create a dynamic and engaging experience.
## Table of Contents
- [Overview](#overview)
- [Features](#features)
- [Installation](#installation)
- [Usage](#usage)
- [Project Structure](#project-structure)
- [Key Scripts](#key-scripts)
- [Contributing](#contributing)
- [License](#license)
## Overview
The Elemental Combinator project allows users to drag elements into a merge box and visualize the resulting compounds. This interactive experience provides an engaging way to learn about chemistry and the periodic table.
## Features
- **Drag-and-Drop Functionality**: Drag elements into a merge box to combine them.
- **Real-Time Feedback**: Visualize compounds as they are formed.
- **Educational Tool**: Provides information about the elements and their combinations.
- **Customizable Settings**: Adjust configurations to suit your preferences.
## Installation
To run this project, you'll need Python installed along with the required dependencies. You can install the necessary packages using the following command:
```bash
pip install -r requirements.txt
## Usage
1. **Clone the Repository**: Clone this repository to your local machine.
2. **Install Dependencies**: Use the command above to install all necessary dependencies.
3. **Run the Application**: Execute the main script to start the application.
```bash
python main.py
```
## Project Structure
The project includes the following main components:
- **`main.py`**: The main script to run the application.
- **`chemistry_constants.py`**: Contains constants related to the periodic table and chemical elements.
- **`ai_model/`**: Contains the model and session scripts, which handle the logic for combining elements and generating feedback.
- **`config/settings.py`**: Configuration settings for the project.
- **`requirements.txt`**: Lists all required Python libraries.
## Key Scripts
### `main.py`
The main entry point of the application. It initializes the game environment and handles user interactions.
### `chemistry_constants.py`
Defines constants and data related to the elements, such as atomic numbers, symbols, and properties.
### `ai_model/model.py`
Contains the logic for validating and combining elements to form compounds.
### `config/settings.py`
Contains adjustable settings for the application, including visual and operational configurations.
## Contributing
If you wish to contribute to this project, please fork the repository and create a feature branch. Pull requests are welcome!
## License
This project is licensed under the MIT License - see the LICENSE file for more details.