Nick Marcopoli

Computer Science
University of Notre Dame

See my work


Here’s a sample of some of the work I’ve done. You can find a more complete list (with source code!) at Click on the titles of the projects to be taken to their respective Github pages.

Wikipedia Network Analysis

This was my Data Structures (CSE 20312) final project. In case you can’t run the Jupyter Notebook with all of its dependencies, check out our project demonstration video here. Huge shoutout to my group on that video - I had another project to complete (Laser Breakout, read about it below!), and they were able to make the video without me.


I created this web app out of a need to shorten some of my GitHub URLs quickly and easily. I found a site created by the GitHub team to accomplish this,, but this site only allows you to create randomly generated shortlinks. I found that you can create a custom shortlink with the unix command line, but I wanted something that would be simple and intuitive for users who aren't familiar with the command line. My site allows any user to check if a vanity URL is taken and request that custom URL for any GitHub page.

BlueNet Dispatch Android Application

This app was created for Dr. Christian Poellabauer’s Mobile Computing Lab at Notre Dame, where I worked as an undergraduate research assistant. The idea for the app was to connect phones using a custom Bluetooth Low Energy protocol developed by a couple graduate students at ND - BlueNet - where phones could use other phones as intermediates to connect to a BLE device out of their range. I developed the UI for this app and integrated Google Maps functionality to display the positions of connected devices.

Path Finder

Here’s another Data Structures (CSE 20312) project. I’ve hosted this project on my DigitalOcean server here so that you can try it live. It’s an implementation of Dijkstra’s algorithm, where the various randomly generated tiles are weighted edges between the starting point and your selected point.

MATLAB Parametric Equalizer

This is a single band parametric equalizer GUI I implemented in MATLAB for my Introduction to Microprocessors and Multimedia course. Essentially, it uses a continuous time transfer function to create a notch filter, which can be adjusted to amplify or attenuate certain sounds in a variety of music samples. I included a user manual and a technical manual in the project folder, which you can download here. Please skim over these before using the equalizer!

MATLAB Bomb Defusal Simulator

As a final project for our Introduction to Engineering course, several of my friends and I created a bomb defusal simulator in MATLAB which resembles the popular PC game "Keep Talking and Nobody Explodes." Our group implemented an interactive GUI which allows users to defuse a bomb by following a silly instruction manual. We included a “simulator” GUI, which allows users to compare three different solving algorithms - Randomization, Brute Force, and Rule Abider - to see the advantages and disadvantages of each. The video above is our final project video explaining the Simulator in more detail, which I recommend watching before downloading the project. You can download this project here.

Vince Marcopoli Guitar Website

I set up the web page for Vince Marcopoli’s music. Check him out at!


Indiana Collegiate Press Association Awarded Photos:

Best News Photo, First Place: Entranced by the Eclipse

Best Feature Photo, Third Place: Making a Difference

Notre Dame Magazine Feature:

Photo of the Week: New dance digs

Other Selected Photography: