Hello! My name is Daniel Chapman.
Welcome
to My Portfolio!
I'm:
- a web developer in New York City.
- a JavaScript fan with a focus on React and Node with GraphQL, but have also used Ruby and PHP in the past.
- excited that you took the time to check out my website and my work!
Favorite Projects and Work
-
Drone One Hudson
Drone 1 Hudson is an HTML/JavaScript website built on Netlify. It is for a gallery space on Hudson run by Gryphon Rue.
It is built ontop of Netlify CMS for easy updating and authentication. -
Gryphon Rue
Gryphon Rue is a Wordpress website built with PHP and JavaScript.
This website is his portfolio. I was not responsible for the initial wordpress installation. I was responsible for creating a new template and working with Wordpress CMS to make the template work with a wide variety of medias and ideas. -
Robert Buck
Robert Buck is a Ruby on Rails website.
It is the artists portfolio culminating work over a few decades. There are some NSFW images on the homepage slideshow and in a few shows as a warning. -
Reddit Clone
Not Currently Hosted / Github
This is a Reddit clone built with React, Node, and GraphQL using Apollo and with Keystone for the backend.
This is currently not hosted for demo but you can clone the repo, fill in the .env information from the README and run npm run dev on both the backend and frontend folders. -
JS Handwritting
I took the Stanford Coursera course on AI as a fun thing to do, and learned how to use Octave with some machine learning algorithms.
I was intrigued by the number identification so I wanted to try to build it myself using Javascript entirely. This was not something that should really ever be done as Javascript can have some issues with floating point values, but it was just a fun challenge. This includes training and running 400+ simulations over the data to try to increase the accuracy. Its not perfect, and with Javascript I dont think it ever could be, but adding in tensorflow or training the data with python/octave originally would be more helpful.
This was just something fun I wanted to do! Also Heroku timesout after 30 seconds and sometimes the sight can take longer than that to compile with parcel. If you get an error, refresh.
About Me
I grew up in a small town in Connecticut where I spent most of my time on the computer because there wasn't much else to do.
Because of that, I started getting into programming in my teen years as I wanted to make my own text-based website games. This turned into learning about PHP and MySQL. This continued on until I grew an interest in security and started tinkering with HTS. From there I would go on to take a Java class junior year of high school and go on to be the TA of that class my senior year.
Ultimately leading towards going to university for a bachelors degree in Computer Science - Honors. While there I got to experience a breadth of different topics. Database architecture, security, web development, algorithms, C and Computer Architecture, the whole gambit. This led to a continued interest in some of those topics like AI, I spent some time learning swift when it first came out to experience apple mobile development, tried my hands at software development, and android development.
What I always came back to was web development. With a computer in everyones pocket now, the browser just seemed to be the ultimate creative space. Making something visually stunning, making something fun, or making something function all under the same programming language, equivolant in design across platforms, and accessible across android, apple, windows, and linux (mostly). Its what I started with and its what I wanted to continue.
So when I decided to focus on web development, I spent time learning the basics again, HTML and CSS. Then onto Bootstrap to experience it. I tried out Ruby on Rails but the interest in it seemed to be dying out online. MERN and MEAN stacks were becoming the most popular stack very quickly so I experimented and played around with Angular (first version). Then started on React which led to Node, Express, and MongoDB.
And its been what I've been using since unless a project required something else in which case I adapted or learned enough about that language, or I just wanted to spend some time playing with something else like AI. But new tools always provide new opportunities to be creative like Keystone, Netlify, Apollo and GraphQL. Recently have been enjoying utilizing ChatGPT and Github Copiloot as a tool to assist with programming. They are powerful tools that programmers should be comfortable utilizing too improve the development experience!
Fun Projects
-
Video Game Tools
Bit-Heroes Equipment AppDiscontinued. This is a React application for the game Bit Heroes. Used to have an optimizer using workers to multithreading but the game got more compicated to handle it accurately without having more object definitions. A lot of data and interactions are present in functions.js, equipment.js and the like (runes, enchants, etc).
Not being updated anymore, but this was a React application using recursion to time the entire leveling up process of the oldschool runescape experiences farming skill. Instead of a math based approach, I thought it would be fun to have it recur itself as it was also not something I've ever had to do with react components and being visualized before (beyond algorithms that are apart of functions being called).
-
Canvas Gun Shooter
This is based on a youtube video I had recommended, that I can not find otherwise I would link it (if you know what it is, send me a message so I can please give credit), where it had randomized shooters in a grid and it let it run. Thought it would be a fun thing to do and to play around with detection with respect to searching arrays.
The original video used plinkos to randomize so in Settiings/About I threw in an option to open a plinko canvas. You can add your own bumpers (plinkos), clear them out, drop your own balls, and pause the game and just play with it yourself!
Plinko code was writting on top of this starting point writting by Alan Chu, on codepen, which was based on Daniel Shiffman's 3 part video series, links on github readme. -
Fetch JSON to Tree Templates
Wanted to give a try at this interview question
"Your task is to develop a reusable UI component that retrieves JSON data from a given URL and shows it in a tree view where nodes can be expanded and collapsed. The component should be able to handle any valid JSON, without any expectations regarding its structure. To clarify, please don't rely on a 3rd party component to render the tree, but rather implement a simple tree using basic HTML/CSS building blocks.
The page that contains the component must be able to control the URL from which the data is obtained. The URL is assumed to be publicly available without authentication. Changing the URL should fetch the data and update accordingly.
The choice of visual style and technology stack is up to you."
Functionally it works, didn't worry too much about making it pretty as this was just an exploration of web components in a non react setting. -
HPSNZ - Recreation
This is a recreation of the former HPSNZ website. It used this really cool video to ascii conversion that i instantly wanted to try to build. The rest of the content is just filled in with harry potter terms and lorem ipsum, the real focus is on the video conversion in part with this library Jscii by EnotionZ.
-
Other Canvas Fun
/ /
Just something carried over from my old portfolio, a bit of fun!