Introduction

This page contains a sample of my projects, but of course I didn’t place everything here, so if you want to check if I worked on certain type of projects or a specific technology, please reach out to me and ask.

As I mentioned in the about section, I am a programmer, and I also build hardware products and make 3D mechanical designs (mainly for 3D printing), the projects below are categorized based on that, so feel free to check the category that interests you the most.

Open source projects

1 - Accountability Telegram bot

Accountability Telegram bot

A Telegram bot that will manage your daily tasks and send you messages regarding your progress.

You can use this bot to manage your daily tasks (adding new tasks, deleting tasks, marking tasks as done,..) and the bot will hold you accountable by sending you random messages during the day to inform you about your progress (progress ratio and percentage).

GitHub repository: https://github.com/HassanKanj/accountability-telegram-bot

And here’s a video demo (in Arabic) for this bot:

2 - Telegram notifications API

A simple API to send notifications/messages to your phone through a Telegram bot.

GitHub repository: https://github.com/HassanKanj/telegram-notification-api/

And here’s a video tutorial (in Arabic) on how to use the API:

3 - Random Task Picker (for Trello)

Have you ever felt hesitant/overwhelmed about which task to work on next that you ended up doing nothing!?

Well, I made this fun project that will pick a random task for you, and it may actually be helpful.

The idea is simple, it is a CLI tool that you link to your Trello account, then you can use it without the need to open Trello app, it will pick a random task for you, and it has a feature to move the last picked task to your ‘done’ list once it is finished.

GitHub repository: https://github.com/HassanKanj/random-task-picker

Random Task Picker (for Trello)

4 - Create an empty project with a remote repository

A CLI tool that will create a folder locally for your new project in addition to a private GitHub repository and link them together.

GitHub repository: https://github.com/HassanKanj/create-empty-project-with-remote-repo

Create an empty project with a remote repository

Software/Websites projects

1 - YouTube videos monitoring system

This is a system I made to monitor my YouTube channels, mainly coder voice - صوت المبرمج and Kanj Workshop, the system will monitor the videos for these channels and peridocally send me notifications (through a Telegram bot) about the videos stats (e.g new likes, dislikes, views, comments), and it will also notify me when new users subscribed to my channels.

In this way, I have a near real-time monitoring system for my channels without the need to access YouTube analytics, and this will help me get some good insights about the videos.

Technically speaking, the app is built using NodeJS, MongoDB and I also made a telegram bot to receive the notifications, and I containerized the app using Docker, the app also benefits from the YouTube API to retreive the data.

This is a sample of the messages received

2 - Rkein Motors (website)

This is a website I made for Rkein motors (under my own personal registered business Qualtech), Rkein Motors services include buying, selling, trading, providing bank loans with or without downpayment, and after sale service, they sell cars both locally and internationally.

here’s the website link: www.RkeinMotors.com

and below you can find some screenshots:

Rkein Motors website
 
Rkein Motors website
 
Rkein Motors website

3 - TIMEBOX Beirut (website)

TIMEBOX Beirut website
 

I worked on the frontend/backend programming of TIMEBOX Beirut website, and here’s more details about the project:

TIMEBOX Beirut is an urban trail of early 20th century 3D images on the streets of Beirut. Each TIMEBOX holds one archival stereograph at the location where it was originally taken 100 years ago. Passersby experience that same street a century back in 3D. TIMEBOX is latched on 10 different street poles across the city.

The box is a modern plexiglas stereoscope specially designed to mount on a street pole. It’s comprised of two superposed images that give a three-dimensional effect when viewed through the special lens.

Each TIMEBOX places the viewer’s point of view within the perspective of the original stereograph, instigating an instant visual juxtaposition between past and present – and possibly a glimpse into the future?

TIMEBOX Beirut website

4 - Redline Motors Lebanon (website)

This is a website I made for Redline motors (under my own personal business Qualtech), Redline Motors Was Established In 2011 By Abe Elkodary In The Heart Of Lebanon. Abe Elkodary Took His Passion For The Motorcyle Industry And Began To Put It To Work.

Redline Motors Lebanon
 
Redline Motors Lebanon

5- coder voice (website)

coder voice (صوت المبرمج) is programming educational platform in Arabic that consists of a podcast (Audio/Video interviews) and video tutorials.

