https://github.com/patrickjnr/streamlitmemcleaner
Memory Cleanup Utility is a Streamlit-based application that monitors, analyzes, and cleans system memory. It provides tools for memory cleanup, historical data visualization, and integration with EmptyStandbyList.exe, offering an efficient way to manage system performance.
https://github.com/patrickjnr/streamlitmemcleaner
emptystandbylist streamlit streamlit-application streamlit-webapp
Last synced: 3 months ago
JSON representation
Memory Cleanup Utility is a Streamlit-based application that monitors, analyzes, and cleans system memory. It provides tools for memory cleanup, historical data visualization, and integration with EmptyStandbyList.exe, offering an efficient way to manage system performance.
- Host: GitHub
- URL: https://github.com/patrickjnr/streamlitmemcleaner
- Owner: PatrickJnr
- License: mit
- Created: 2024-12-15T16:50:29.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-12-25T01:37:50.000Z (7 months ago)
- Last Synced: 2025-03-28T09:58:38.000Z (4 months ago)
- Topics: emptystandbylist, streamlit, streamlit-application, streamlit-webapp
- Language: Python
- Homepage: https://grimtech.co.uk/
- Size: 21.5 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Memory Cleanup Utility
The **Memory Cleanup Utility** is a Streamlit-based application designed to monitor, analyze, and clean up system memory. This tool helps identify memory bottlenecks, perform cleanup tasks, and maintain historical data on memory usage.
---
## Demo
Watch the demo of the Memory Cleanup Utility:
[Demo Video](https://github.com/user-attachments/assets/aa79d784-5d22-470e-a597-fe407e9e069d)
---
## Features
- **Memory Monitoring**: Displays your system's total, free, cached, and used memory.
- **Cleanup Commands**: Executes memory cleanup tasks, including clearing:
- Modified page list
- Standby list
- Priority 0 standby list
- Working sets
- **Historical Data Visualization**:
- Tracks memory usage over time.
- Visualizes data in easy-to-read charts.
- **Integration with EmptyStandbyList.exe**: Uses the executable to perform memory cleanup tasks.
- **Custom CSS Styling**: Personalize the application UI with external CSS files.
- **Version Checking**: Manually check for application updates.
- **Git Commit Hash Display**: Shows the current Git commit hash in the app footer.---
## Installation
### Prerequisites
1. Install [Python 3.9+](https://www.python.org/downloads/).
2. Install the required Python libraries:
```bash
pip install streamlit pandas matplotlib requests
```
3. Download the `EmptyStandbyList.exe` file. If not already present, the app will prompt you to download it during runtime.### Method 1: Clone the Repository
1. Clone this repository:
```bash
git clone https://github.com/PatrickJnr/StreamLitMemCleaner.git
```
2. Navigate to the project directory:
```bash
cd StreamLitMemCleaner
```
3. Start the application:
```bash
streamlit run memcleaner.py
```
4. The app should automatically open in your browser at `http://localhost:8501`.### Method 2: Download the Latest Release
1. Download the latest release from the [releases tab](https://github.com/PatrickJnr/StreamLitMemCleaner/releases).
2. Extract the downloaded archive.
3. Navigate to the extracted directory.
4. Ensure you have Python 3.9+ and the required libraries installed (see prerequisites above).
5. Start the application using the command:
```bash
streamlit run memcleaner.py
```
6. The app should automatically open in your browser at `http://localhost:8501`.### Method 3: Run the Application Using `run.bat` (Windows Only)
For ease of use, a `run.bat` file is included in the repository. This script will:
- Install the required Python dependencies.
- Run the application automatically.To use the `run.bat` file:
1. Download or clone the repository.
2. Navigate to the project directory.
3. Double-click the `run.bat` file to start the application.---
## Usage
### Memory Monitoring
- View system memory statistics, including:
- Total memory
- Free memory
- Cached memory### Cleanup Tasks
- Select from various cleanup options to free up system memory.
- Track the amount of memory freed after executing commands.
- Warnings are displayed if all cleanup options are selected simultaneously.### Historical Data
- Analyze historical memory usage with detailed tables and charts.
- Manage memory history by deleting data that exceeds a specified maximum row count.---
## Development
To contribute or debug:
1. Use Git for version control.
2. Run the app in a local development environment.
3. Ensure changes pass tests before submitting a pull request.The **Latest Commit Hash** is automatically displayed in the app footer for reference.
---
## Help
For troubleshooting and support:
- Check the **Help** section in the app footer.
- Report issues or ask questions on the [GitHub Issues page](link_to_github_issues).---
## License
This project is licensed under the [MIT License](LICENSE).
---
## Credits
This application utilizes the following libraries and tools:
- [Streamlit](https://streamlit.io/) - For building the app interface and functionality.
- [Matplotlib](https://matplotlib.org/) - For visualizing memory usage data in charts.
- [Pandas](https://pandas.pydata.org/) - For handling and processing memory usage data.
- [Requests](https://requests.readthedocs.io/en/master/) - For making HTTP requests to retrieve updates and other data.
- [Python](https://www.python.org/) - The underlying programming language.Special thanks to contributors and the open-source community for their support.