alleviationz

layout: page title: “Alec’s ePortfolio” permalink: https://alleviationz.github.io/Databases

Databases

AAC animals Database w/ NoSQL

Narrative:

This artifact is from my final project in client-server development CS340. It’s a noSQL database that allows basic CRUD functionality to manipulate retrieved animal data. The animals are categorized by numerous attributes including breed, name, age, etc. The original artifact used a local MongoDB Compass database with hard-wired connection variables. It also contained a radio selector to pick between a few animal attribute types and categorize the data. In this project, I originally intended to migrate to an AWS cluster, but I was unable to create any clusters (possibly due to the age of my account). I migrated to MongoDB’s cloud MongoAtlas, instead, which uses the same setup that AWS would have anyways. I cleaned up some of the old code and tests, refactoring tests into automated unit tests. The radio selector was replaced with a drop-down that allows selection of various attributes (similarly to the previous implementation), but it also incorporates a search bar that updates as the user types. The security could be improved further by implementing better try-catch blocks, resolving the initial “None”-loading error that is meant to default to breed categorization, and implementing some better security. Additionally, the previous markers could be replaced with indices, assuming they will be searched often.

Purpose

The purpose of this enhancement was to provide a better user experience with the search functionality because the radio-selector had strong limitations.

Search w/ drop-down selector

Search bar drop-down selector <img width=”1485” height=”321” alt=”image” src=”https://github.com/user-attachments/assets/ebd96904-01f1-4a4b-bd44-cf2656121ad4)

Resulting Graph

Graph after drop-down was selected

Results update as user searches

Graph update during user search Second image of graph

Migration to MongoAtlas w/ environment variables to obfuscate credentials

MongoAtlas migration

Unit Tests

Unit tests

Full Project repo

Full Project