What is permon?
Permon is a tool to display live line charts in a clear, uncluttered way. Permon comes prepackaged
with a lot of useful stats for monitoring the performance of your PC. It is developed with a focus
on only showing you things you care about, not everything you can monitor in your system.
Permon is developed in Python 3. There is a good chance you already have Python on your system. If
not, install it (recommended: Miniconda). Run pip
install permon
in your preferred command line and permon --help
to see what you can do with permon or take a look at the documentation for
a more in-depth guide.
Permon works everywhere
Permon is designed to work everywhere. It supports Windows, Linux and soon Mac OS.
But what if you don't have access to a desktop manager? Or want to check performance of your
workstation remotely? Permon has you covered.
You can choose from three frontends. A terminal frontend, native
frontend and browser frontend.
Permon is extensible
Permon can easily be enhanced by adding custom stats. And Permon has, in my biased opinion, done a very good job of making this as intuitive as possible. The code snippet below shows how a custom stat looks like. See the documentation on extending Permon to learn how to add your first custom stat.
import math
from permon.backend import Stat
class SineStat(Stat):
base_tag = 'sine'
name = 'Sine'
def __init__(self, fps):
self.t = 0
super(SineStat, self).__init__(fps)
def get_stat(self):
self.t += 1 / self.fps
return math.sin(self.t)
@property
def minimum(self):
return -1
@property
def maximum(self):
return 1
Permon is open source
Permon is open source and published on Github. What makes Permon special is that it has many components like
- Object orientation in Python
- Drawing in a terminal
- Developing a GUI app in Python
- Making a secure web server, including communication via WebSockets
- Automatically generating documentation via Sphinx
- Unit testing the Python code
- Continous Integration via CircleCI
while still being relatively small (~2k LoC) and thus easy to get into for a beginner — especially because a huge focus has been put on documentation during development. Check out the Contributor documentation to see how permon works and how you can improve it.