Print Portal: No Hassle Just Print

Thursday, May 18th, 2017
Print Portal

Print Portal

In one of the most eventful weekends in July 2016, we participated in a internal Hackathon organized by Leapfrog Technology Inc. The hackathon had an open theme, making it all that hard to settle on an idea. I remember the hackathon last year where the theme was to develop a developer tool. It was relatively easier then to pick an idea as we had just a few. But this time I and our team were swamped with quite a few ideas.

In order to pin down to one, we tried an incremental approach, where we analyzed each ideas based on three factors: the magnitude of a real life problem it would be solving, prospects of that being completed within the allocated time frame of the hackathon, and the appeal it would generate while presenting. After thorough analysis, we were convinced to pursue with a project that we later named Print Portal (No Hassle Just Print).

The major motivation to build a Print Portal came from a little incident that had happened to us a week from the hackathon. I had stayed late at office and had to print some documents. I tried a non-network printer first but it appeared I had to have the drivers to access the printer. As lazy as I am, I rarely get stuck with these things. So, I moved on to use a network printer. But, the same was required with network printer too. That night I returned home believing you need to have a driver to access a printer. And in the hackathon, it became the core problem that we were striving to solve. We had a team of three: Me (Abhinav)Ojash Dahal and Sudhir Shrestha.

Portal Success

Portal Success

Our portal had three interfaces:

  • It had Common Unix Printing System (CUPS), a portable printing layer installed. The drivers for the printers were installed via CUPS. CUPS also manages print jobs and queues and provides network printing, while offering support for a very large range of printers, from dot-matrix to laser and many in between.
  • Web to Printer Interface: It is the core module of our system and was implemented using Raspberry Pi.
  • Web Interface: It provides the end user a slick interface to access all the printing resources he has at his disposal from his browser. The web interface implements Google Auth to keep track of the user using the system. It was developed using HTML, CSS and jQuery.
  • It also had a Node server running providing the web interface to the CUPS.
  • The Raspberry Pi connects to all the printers available and the Node Server running on it provides the end user access to them via CUPS.
  • Printing Resources: It is the actual printing resources that we have. The printers can be both network or non-network.

Besides the more obvious advantages of our system like cost effectiveness and no hassle of printer drivers, our system would bring great relief to the Resource Management team of the offices. In large offices, more often than not the team ends up having printers from multiple vendors. Managing drivers for each of them is just a big hectic task. With our system, once the printer is connected, there would be no need of maintenance.

The hackathon was a great event that provided us an opportunity to test ourselves and reach beyond us. It was a great bonding opportunity with the team members and with others as well.

Related Articles

  • Youtube Ad Auto-skipper

    Like many people, YouTube has become my primary source of music. I listen to its automatic playlists all the time, and the fact that it seems to learn my preferences and introduces me to new music is just awesome. There is just one annoyance: YouTube ads Now, I don’t hate ads. I actually find them […]

    read more
  • Caching Server

    Squid: Saving your internet bandwidth

    With the increase in a number of digital devices, organizations are facing bandwidth issues. Users within the organization are downloading same content multiple times resulting in the consumption of international bandwidth. A simple solution might be to increase the bandwidth. But, can there be ways to solve this problem? The answer is “YES”. Caching servers […]

    read more

Let us build something great together!

Start a project