PROJECTS

Projects that I have or am currently working on.

Robot Framework OCR Library

PythonUnitTestingGitHub Actions

Description

The Robot Framework OCR Library is an open sourced Robot Framework library that provides image processing and text reading capabilities. The library is written using Python, and makes use of OpenCV for image processing and PyTesseract for optical character recognition (OCR). The library allows the user to create image processing and text reading keywords to use in their Robot Framework project. The image processing greatly helps the OCR to recognize the text in a given image. The library consists of 90 unit tests executed on four versions of Python using GitHub Actions. This ensures quality in the code and helps catch bugs when additions are made to the project. I spent a lot of time on this project and am very proud of it.

Future Work

To make this library more useful, I would like to add more image processing keywords. The current keywords are limiting compared to what is available through OpenCV. I would also like to add functional test cases that test each keyword using a Robot Framework application.

bendurston.com

JavaScriptNext.jsAzure Blob StorageStrapiTailwindCSS
GitHub Repository

In Development

Description

This websites frontend is built using Next.js, and styled using TailwindCSS. The backend uses Strapi, including its built in API and content management system. Media files are stored using Azure Blob storage.

Future Work

Currently there is only one page. I would like to add more pages such as about, interests, fun, and home. With more pages also comes a navigation bar and menu!

LgLab.ca

JavaScriptNext.jsTailwindCSS

Description

This is a website built for Dr. Gunaratnam's cancer research lab at Western University. It is built using JavaScript and Next.js, and designed using TailwindCSS. It has a content management system allowing Dr. Gunaratnam to update content on the website at any time.

Raspberry Pi Resource Monitor

RustAzure FunctionsCosmos DBReact

Description

The raspberry pi resource monitor is a tool to help users monitor the system resources of multiple raspberry pis. The project consists of three parts. The first being a program that runs on each raspberry pi written in Rust. This program gets the CPU usage, CPU temperature, and memory usage of the pi and does a post request to the API. The second part of the project is a small API written in JavaScript using Azure Functions. This API currently consists of two requests, POST, and GET. The information retrieved and added by the API is stored in Azure's Cosmos DB. The last part of the project is a frontend web application using React. This application uses the API's GET function to retrieve the information of each raspberry pi stored in the database, and display it to the user.

Future Work

There are a couple of things I need to work on with this project. The first being an enhanced frontend UI. The next would be to add more methods to the API. Lastly I would like to add an authentication system to the frontent and API.