Recent Dev Work

YourPoolHQ

Magento 2.0
jQuery UI
Flexbox
LESS

A community edition Magento 2 implementation for selling pool supplies to customers. The site includes multiple custom module builds developed by me, including a dynamicly generated bestselling landing category page and a custom theme. I was one of many developers who worked on this site, and my focus during this build was largely on frontend programming and theme-building.

The Gazette

Google Maps API
jQuery UI
Flexbox
SCSS
Bootstrap 3

A hybrid in-house news management and content delivery system, providing real time news at the same time as CMS features for content editors. The site includes multiple scripts such as crawlers, CDN and cache-busting content delivery, entire pages and content-types such as gallery lists, that I've written. I was one of many developers who worked on this site, but since I joined the team the pages and controllers I have worked on have seen an average two fold increase in traffic (newsletters, gallery lists, articles, etc).

Circsy

Laravel 5
Bootstrap 3
jQuery UI
SCSS

A subscription management system, meant to consolidate capabilities of several other systems and improve user experience. It features programming such as authentication and permission layers, language variable usage, and a fully responsive design built from scratch. I was the sole developer and designer for this project, and built it from the ground up for automated integration with multiple external third party vendor and API-based systems (Braintree, Newscycle Systems etc).

Out There Colorado

SCSS
Flexbox
Google Maps API
Solr

A site for outdoor enthusiests. Includes interactive map filtering, an API and app shell, and multiple data-management and SEO optimization techniques. I was one of 2 developers on this project, and I build out the interactive map (backend and front end) views and a good chunk of the schema as well. This is actually the third incarnation of this site I have built, the last of which saw a 2-3x increase in traffic from the year before.

Colorado Real Estate Journal

Wordpress 4.6
Bootstrap 3
jQuery UI

A site for indexing local businesses. Includes a custom php backend architecture and custom plugins. I was the sole developer for this project with the aid of 1 designer, completed on a 1 month deadline.

Diplomacy Global Strategy

Phpbb 3.0
Masonry
Photoshop CS3
TinyMCE

A modern risk-clone for educational purposes. Includes custom built mods, theme, and elements like a fully interactive image map drawn by me. I worked alone as the lead developer and designer for this project

Intergenerations

Wordpress 4.6
Bootstrap 3
jQuery UI

A site for multiple generations to experience group activities. I was one of two developers for this project.

Dallas Oboe Reeds

Bootstrap 3
jQuery UI

A site for the sale of saxophone and oboe reeds, along with music lessons. Includes a custom php backend architecture and custom design. I was the sole developer for this project, completed in 5 days.

Starry Night Competition

Bootstrap 4
Wordpress 4.6
jQuery UI

A site promoting a competitive event between painters. Includes a custom php backend architecture and custom design. I was the sole developer for this project, completed in one month.

Personal Pet Projects

Ascend

Chart.js
Wordpress 4.6
jQuery UI
Bootstrap 4

A site providing aggregated resources to scientific and businesses. Includes a custom design and logo made by me, along with all of the frontend search, sort and map capabilities. I was the frontend developer and designer for this project, completed in 3 days for the GoCode Colorado 2015 event. I continued on as a finalist with another team on a different project that year, and I was also a participant in GoCode 2014.

Esmaerin

Phpbb 3.1
jQuery UI

An avatar and pet gaming site originally known as Eos Online and later retitled to Esmaerin. I was the sole developer, designer, pixellist, and administrator for this site for 4 years. Everything from an interactive battling system, a genetic algorithm for pet breeding, and five-tier multidimensional object-array manipulation was created for this site. More than 10,000 pixel items were drawn by me, along with half a dozen background-sized images and art for every page and a multi-style system that allowed users to change the overall site css and color scheme separately. A promotion video displaying the features is available below: AVI MP4 WMV

Imposter

Unity
Photoshop CS3

A game based on predicting ritualistic behaviors. I was one of five developers for this project, completed in 3 days for Global Game Jam 2016. I also participated in Global Game Jam 2015 but unfortunately I no longer have a copy of the game that was created that year.

Dev Code Samples

PHP

Return image information based on multiple input and options types.


function return_img_info($layer_id, $item_id, $mode = 'default'){

if(is_object($layer_id)){

foreach ($layer_id->item as $item){

$filename = $item . '-' . $item_id . '.png';

$layer_id = $item;

}

}else if (is_array($layer_id)){

foreach ($layer_id as $value){

$filename = $value . '-' . $item_id . '.png';

$layer_id = $value;

}

}else{

$filename = $layer_id . '-' . $item_id . '.png';

}

$dirs = __DIR__ . 'images';

switch ($mode){

case 'entire':

return $dirs . '/' . $filename;

break;

case 'filename':

return $filename;

break;

case 'dirs':

return $dirs;

break;

case 'default';

return $filename;

break;

}

}

SQL

From a pet battling and breeding game


SELECT p.pets_id, p.description, p.species, p.level_speed, p.max_hp, p.evolution, u.*, s.color

FROM pets p

LEFT JOIN users u

ON p.pets_id = u.pets_id

INNER JOIN shop s

ON s.item_id = u.pets_id

WHERE u.pets_id is not null

AND u.pets_user_id = ' . (int) $user_id . '

ORDER BY p.pets_id DESC;

JQuery

Building an object to store DOM elements for use in later functions


var locations = Array();

$('.location').each(function(i,e){

var obj = {},e = $(e), attrs = e[0].attributes;

for (var i in attrs) {

if (attrs[i].name && attrs[i].name.match(/^data-/)) {

obj[attrs[i].name] = attrs [i].value;

}

}

obj.nn = $(this).html();

obj.__instance = e;

locations.push(obj);

});

Javascript

Google Maps click function for centering and zooming on a point.


map = new google.maps.Map(document.getElementById('map'), mapOptions);

map.data.addListener('click', function(event) {

var index_val = event.feature.getProperty("NAME");

var html_content = state_data[index_val];

var infobox_pos = (event.feature.getProperty("CENTER")).split(":");

var myLatLng = {lat: parseInt(infobox_pos[0]), lng: parseInt(infobox_pos[1])};

infowindow.setContent('

' + html_content + '
');

infowindow.setPosition(myLatLng);

infowindow.setOptions({pixelOffset: new google.maps.Size(0,-30)});

infowindow.open(map);

});

Ajax

Grab GeoJSON data and return it


$.ajax({

url: 'filepath.php',

async: false,

dataType: 'json',

success: function (json) {

data_obj.data.addGeoJson(json);

json_ary.push(json);

}

});

C#

Moves a character in the direction of the button pressed and allows interaction with nearby objects.


void Update () {

body.AddForce(new Vector2(Input.GetAxis("Horizontal") * speed,Input.GetAxis("Vertical") * speed));

if (Input.GetKeyDown(KeyCode.Space) && actionAllowed) {

lastActionTime = Time.time;

actionAllowed = false;

Interact();

}

if (Time.time > lastActionTime + actionCooldown && !actionAllowed) {

actionAllowed = true;

playerAnimator.runtimeAnimatorController = null;

playerHeadSpriteRenderer.sprite = neutralFace;

playerSpriteRenderer.sprite = neutralBody;

}