A lightweight, powerful, and feature-rich terminal built with Python
Developed by @ansh.mn.soni
- Introduction
- Key Features
- Getting Started
- Installation
- Configuration
- Usage Examples
- Available Commands
- Features Showcase
- Contributing
- Roadmap
- Support
- License
PyShell is a custom-built command-line interface (CLI) that revolutionizes the traditional terminal experience. Built entirely with Python, it combines the power of system commands with modern utilities like weather tracking, task scheduling, and multimedia playback. Whether you're a developer, system administrator, or power user, PyShell offers an intuitive and feature-rich environment for all your command-line needs.
- ๐ Secure: Built-in user authentication system
- ๐ฏ Efficient: Lightweight with fast command execution
- ๐ ๏ธ Extensible: Easy to customize and extend
- ๐ Modern: Clean interface with customizable themes
- ๐ต Multimedia: Play music directly from terminal
- ๐ Analytics: Built-in calculator with advanced operations
- User Authentication: Secure login system to protect your terminal session
- Process Management: Safe process monitoring and control
- Full Linux Command Support:
ls,mkdir,touch,rm,cp,mv, and more - Advanced File Operations: File management with real-time synchronization
- System Information: Comprehensive system monitoring with
sysinfo - Network Utilities: Built-in network diagnostic tools
- Task Scheduler: Schedule and manage tasks efficiently
- Weather Integration: Real-time weather information
- Password Generator: Create secure passwords instantly
- Advanced Calculator: Basic arithmetic to complex calculus operations
- Customizable Themes: Multiple color schemes and layouts
- Clean Interface: Minimalist design for better focus
- Music Player: Play songs directly through the terminal
- Process Control: List, monitor, and manage system processes
Before installing PyShell, ensure you have:
- Python 3.7 or higher
- pip (Python package manager)
- Internet connection (for weather API)
# Clone the repository
git clone https://github.com/AnshMNSoni/PyShell.git
# Navigate to the project directory
cd PyShell
# Install dependencies
pip install -r requirements.txt
# Run PyShell
python main.pygit clone https://github.com/AnshMNSoni/PyShell.git
cd PyShell
pip install -r requirements.txt- Download the ZIP file from the GitHub repository
- Extract the contents
- Open terminal in the extracted folder
- Run:
pip install -r requirements.txt
The following Python packages are required:
requests- For weather API callscolorama- For colored terminal outputpygame- For music playback functionalityschedule- For task schedulingpsutil- For system information and process management
- Sign up for a free account at OpenWeatherMap
- Get your API key from the dashboard
- Replace the API key in the code:
# Inside get_weather function api_key = "YOUR_API_KEY_HERE"
- Theme Selection: Use the
terminalcommand to change colors - Default Directory: Set your preferred starting directory
- Command Aliases: Create custom shortcuts for frequently used commands
# List files and directories
ls
ls -all
# Create directories and files
mkdir my_project
touch README.md
# Remove files
rm unwanted_file.txt# Get current weather
weather London
weather "New York"# Basic arithmetic
calc 2 + 3 * 4
# Advanced operations
calc sin(45)
calc log(100)
calc derivative(x^2)# Schedule a task
schedule "Backup files" 14:30
schedule "System update" tomorrow 09:00# Play music
play music/song.mp3
play ~/Music/playlist/| Command | Description | Example |
|---|---|---|
ls |
List directory contents | ls -all |
cd |
Change directory | cd Documents |
mkdir |
Create directory | mkdir new_folder |
touch |
Create file | touch file.txt |
rm |
Remove file/directory | rm file.txt |
cp |
Copy file/directory | cp source dest |
mv |
Move/rename file | mv old.txt new.txt |
| Command | Description | Example |
|---|---|---|
sysinfo |
System information | sysinfo |
network |
Network diagnostics | network status |
kill |
Terminate process | kill 1234 |
| Command | Description | Example |
|---|---|---|
weather |
Weather information | weather London |
calc |
Calculator | calc 2^8 |
schedule |
Task scheduler | schedule "Meeting" 15:00 |
play |
Music player | play song.mp3 |
terminal |
Change theme | Galactic Empire |
Secure login system that protects your terminal session from unauthorized access.
Intelligent task scheduler that helps you organize your daily activities and system maintenance tasks.
Real-time weather information powered by OpenWeatherMap API, supporting global locations.
From basic arithmetic to complex calculus operations including:
- Trigonometric functions
- Logarithmic calculations
- Derivative and integral computations
- Statistical operations
Built-in music player supporting multiple formats:
- MP3, WAV, OGG support
- Playlist management
- Background playback
Multiple color schemes and interface layouts:
- Galactic Empire
- Hacker Green
- Atomic-Lite
- And many more
We welcome contributions from the community! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow PEP 8 style guidelines
- Write clear, concise commit messages
- Add tests for new features
- Update documentation as needed
- Ensure backward compatibility
- ๐ Bug fixes and improvements
- ๐ Documentation enhancements
- ๐จ UI/UX improvements
- ๐ง New command implementations
- ๐งช Test coverage expansion
- ๐ Internationalization support
- Upscaling: We Upscale PyShell to Operating systems (i.e. MyOS)
- ๐ Documentation: Check this README and inline help commands
- ๐ Issues: Report bugs on GitHub Issues
- ๐ฌ Discussions: Join community discussions on GitHub
- ๐ง Email: Contact the maintainer directly
- ๐ GitHub: AnshMNSoni
- ๐ผ LinkedIn: Ansh Soni
- ๐ข Company: PyShell Organization
This project is licensed under the MIT License. See the LICENSE file for details.
- Thanks to all contributors and users who make PyShell better
- OpenWeatherMap for providing weather data
- The Python community for excellent libraries and tools
- Everyone who provided feedback and suggestions
Thank you for choosing PyShell! We hope it enhances your command-line experience. If you find it useful, please consider:
- โญ Starring the repository
- ๐ Sharing with your network
- ๐ Reporting issues or bugs
- ๐ก Suggesting new features
- ๐ค Contributing to the project
Happy Coding! ๐
Made with โค๏ธ by Ansh Soni