|
1 | 1 | # AdvancedOS |
2 | | -AdvancedOS is a cutting-edge Python-powered desktop environment with a sleek GUI, dynamic taskbar, interactive desktop, and essential utilities like a calculator, text editor, Python console, and more. Fully customizable and expandable, it brings the functionality of an OS to life—perfect for innovation and experimentation! |
| 2 | + |
| 3 | +## 📚 Overview |
| 4 | +AdvancedOS is an innovative desktop environment built using Python's Tkinter library. It is designed to emulate a lightweight operating system interface, complete with a taskbar, customizable desktop, and various built-in applications. This project aims to provide a functional, extendable framework for learning and experimenting with GUI-based systems. |
| 5 | + |
| 6 | +Currently, AdvancedOS is under active development, and contributions or suggestions for improvements are welcome. |
| 7 | + |
| 8 | +--- |
| 9 | + |
| 10 | +## 💡 Features |
| 11 | + |
| 12 | +### 1. **Desktop Environment** |
| 13 | +The AdvancedOS desktop acts as the primary user interface, featuring: |
| 14 | +- **Customizable Themes**: Change the background color to suit your preferences (light blue, gray, or green). |
| 15 | +- **Interactive Icons**: Launch built-in utilities directly from the desktop by clicking on intuitive buttons. |
| 16 | +- **Expandable Functionality**: Easily add new desktop shortcuts for additional features or applications. |
| 17 | + |
| 18 | +### 2. **Taskbar** |
| 19 | +The taskbar provides real-time system information and utilities: |
| 20 | +- **Start Button**: Opens a simple Start Menu where users can access settings or exit the application. |
| 21 | +- **System Information**: Displays Wi-Fi connectivity, Bluetooth status, and battery percentage, updating every five seconds. |
| 22 | +- **Clock**: Shows the current time, updated every second. |
| 23 | + |
| 24 | +### 3. **Built-in Utilities** |
| 25 | +AdvancedOS includes several essential tools, each designed for practicality and simplicity: |
| 26 | + |
| 27 | +#### a. **Calculator** |
| 28 | +- **Functionality**: Perform basic arithmetic operations. |
| 29 | +- **Interactive Design**: Input numbers and operations via a text field and execute them with a "=" button. |
| 30 | +- **Error Handling**: Displays an error message for invalid inputs. |
| 31 | + |
| 32 | +#### b. **Text Editor** |
| 33 | +- **Rich Editing**: Write and edit text with a simple interface. |
| 34 | +- **File Saving**: Save files in `.txt` format using a file dialog. |
| 35 | +- **Menu Options**: Includes options to save and exit directly from the menu bar. |
| 36 | + |
| 37 | +#### c. **File Explorer** |
| 38 | +- **Browse Files**: Use a file dialog to locate and select files on your system. |
| 39 | +- **File Information**: Displays the selected file’s name in a message box. |
| 40 | + |
| 41 | +#### d. **Python Console** |
| 42 | +- **Execute Code**: Run Python commands directly within the application. |
| 43 | +- **Output Display**: View execution results or errors in a console-like text area. |
| 44 | +- **Input Area**: Type commands in a dedicated input section and execute them with a button click. |
| 45 | + |
| 46 | +#### e. **Music Player** |
| 47 | +- **Play and Stop**: Basic music playback controls. |
| 48 | +- **Future Expansion**: Placeholder for integrating more advanced features like playlists or volume controls. |
| 49 | + |
| 50 | +#### f. **Task Manager** |
| 51 | +- **Process Viewer**: Lists all running processes using the `psutil` library. |
| 52 | +- **Simple Display**: Presents process names in a scrollable list. |
| 53 | + |
| 54 | +#### g. **Weather App** |
| 55 | +- **Real-time Weather**: Fetches weather data for a specified city using the OpenWeatherMap API. |
| 56 | +- **Data Display**: Shows temperature (in Celsius) and weather conditions. |
| 57 | +- **Error Handling**: Displays a message if weather data cannot be retrieved. |
| 58 | + |
| 59 | +#### h. **Browser** |
| 60 | +- **Web Access**: Open a simple web browser powered by the `webview` library. |
| 61 | +- **Default URL**: Launches with Google’s homepage but can be customized. |
| 62 | + |
| 63 | +### 4. **Settings Menu** |
| 64 | +- **Theme Customization**: Choose between different color themes to personalize the desktop. |
| 65 | +- **Expandable Options**: Add future customization features, such as font or icon styles. |
| 66 | + |
| 67 | +--- |
| 68 | + |
| 69 | +## 🚀 Getting Started |
| 70 | + |
| 71 | +### Prerequisites |
| 72 | +- Python 3.x |
| 73 | +- Required Python Libraries: |
| 74 | + - `tkinter` (default with Python) |
| 75 | + - `psutil` |
| 76 | + - `requests` |
| 77 | + - `bleak` |
| 78 | + - `webview` |
| 79 | + |
| 80 | +Install required libraries using: |
| 81 | +```bash |
| 82 | +pip install psutil requests bleak pywebview |
| 83 | +``` |
| 84 | + |
| 85 | +### Installation |
| 86 | +1. Clone the repository: |
| 87 | + ```bash |
| 88 | + git clone https://github.com/codingwithnsh/AdvancedOS.git |
| 89 | + ``` |
| 90 | +2. Navigate to the project directory: |
| 91 | + ```bash |
| 92 | + cd AdvancedOS |
| 93 | + ``` |
| 94 | +3. Run the application: |
| 95 | + ```bash |
| 96 | + python main.py |
| 97 | + ``` |
| 98 | + |
| 99 | +--- |
| 100 | + |
| 101 | +## 📊 How It Works |
| 102 | + |
| 103 | +### Desktop Icons |
| 104 | +Each icon corresponds to a utility or application. Simply click an icon to launch the associated tool. |
| 105 | + |
| 106 | +### Taskbar Information |
| 107 | +The taskbar dynamically updates every few seconds to display: |
| 108 | +- Current time |
| 109 | +- System battery status |
| 110 | +- Wi-Fi and Bluetooth connectivity |
| 111 | + |
| 112 | +### Built-in Utilities |
| 113 | +The included tools offer core functionality for daily tasks, while providing a framework for integrating new features. |
| 114 | + |
| 115 | +### Customization |
| 116 | +Through the settings menu, you can adjust the desktop’s appearance to match your preferences. Themes change the desktop background and provide visual variety. |
| 117 | + |
| 118 | +--- |
| 119 | + |
| 120 | +## 🛠️ Contributing |
| 121 | +We welcome contributions to improve this project! |
| 122 | +1. Fork the repository. |
| 123 | +2. Create a new branch: |
| 124 | + ```bash |
| 125 | + git checkout -b feature-name |
| 126 | + ``` |
| 127 | +3. Commit your changes: |
| 128 | + ```bash |
| 129 | + git commit -m "Add feature description" |
| 130 | + ``` |
| 131 | +4. Push to the branch: |
| 132 | + ```bash |
| 133 | + git push origin feature-name |
| 134 | + ``` |
| 135 | +5. Open a pull request. |
| 136 | + |
| 137 | +--- |
| 138 | + |
| 139 | +## 🔖 License |
| 140 | +This project is licensed under the MIT License. |
| 141 | + |
| 142 | +--- |
| 143 | + |
| 144 | +## 🙌 Acknowledgments |
| 145 | +Special thanks to everyone who has contributed to this project! Your suggestions and contributions are invaluable as we continue to develop AdvancedOS into a robust and versatile desktop environment. |
0 commit comments