This week I was working on a JavaScript library for accessing REST api. I implemented it as a jQuery plugin. It contains functions for ajax request to REST api, formatting the numbers and calculating rate for throughput.
I also wrote documentation for the library.
I have created an example page, that displays some data from REST api with the new RPiJS plugin.
Next week I will start creating the Dashboard using AngularJS.
Read more →
This week I was working on basic modules of the REST api. Values are logically grouped in different modules. Each module collects its values, and the code from last week takes care of user management and parsing the values to JSON. I have also documented the REST api interface with descriptions of all values that are currently available.
Modules that I have developed:
memory - info about memory and swap usage cpu - info about cpu usage, load average, uptime and temperature network - info about available network interfaces, their IP, MAC addresses and number of bytes/packets send and received on each interface storage - info about mounted devices, used space on device and throughput read and write info I spent quiet some time developing code for gathering network device information, so I wrote a short guide with code for anyone interested: Get IP, IPv6 and MAC addresses using ioctl and procfs on Linux in C.
Read more →
Getting IP, IPv6 and MAC addresses on Linux is no easy task if you do not use ifconfig. The information on the internet is not very good, and the process is quite complicated. I have spent most of yesterday writing the code, so I decided to describe it here.
The whole code can be found at the bottom.
Listing the interfaces The first thing we need to do is get the names of network interfaces available on the system.
Read more →
This week I was working on the security part of REST api. I have made HTTP auth login option based on Monkey’s auth plugin. I have added the configuration files in which, the access permission are set. Then I have created a mock-up module, and written the code to parse it to JSON.
Besides coding I spent a lot of time thinking how the different parts of code will work together.
Read more →
I have been selected for this year’s Google Summer of Code. I will be coding for Monkey project.
Monkey project is a lightweight and powerful web server and development stack for GNU/Linux. It has been designed to be very scalable with low memory and CPU consumption, the perfect solution for embedded devices. Made for ARM, x86 and x64.
My project is Raspberry Pi Dashboard. I will be coding a REST api interface using Duda IO, to access various hardware features of Raspberry Pi, such as CPU and memory usage, GPIO, etc.
Read more →