codervoice.com website
 
codervoice.com website
 

6 - SCENE Beirut (website)

This is a website I worked on for SCENE Beirut (under my own personal registered business Qualtech), it was built using the Magento E-commerce system.

SCENE draws on Lebanon’s traditions and pop culture and the Levant’s and Mediterranean aesthetics with bold graphic lines and shapes that makes every item firmly contemporary.

SCENE breathes Beirut, it is where Celine Khairallah takes her daily inspiration. She launched SCENE end of 2011, with the desire to create tops and tshirts with a Beiruti flare in the print, yet away from the regular souvenir t-shirt, something she could not find around her.

SCENE expanded into design and interior products. As Celine found herself unable to find fabric with the kind of graphics she wanted, She created her first cushions and poufs collection in 2012.

In the same year, she also started making the first collection of SCENE Bags, keeping the same spirit of colorful fabric, hand printed in small editions with Lebanese and Arabic Calligraphy, making statement bags, of different sizes and for different uses.

SCENE Beirut
 
SCENE Beirut
 
SCENE Beirut
 

Hardware projects

1- A remotely controlled logo with LEDs

This is one of my favorite projects since it involves programming, hardware design, PCB design and 3D printing.

This project You can control the LEDs (pattern, brightness,..) by connecting to the product using WiFi.

These are mainly what I used to build the project:

  • FreeCAD (to transform the logo into a 3D model)
  • DipTrace (to design the circuit board)
  • CNC machine (to engrave the circuit board)
  • ChiliPeppr - Hardware Fiddle (to visualize and send the G-code to the CNC)
  • FlatCAM (to generate G-code from gerber files)
  • 3D printer (to 3D print the logo and the enclosure)
  • LED strips
  • NodeMCU development board
  • MicroPython (to program the firmware)

Adjusting the LEDs through WiFi
 
I transformed the logo to a 3D model using FreeCAD
 
The enclosure (designed using FreeCAD as well)
 
The LEDs inside the logo
 
The design of the circuit board (using DipTrace)
 
Engraving the circuit board using my CNC machine
 
The NodeMCU development board with the transistors and other components
 

3D CAD design/3D printing

1 - External SSD case for the laptop

a custom case I designed so I can easily move my MacBook around with my 2 drives attached.

You can download the 3D files from this GitHub repository: https://github.com/HassanKanj/external-ssd-case-for-laptop

External ssd case for the laptop
 

Attach the 2 parts using super glue
 

You can modify the dimensions in the FreeCAD file to suit your needs
 

2 - Headphone holder

Here’s a custom headphone holder I designed that you can attach to your desk.

The gitHub repo contains the design that I used but I have also included the design file (FreeCAD file) so you can modify the dimensions to suit your needs.

GitHub repository: https://github.com/HassanKanj/headphone-holder

A 3D printed headphone holder
 

You can modify the dimensions in the FreeCAD file to suit your needs
 

3 - Refrigerator bottle holder

We had a problem at home where water bottles weren’t stable in the refrigerator, so I designed and 3D printed this item which solved the issue! 3D printing is super awesome for such stuff!

a 3D printed bottle holder
 

You can download the STL file from this GitHub repository: https://github.com/HassanKanj/refrigerator-bottle-holder

4 - Phone holder for the keyboard

This is a 3D design I made in order to attach my phone to the Apple Wireless Keyboard (though it may work with other keyboards, but I didn’t test it).

in my case, I wanted to use the phone to execute macros on my MacBook (through a web app I am accessing from the phone), but you may use this holder for a different scenario.

The holder is actually divided into 2 parts, that can be be attached to they keyboard using a nut and a bolt for each part with a diameter of 3mm.

GitHub repository: https://github.com/HassanKanj/phone-holder-for-the-keyboard

A 3D printed phone holder
 

A 3D printed phone holder
 

5 - Cables holder

Here’s a custom cables holder I designed that you can attach to your desk.

This repo contains the design that I used but I have also included the design file (FreeCAD file) so you can modify the dimensions to suit your needs.

GitHub repository: https://github.com/HassanKanj/cables-holder

cables holder
 

cables holder
 


This page is still a work in progress… more projects will be added here in the future.