justinbentley.dev
Filter;
Websites
Switchboard, jbn.ai
.Net Core 8, MVC
HTML, CSS, JavaScript, SPA, WebGL (three.js), GLSL (C), glTF (.glb), Media Queries, Cookies
3D Frontend, Switchboard site
Large client-side JavaScript engine to operate multiple WebGL backgrounds and dynamically switch icons
Includes my own polymorphic JavaScript three.js Particle System with its own GLSL (C-like syntax) Particle Shader.
Unminified.
3D Tax Calc, jbn.ai/calc
.Net Core 8, T-SQL, Blender, API
HTML, CSS, JavaScript, WebGL (three.js), glTF (.glb), Cookies
3D Tax Calculator
WebGL Background scene coupled with a HTML, CSS & JavaScript Tax Calculator frontend
Uses Cookies to store client Tax category and thousand seperator preference
Aphid Attack (game), jbn.ai/aa
.Net Core 8, Blender
HTML, CSS, JavaScript, WebGL (three.js), glTF (.glb)
3D WebGL Game
WebGL Game Engine, Game, Keyboard / Mouse Control, everything in vanilla JavaScript.
Hope you like it!
pcuser.org, pcuser.org
.Net Core 8, MVC, T-SQL, Blender, Wordpress-like Admin Site
HTML, CSS, JavaScript, WebGL (three.js), glTF (.glb), Cookies, Figma
PC (Personal Computer) Technician site
Has a Wordpress-like Admin Site that populates the SQL Database to in turn populate the Website.
Uses Cookies to store client last state on index page and theme preference
Arcane Woodwork, arcaneww.com
.Net Core 8, MVC, API Dynamic Image Viewer, ReCaptcha
HTML, CSS, JavaScript, Media Queries
Woodwork Showcase site
Contains a API to return how many images are present of a particular subject and returns an image address corresponding to the images index, called by Image Viewer (below).
I have a YouTube video of how I implemented ReCaptcha into this particular site too: < youtube >
Woden Laundromat & Dry Cleaners, wodenldc.com.au
.Net Core 8
HTML, CSS, Media Queries, SEO
Woden Laundromat & Dry Cleaners Website
Commercial site to display Opening Times and Details of a Laundromat in Woden (Phillip), Canberra, ACT
Was originallywodenlaundromat.com which is now a 308 (Permanent Redirect) towodenldc.com.au until renewal lapses.
justinbentley.net, justinbentley.net
.Net Framework 4.8, Transact SQL (Stored Procedures), MVC, Razor
HTML, CSS, JavaScript, Bootstrap 3
Personal, First & Largest site
React, react.justinbentley.net
.Net Core 8, NPM, React
HTML, CSS, JSX, SPA (Single Page Application), <helmet>, emotion
Justinbentley.net Tours, Christmas in SVG & alternate page for ImageViewer
Dennis Bentley Artworks, dennisbentley.net
.Net Framework 4.8, MVC, Razor
HTML, CSS, JavaScript, Bootstrap, React, JSX
Art Gallery
Originallydennisbentley.net/gallery/sydney was written in react and JSX though due to a unavoidable vulnerable package was rewritten in vanilla javascript.
justinbentley.dev, justinbentley.dev
~ This Site ~
.Net Core 8
HTML, CSS, JavaScript, Media Queries, Intersection Observer API, Cookies
Light / Dark theme (using JavaScript) and Cookies to persist through sessions
Intersection Observer API for <button> management
Has a filter system that uses vanilla JavaScript and custom html 'keywords' attrib
Filter accepts url params:justinbentley.dev?JS
David Green Performances & Compositions, davidgreenmusician.com
.Net Core 8
HTML, CSS, JavaScript
Davidgreenmusician.com is a site that hosts the musical compositions, performances and videos of David W. Green.
Rendered Landscapes, renderedlandscapes.com
.Net Core 8, MVC, Blender
HTML, CSS, JavaScript, WebGL (three.js), glTF (.glb)
Renderedlandscapes.com is a site that hosts and can optionally have created a real-time 3D render of an architectural structure (such as a pergola) which they can walk around and view from all angles.
The CAD render files (or mesh's) can and have been created from Architectural diagrams, cardboard models or really ones imagination.
AWS (Amazon Web Services) Web Server
AWS, CDN, Windows Server
Lightsail (EC2), Microsoft© Windows Server host.
IIS (Internet Information Services) for setting up https, hosting and binding sites,
SQL Server for hosting databases and most importantly executing the .Net Core runtime.
Route 53 for (some) domain registrations, network records and nameserver setup.
CloudFront Distribution (AWS CDN) & AWS Certificate Manager (ACM) for very fast or high demand delivery of secure files.
File Server, fs.jbn.ai
.Net Core 8, API, AWS CloudFront, CDN
.Net Core actual file server connected to the AWS CloudFront Content Delivery Network.
Always on file server acting to serve files used by multiple sites (ie ImageViewer, cookies.js, below) and/or serve files quickly or at a very high bandwidth.
Also, being always loaded serves intermediatary functions such as rectifying urls like /youtube-channel and a image server for ultra high quality images on sites like linkedin (superceeding jbn.ai, which superceeded justinbentley.net).
Implements a suite of security measures such as discriminate file Rate Limiting and selective CORS.
Database Security, justinbentley.net/pentest
SQL Stored Procedures (vs) Pentesting Tools
After creating the Database I decided to run it through a Pentest and verify it's Security.
JS Utility Scripts
ImageViewer.js
JavaScript, API
Standalone Full-Screen Image Viewing Script featuring a variety of features and zoom limited only by the resolution of the Image.
ImageViewer (IV) has three modes of operation:
- Start IV with a single Image.
- Start IV with API support, firstly IV requests a number from an API representing how many images available for target item, then IV requests a src using the item number and item index, then IV starts using the src and displays left and right buttons to cycle through the items repeating the latter API call.
- Start IV with simple Array support, functionally the same as API support though an array of src's and a index can be passed instead.
Certain settings can be set before IV is started such as show demo buttons (unsplash and image galleries), demo LR buttons (unsplash, a third party random image API), LR button title text, the Start IV with API support API base addesses and Invert Zoom.
Lastly, uses a complicated mathematical algorithm that I designed to keep the image anchored in the middle of the screen while zooming in or out.
Used for arcaneww.com (which was the host of the script before the dedicated file server(above)), react.justinbentley.net, dennisbentley.net, justinbentley.net and justinbentley.dev (click on an image on this site to use).
ImageViewer can be found running here: justinbentley.net/image
And also here: react.justinbentley.net/image
The source code can be found here: arcaneww.com/js/ImageViewer.js
glparticlegen.js
JavaScript, WebGL (three.js), GLSL (C),
Created my own particle system to work in tandem with 3D (WebGL) scenes. It contains a JavaScript polymorphic super class with two child classes to operate different types of particle shaders and my own GLSL (C like GPU code) Shader code to bring it all together on the GPU.
Currently used for jbn.ai and jbn.ai/webgl though has future plans.
The source code can be found here: jbn.ai/js/glparticlegen.js
cookies.js
JavaScript, Cookies
Standalone script to handle Cookie operations.
Used for many of my sites and located on the file server.
This site uses this script to store data to persist the light/dark mode preference between reloads and revisits.
The source code can be found here: fs.jbn.ai/fs/uni/js/cookies.js
fs.js
JavaScript
Standalone script to handle Fullscreen operations.
Used for many of my sites and located on the file server.
The source code can be found here: fs.jbn.ai/fs/uni/js/fs.js
3D Application Graphics Programming
VR Tai Chi, justinbentley.net/uni/ictp
C++, OpenGL 4.4, GLSL 4.4 (modified C), x64, Steam Corp OpenVR <openvr.h>, Autodesk Maya, GLFW, GLEW, GLM (Math / Quaternion Library)
Scratch made OpenGL Modern Renderer, Game, Tai Chi Simulator in VR with Autodesk Maya constructs
Game Engine, Game, Models (mesh), Mesh Importer (.obj), Digital Elevation Model (DEM) / Heightfield Importer, Shaders, Keyboard & VR Device Control
Microsoft© Bubbles Screensaver Clone, < youtube >
C++, OpenGL 3.3, GLSL 3.3, x64
Clone of Microsoft's most popular screensaver ever
Created to learn 'modern' OpenGL
VIC Final Assignment, justinbentley.net/uni/vic
C++, OpenGL 1.2, GLUT (GL Utility Toolkit), Autodesk Maya
Scratch made Legacy (90's) OpenGL Renderer, Game World Logic and Programatically made assets
Game Engine, Game, Digital Elevation Model (DEM) / Heightfield Importer / Renderer (whitespace seperated .txt), Mesh Importer, Keyboard / Mouse Control
University of Canberra Unit, final grade High Distinction @ 92/100
.obj Wavefront Mesh Importer < youtube >
C++, OpenGL 1.2, GLUT (GL Utility Toolkit), .obj Mesh File
Importer to turn a 'mesh' created in a CAD type program into triangles to be displayed in my own real-time Renderer
Legacy (v1.2) OpenGL Guide, < youtube >
C++, OpenGL 1.2, GLUT (GL Utility Toolkit)
1.5 hour tour of OpenGL 1.2, one of my most popular Youtube Videos
2D Programming
USS-199, justinbentley.net/uni/gpt
C#, XNA / Monogame
Game Engine, Game, Keyboard / Mouse Control, Scoring, etc
All images made in Paint.net!
Save the Trees, < youtube >
C#, XNA / Monogame
Game Engine, Game, Keyboard / Mouse Control, Scoring, etc
First Game Ever!
May not be the most complex, but was made in the University of Canberra library late into the night and weekend after the very first tutorial!
File System Programming
CodeLiner
C++, Win32API <windows.h>
Extract lines of code / operations from .cpp, .c & .h file found in a specified windows directory
Includes a complicated algorithm (second pic) to test for multiple operations per line and ommit comments
Uses <windows.h> to query a directory (third pic) for .cpp, .c & .h files.
Subtitle Time Stamp Reducer
C++, POSIX
Globally reduces or adds to timestamps of a .srt (Video Subtitle) file.
Payroll System
C, POSIX
Program to organize the payroll operations of a business and 'printf' payslips.
Application Programming
Gross Calculator, < youtube >
C# Form
Salary, Taxation, Super Calculator.
Predecessor & engine of: justinbentley.net/salcalc
ANN (AI) 1
C# Form
Front-End for a C++ AI (Artificial Neural Network) Back-End Engine to input training data and values
ASCII Dictionary
C++, Qt Creator
Provides decimal, hexadeciaml, binary & octal values for a entered decimal or character ASCII (utf-8) value
Timer
C++, threading
Queue's alarms within Windows for entered times
Other
StarBase BASIC
BASIC
Not quite your traditional BASIC programming but anyway, theres a MMO Video Game called Starbase where you build a Space Ship and use the Programming Language BASIC to enhance its systems.
Autogen would run the Power Generator to feed the Battery, although it was a bit more complex, it would add load to the Generator if the Battery was less than its last cycle reading and vice versa. Also, add or remove load if the Battery was below or above particular limits, forming a sort of heuristic with weights.
AutoLander would adjust the Pitch & Roll of the vehicle until Rangefinders at each corner of the undercarriage were showing similar distances, indicating the ship is level. Then it would adjust altitude until a particlular range was reached, all while activating the Landing Lights.
Very Long URL Expertise, justinbentley.net/veryveryveryveryveryveryveryverylongurlexpertise
Were you expecting the url to overflow the right margin?
Important component of a youtube video I made addressing a common Web Development topic, ever seen a website that scrolls left to right and wondered why?
The link is clickable.
![Q: Why do programmers always use dark themes? A: Because bugs are attracted to light!](/images/ix/programmerdarktheme.png)