Directory


Tool Implementation & Research Projects

Project: Automated Community Smell Detection Using In-Context Learning Capabilities of GPT
Description: This research paper will focus on identifying community smells in large-scale software companies or environments by leveraging GPT's in-context learning capabilities. Our goal is to eventually develop this into a tool called the "Community Smell Detector." The work is currently in progress, and additional details will be provided soon.
Status: Work In Progress
Project: Web API Automated Black Box Testing Tool
Description: BOTest is a desktop tool for automated black box testing of RESTful Web APIs. It generates and executes test cases from OpenAPI specifications to detect faults. The tool uses Java, JUnit, and RestAssured, and produces detailed HTML reports with Allure Report. Input includes an OpenAPI file and server URI, and output is a comprehensive test report.
Tools: Java, JUnit, RestAssured, Allure
Project: Goal-Question-Metric Framework Project
Description: This project analyzes the productivity and teamwork-related factors of software professionals in Bangladesh using the GQM framework. Data was collected through a survey and analyzed to understand the relationship between productivity and teamwork.
Tools: Python
Project: Abstract Syntax Tree Generator
Description: This project involves developing key components for a compiler: constructing an Abstract Syntax Tree (AST) and performing lexical analysis to convert source code into tokens. These components are essential for accurately translating source code into executable programs.
Tools: C++
AI/ML Projects

Project: Gomoku Game with AI Opponent
Description: This project involves developing an AI for the board game Gomoku using Flutter. The AI employs the minimax algorithm and alpha beta pruning to make strategic moves, providing a challenging opponent for players. The Flutter framework ensures a smooth and user-friendly interface, making the game accessible on both Android and iOS devices.
Tools: Flutter, Dart
Project: Wumpus World with AI
Description: Wumpus World is a classic AI problem that involves navigating a grid-based world filled with hazards like pits and the Wumpus monster. The goal is to find the gold and exit the world safely. This project implements the Wumpus World environment and game logic using Python.
Tools: Python, Pygame
Project: Glass Identification using K-NN and K-Means Algorithms
Description: This project focuses on classifying glass types using two machine learning algorithms: K-Nearest Neighbors (KNN) and K-Means Clustering. The dataset used is glass.csv, which contains various attributes of glass samples.
Tools: Java
Project: Skin Detection using Naive Bayes Algorithm
Description: This project focuses on developing a skin detection algorithm using the Naive Bayes classifier. The primary objective is to accurately classify skin and non-skin pixels in images, leveraging the probabilistic nature of Naive Bayes. The project also incorporates cross-validation to ensure the robustness and generalization of the model.
Tools: Java
Project: Leaf Prediction using KNN
Description: This project implements a leaf prediction algorithm using the K-Nearest Neighbors (KNN) algorithm. The model is trained and tested on the Iris dataset, a well-known dataset in the machine learning community. The project is implemented in Java without using any machine learning libraries, showcasing a pure Java approach to building a classification model.
Tools: Java
Project: Image Pixel Clustering using K-Means Algorithm
Description: This project implements the K-Means Clustering Algorithm to cluster pixels of similar kinds together in an image. It is designed to demonstrate how K-Means can be applied to image processing tasks.
Tools: Java
Project: K-D Tree Implementation
Description: This project contains a Java implementation of a K-dimensional tree (KdTree). The KdTree is a space-partitioning data structure used for organizing points in a k-dimensional space.
Tools: Java
Project: Anova Test
Description: This is a Jupyter Notebook-based project aimed at simplifying the process of performing Analysis of Variance (ANOVA) tests. ANOVA is a crucial statistical tool used to compare the means of multiple groups and determine if there are any statistically significant differences between them. This project provides a user-friendly interface and comprehensive documentation to help users understand and apply ANOVA tests to their datasets effectively.
Tools: Jupyter Notebook
Development Projects

Project: Udemy Web UI
Description: This project aims to replicate the user interface of the popular online learning platform, Udemy, using the Next.js framework. The goal is to create a visually appealing and functional clone that mimics the core features and design elements of Udemy, providing a seamless user experience.
Tools: Next.js
Project: News Stories Web UI
Description: This project involves creating a user interface for a blog posting platform using React.js. The platform fetches data from an external API to display blog posts, allowing users to read, create, and manage their blog content seamlessly. This project was part of my internship at Cefalo Bangladesh Ltd.
Tools: React.js
Project: News Stories API
Description: This project is a blog posting platform API built using ASP.NET Core. It follows the repository pattern and utilizes an MSSQL database server. The core logic is divided into four layers: API, Service, Repository, and Database.
Tools: ASP.NET Core, Entity Framework Core, MS SQL Server
Project: Ride Sharing System
Description: This project simulates a distributed ride-sharing service using a microservice architecture. It leverages Docker to compose multiple services, including MongoDB for data storage, Nginx for load balancing, and various Node.js services for handling ride-sharing and communication functionalities. The services are designed to operate in different geographical locations, such as Dhaka and Chittagong, to simulate a real-world distributed system.
Tools: Node.js, Docker
Project: Calculator API
Description: This project is a simple calculator API built with Node.js. The main focus of this project is to demonstrate continuous integration and continuous deployment (CI/CD) using GitHub Actions and Heroku.
Tools: Node.js, GitHub Actions
Project: IIT-360 Mobile Application
Description: This is a Flutter application designed to provide general information about the Institute of Information Technology (IIT), University of Dhaka. It offers special functionalities for students and teachers, including class alarms, event reminders, and class rescheduling notifications. This is a project related to the course Software Project Lab 2.
Tools: Flutter, Dart
Project: IIT-360 API
Description: The IIT 360 Backend is a robust and scalable server-side application developed using ASP.NET Core. It serves as the backbone for the IIT 360 project, providing essential functionalities and data management for the mobile application used by students and faculty of the Institute of Information Technology (IIT), University of Dhaka.
Tools: ASP.NET Core, Entity Framework Core, MS SQL Server
Project: Point of Sale Web UI
Description: This Point of Sale (POS) system was developed using Angular as part of the Web Technology course. The system is designed to streamline sales processes, manage inventory, and provide detailed sales reports, making it an essential tool for retail businesses.
Tools: Angular, TypeScript
Project: Point of Sale API
Description: This is the API for the Point of Sale (POS) system, developed using ASP.NET Core. The API follows the repository pattern and employs best practices such as Data Transfer Objects (DTOs). It uses a code-first approach for database management with MSSQL Server. It was part of the Web Development Course.
Tools: ASP.NET Core, Entity Framework Core, MS SQL Server
Project: Shape Drawing Desktop Application
Description: This JavaFX project allows users to draw various shapes. The implementation follows the Composite Design Pattern, enabling complex shapes to be composed of simpler ones. This was part of my Design Patterns course.
Tools: JavaFX, Java
Project: Text Conversion Desktop Application
Description: This JavaFX project allows users to convert text into different formats (JSON, XML, CSV) using the Strategy Design Pattern. The application provides a user-friendly interface for selecting the desired format and performing the conversion.
Tools: JavaFX, Java
Project: Authentication Web Application
Description: This is a PHP web application for user signup and signin, developed as part of a web development course. The application uses MySQL for database connections and Materialize CSS for styling.
Tools: PHP, MySQL, Materialize CSS