Lemniscate | System Monitor
A Raycast extension for monitoring system performance on macOS and Windows. Get real-time CPU and memory usage information with a visual representation and a list of top processes.
Features
- Real-time System Monitoring: View CPU and memory usage that updates every 2 seconds
- Visual Metrics: Custom SVG-based visualizations showing per-core CPU usage and memory consumption
- Top Processes: See the top 10 processes by CPU usage
- Process Management:
- View detailed process information (PID, CPU %, Memory %)
- Kill processes directly from Raycast
- Copy PIDs to clipboard
Installation
From Raycast Store (Recommended)
- Open Raycast
- Search for "Lemniscate Monitor"
- Click Install
Manual Installation
-
Clone this repository:
git clone <repository-url>
cd lemniscate-monitor
-
Install dependencies:
npm install
-
Build the extension:
npm run build
-
Import the extension in Raycast:
- Open Raycast preferences
- Go to Extensions
- Click the "+" button
- Select "Add Script Directory"
- Choose this project's directory
Development
Prerequisites
- Node.js (v18 or higher recommended)
- npm or yarn
- Raycast installed on your system
Setup
# Install dependencies
npm install
# Start development mode
npm run dev
# Run linter
npm run lint
# Fix linting issues automatically
npm run fix-lint
Project Structure
lemniscate-monitor/
├── src/
│ ├── show-information.tsx # Main command implementation
├── package.json # Project configuration
├── tsconfig.json # TypeScript configuration
├── eslint.config.js # ESLint configuration
└── README.md # This file
Usage
- Open Raycast (⌘ + Space by default)
- Type "Show System Information" or "Lemniscate Monitor"
- View real-time system metrics and processes
Available Actions
- Kill Process: Force quit a running process (⚠️ use with caution)
- Copy PID: Copy the process ID to your clipboard
Technologies Used
- Raycast API: Extension framework
- systeminformation: System and hardware information library
- TypeScript: Type-safe development
- React: UI components
License
MIT
Author
Zhassulan Abdrakhmanov
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature)
- Commit your changes (
git commit -m 'Add some amazing feature')
- Push to the branch (
git push origin feature/amazing-feature)
- Open a Pull Request
Support
If you encounter any issues or have suggestions, please file an issue on the repository.
Made with ❤️ for the Raycast community