CodeFoxSoft Java Apps

This was all created from 2009-2012 when I was in high school. Some of this is actual AP Comp Sci Projects, others was pure creative fun! Most of this has no real world application, it simply proves raw programming and mathmatics with nothing but skill and the Java API. Long before AI could write code, and before Stack Overflow had all the answers, I was teaching myself to speak the machine's language. My journey didn't start with a bootcamp; it started in the dark with QBasic and a help file, grinding out logic one syntax error at a time. I graduated to Java armed only with the raw API documentation and a text editor, building physics engines and cryptographic tools from scratch. This repository isn't just a collection of files; it is the fossil record of that evolution. It is proof that I didn't just download my skills—I forged them in the trenches of manual coding. This foundation is why, today, I don't ask AI for help; I give it orders.

How to use page:

Click an Image to see the screenshot, you can navigate screenshots with keyboard. To Download the Java App, Click ProgramName.Java to be redirected to GitHub to download Source, please compile using prefered IDE and test the code yourself! Everything functions properly! Applications are grouped by category!

🖥️ Professional Text Editors & IDE Tools

These projects demonstrate complex UI state management, file stream handling, and modal editing logic.

NotepadCommander - VIM-inspired Java text editor with command bar

NotepadCommander.java

An advanced VIM-inspired text editor featuring a command bar, syntax highlighting, autocomplete, and modal editing. Very fun project to design and work on. Definitely a Codefoxsoft favorite. This was before autocomplete was so common


SmartNotepad - Java text editor with dictionary-based autocomplete

SmartNotepad.java

An enhanced text editor equipped with an autocomplete feature. This was groundbreaking for me; created back in 2011, I learned that I could create my own autocomplete function. This is before Autocomplete was common, created with String Tokenizer and a dictionary file.


JavaNano - Lightweight terminal-themed text editor GUI

JavaNano.java

A terminal-themed text editor GUI that simulates a command-line interface. Made to be extremely simple and light.


JavaNotepad - Recreating Windows Notepad functionality in Java

JavaNotepad.java

A fully functional text editor supporting standard file operations. I created this because I wanted to basically recreate Windows Notepad.


SimpleNotepad - Basic Java GUI text editor

SimpleNotepad.java

A basic text editor facilitating opening and saving text files via a graphical interface.


StudentRecordApp - Java data entry system for student information management

StudentRecordApp.java

A data entry application for managing student records (Name, Grade, DOB) with file save/load capabilities.


🧮 Advanced Mathematics & Algorithmic Engineering

Hard-hitting logic demonstrating the handling of complex calculations and rigorous data transformations.

KeyGenerator - Algorithmic Fibonacci-based license key generator

KeyGenerator.java

Generates pseudo-random software license keys by calculating massive Fibonacci numbers and converting subsets of them into formatted Hexadecimal strings.


MatrixMultiplier - Linear algebra tool for matrix products

MatrixMultiplier.java

A linear algebra tool that enables users to input two separate dimensions and data sets for matrices and computes their product.


MatrixOperations - Matrix arithmetic calculator for addition and multiplication

MatrixOperations.java

A matrix arithmetic calculator offering a menu to perform matrix addition, scalar addition, or scalar multiplication (Matrix Themed).


FibonacciRecursive - Visualizing sequence generation using recursive algorithms

FibonacciRecursive.java

A mathematical demonstration that generates and displays the first N terms of the Fibonacci sequence using a recursive algorithmic approach.


SmallestMultiple - Algorithm finding the LCM of integers 1-20

SmallestMultiple.java

A search algorithm that finds the smallest positive number that is evenly divisible by all integers from 1 to 20.


PythagoreanTriples - Math tool searching for integer sets satisfying a^2 + b^2 = c^2

PythagoreanTriples.java

Searches for and lists sets of integers (a, b, c) that satisfy the Pythagorean theorem within a specified range (1-100).


DecimalConverterGUI - Multi-base number system converter with radio buttons

DecimalConverterGUI.java

A comprehensive number system converter allowing transformation between Decimal, Binary, Octal, and Hexadecimal formats via radio button selection.


NumberSystemConverter - Conversion tool between Decimal, Binary, Octal, and Hex

NumberSystemConverter.java

A multi-base conversion tool where the user selects source and target checkboxes to convert values between Decimal, Binary, Octal, and Hexadecimal.


GeometryCalc - Circular and spherical property calculator

GeometryCalc.java

Calculates and displays geometric properties (Circumference, Area, Surface Area, Volume) for circles and spheres based on a user-defined radius.


MultiplesOf3And5 - Numerical analysis for summing natural numbers

MultiplesOf3And5.java

A numerical analysis solution that sums all natural numbers below a user-defined limit that are multiples of 3 or 5.


SumOfSquares - Mathematical tool for calculating square sums

SumOfSquares.java

Calculates the sum of squares for a range of numbers.


TriangleArea - Geometric calculator for vertex-based area

TriangleArea.java

Calculates the area of a triangle given the coordinates of its three vertices.


CircleArea - Precise circular area calculator

CircleArea.java

A mathematical tool that computes the precise area of a circle based on a user-submitted radius value.


AreaPerimeter - Rectangle property calculator for length and width

AreaPerimeter.java

A geometric calculator GUI that computes and displays both the area and perimeter of a rectangle derived from user-provided length and width input values.


MathOperations - Comprehensive demonstration of Java Math library functions

MathOperations.java

A comprehensive demonstration of the Java `Math` library, performing various operations such as square root, cubing, and random number generation on a single input.


JavaMathGUI - Integrated math exploration tool with real-time results

JavaMathGUI.java

A math exploration tool that takes a number input and simultaneously displays the results of various Math class operations.


LittleMathMethods - Modular arithmetic calculator using custom methods

LittleMathMethods.java

A modular arithmetic calculator that accepts two numerical inputs and processes them through distinct methods to perform arithmetic operations.


MethodSquare - Functional demonstration of a squaring method

MethodSquare.java

A simple functional demonstration that accepts an integer input and passes it to a dedicated method to calculate and return its square value.


🎮 Game Development & Physics Simulations

Interactive environments showcasing collision detection, real-time rendering, and game loops.

jPong - Arkanoid-style arcade game (The precursor to SpacePong)

jPong.java

A comprehensive Arkanoid-style arcade game. Believe it or not, this was actually the BASE for SpacePong for Android!


Pong - Classic arcade game featuring multithreaded animation

Pong.java

Pong.java was created in 2011. At this time the most interesting concept to me was multithreading, which allows for the illusion of animation. Definitely one of the Codefoxsoft Favorites!


JumbledImagePuzzle - Visual puzzle game with image tile scrambling

JumbledImagePuzzle.java

A visual puzzle game that loads an image, splits it into tiles, and allows the user to click a "Jumble" button to scramble them.


SevenEleven - Graphical dice game with win/loss logic

SevenEleven.java

A graphical dice game where the player attempts to roll a sum of 7 or 11 within three attempts to win.


GuessTheNumber - Interactive numerical guessing game with feedback

GuessTheNumber.java

An interactive game where the user attempts to guess a randomly generated number between 1 and 10, featuring high/low hints.


SimpleLottery - Random-number match game

SimpleLottery.java

A simple luck-based game where the user tries to match two randomly generated numbers.


HackerTerminalSimulator - Immersive movie-style command-line simulation

HackerTerminalSimulator.java

An immersive "movie-style" hacker terminal simulation. Has fun commands like trace, hack, matrix, or nuke!!!


SimpleSpaceGame - Reflection-based text and shape animation simulation

SimpleSpaceGame.java

A visual simulation featuring a bouncing text label and rectangle that continuously reflects off the window edges.


🎨 Graphics, Animation & Java 2D

Visual-centric code demonstrating high-speed rendering and procedural generation.

AnalogClock.java

AnalogClock.java

Renders a functional 24-hour analog clock using Java 2D graphics, featuring second, minute, and hour hands that update in real-time.


BallMover.java

BallMover.java

Displays a smooth animation of a yellow ball bouncing horizontally. One of the first demonstrations where I learned to use multithreading for animation.


RandomWalkAnimation.java

RandomWalkAnimation.java

Simulates a "Random Walk" algorithm on a grid, visualizing the path of an agent moving in random directions.


RandomPixels - High-speed random pixel color generation loop

RandomPixels.java

A high-speed graphics demo that fills the screen with random "pixels". This was a "shout out" to when I first started with QBasic in 2006; as a 6th grader, I enjoyed the colors and simple graphics loops.


ColorArcs - Concentric circular arcs with procedural color gradients

ColorArcs.java

A graphical demonstration that draws multiple concentric arcs using generated color gradients.


RandomColorSquares - Flashing random square graphics demonstration

RandomColorSquares.java

Creates a visual "flashing" effect with random squares. This is also a Codefoxsoft favorite and a "shout out" to my early days with QBasic in 2006.


RandomDots - Automated drawing program with random colored circles

RandomDots.java

An automated drawing program that periodically adds a new randomly colored circle to the window.


RandomLineDrawer - Accumulative line art generation

RandomLineDrawer.java

Accumulates a drawing of random red lines on a white background.


PatternGenerator - Procedural maze-like text pattern generator

PatternGenerator.java

A GUI that generates random maze-like text patterns using `|` and `-` characters, responsive to window resizing.


Welcome - Digital dashboard with date, time, and dynamic imagery

Welcome.java

A digital welcome screen displaying the current date and time alongside a dynamic image.


🔡 String Manipulation & Linguistics

Sophisticated text processing, parsing, and data cleaning utilities.

MorseCodeTranslator - Text-to-Morse translation utility

MorseCodeTranslator.java

A translation utility that converts alphanumeric text input into Morse code using parallel lookup arrays.


MorseCodeGUI - Visual Morse code generator interface

MorseCodeGUI.java

Provides a graphical interface for translating user-typed text into visual Morse Code sequences (dots and dashes).


TextAnalyzer - Linguistic statistics reporter (words, letters, vowels)

TextAnalyzer.java

Analyzes a text string to report statistics including vowel counts, total word count, and letter count.


WordSearch - Dictionary-based word search puzzle solver

WordSearch.java

A puzzle solver that reads a grid and a dictionary from text inputs to find words in all 8 directions.


FileTokenizerDemo - StringTokenizer demonstration for file parsing

FileTokenizerDemo.java

A parsing utility that opens a user-specified text file and utilizes the `StringTokenizer` class to break down and display the content.


Strtok - Interactive sentence-to-token converter

Strtok.java

A GUI that demonstrates the use of `StringTokenizer` to split a user-entered sentence into individual words/tokens.


PalindromeChecker - In-depth string verification with mirror theme

PalindromeChecker.java

A text verification tool that checks if a given string reads the same forwards and backwards, featuring a "mirror" theme.


SimplePalindrome - Basic space-agnostic palindrome verification

SimplePalindrome.java

Checks if a user-provided string is a palindrome, ignoring spaces and case.


WordSorter - Alphabetical list sorting utility for user-entered words

WordSorter.java

Continually accepts words from the user until "done" is typed, then sorts and displays the list of entered words.


PhoneNumberConverter - Yellow Pages themed alphanumeric phone number translator

PhoneNumberConverter.java

A translation utility that converts alphanumeric phone numbers into their numeric equivalent, featuring a "Yellow Pages" theme.


CharacterCounter - Text scanning tool for target character frequency

CharacterCounter.java

A text analysis utility that scans a user-provided phrase to calculate and report the exact frequency of a specific target character.


VowelCounter - Iterative vowel counting utility with grid layout

VowelCounter.java

Counts the occurrences of each vowel (A, E, I, O, U) in a user-provided phrase, case-insensitive (Fixed button layout).


StringRotator - Right-rotation string transformation algorithm

StringRotator.java

Performs a "right rotation" on a string based on a numeric suffix.


LetterSpan - Alphabetical distance calculator and letter lister

LetterSpan.java

A linguistic calculation GUI that determines the alphabetical distance between two characters and lists the intermediate letters.


NamePrefixer - Automated name prefixing based on gender data

NamePrefixer.java

A string processing utility that iterates through a list of names and appends gender-specific titles based on known names.


CelebNameSlicer - String manipulator for programmatic name trimming

CelebNameSlicer.java

A string manipulation demonstration that processes a list of names by programmatically trimming specific leading and trailing characters.


PlayerNameSubstrings - Name parsing tool using substring extraction

PlayerNameSubstrings.java

A string manipulation demo that parses full names to extract and display the first and last names separately.


nameLength - String utility for length calculation and reversal

nameLength.java

A string utility that takes a name input, calculates its length, and prints the name in reverse.


reverse - Quick text reversal utility

reverse.java

A utility that accepts a text string from the user and outputs the reversed version of that string.


StringDemo - Character-array based manual string reversal demonstration

StringDemo.java

A demonstration of manual string reversal using character arrays.


💼 Business, Finance & Logistics

Practical applications for retail, payroll, and industrial estimation.

BankMainApp - Functional banking balance management simulation

BankMainApp.java

A banking simulation GUI that manages a user's account balance, supporting deposit and withdrawal transactions. Includes BankHelper.java for backend calculations.


ProductTotalCalculator - Retail receipt tool with sales tax logic

ProductTotalCalculator.java

A retail calculator that sums product prices with optional descriptions, adds 6% tax (adjustable), and displays a clear receipt.


BabySitterPayCalc - Childcare service payroll calculator

BabySitterPayCalc.java

A payroll calculator GUI for babysitting services that computes total earnings based on hours worked and number of children managed.


MovingCostCalculator - Distance-based logistics estimation tool

MovingCostCalculator.java

A logistics calculator that estimates moving service costs based on distance traveled and rate structures.


CarpetPriceEstimator - Flooring material cost calculator with feet-to-yards conversion

CarpetPriceEstimator.java

A construction cost estimation tool that calculates the total material cost for carpeting a room, converting input dimensions from feet to square yards.


BMICalculator - Body Mass Index health utility

BMICalculator.java

A health utility providing a GUI to calculate Body Mass Index (BMI) based on user-inputted height (inches) and weight (pounds).


PlanetaryWeightConverter - Astronomical weight calculation utility for multi-planetary simulation

PlanetaryWeightConverter.java

An astronomical calculator that computes a user's relative weight on different fictional planets (Voltar, Krypton, etc.).


GPACalculator - Academic grade point average calculator with letter-to-number conversion

GPACalculator.java

An academic grading tool that computes a precise Grade Point Average (GPA) by converting a series of input letter grades into their numerical equivalents.


teacher - Digital gradebook and letter grade converter for educators

teacher.java

A gradebook application allowing a teacher to input student names and numerical grades, which are then converted to letter grades and displayed.


DateFormatter - Localized date string generator from raw numerical input

DateFormatter.java

A date parsing utility that converts raw numerical date inputs (month, day, year) into a formal localized string format.


NumberFormatter - DecimalFormat demonstration for large number formatting

NumberFormatter.java

A formatting demonstration that illustrates the use of the `DecimalFormat` class to render large floating-point numbers with custom separators.


📊 Data Structures & Sorting Algorithms

Utilities focused on organizing and analyzing collections of data.

NumberFileSorter - Robust file-based integer collection and sorting tool

NumberFileSorter.java

A robust data processing tool that attempts to read integers from a file or accepts manual fallback input, then sorts and displays the collection.


BasicNumberSorter - Sequence sorting utility using standard algorithms

BasicNumberSorter.java

A data organization tool that accepts a sequence of integer inputs and utilizes standard sorting algorithms to output the numbers in ascending numerical order.


NumericalSorter - Dynamic count-based integer sorting utility

NumericalSorter.java

A sorting utility that prompts the user for a count of numbers, accepts that many integer inputs, sorts them, and displays the result.


StringedArraySorter - Alphabetical string collection sorting tool

StringedArraySorter.java

Collects a user-specified number of strings, sorts them alphabetically, and prints the result.


DigitFrequencyCounter - Statistical digit distribution analysis tool

DigitFrequencyCounter.java

A statistical analysis tool that parses a string of numeric input to determine the distribution frequency of each digit (0-9).


ListDemo - Dynamic data structure population via GUI

ListDemo.java

A data structure demonstration that allows users to populate a dynamic list with string entries via the GUI.


StringArrayDemo - Iterative array storage and retrieval demonstration

StringArrayDemo.java

Demonstrates storing multiple user inputs in a String array and then iterating through the array to display them.


🛡️ Security, Audio & System Utilities

Low-level system interactions and security simulations.

PasswordValidator - Security simulation for testing password strength criteria

PasswordValidator.java

A security simulation that tests passwords against criteria (digits, uppercase, special chars) and rates them as Weak, Medium, or Strong.


SecurityTextScanner - Forensic text analyzer for identifying security-sensitive keywords

SecurityTextScanner.java

Scans a named text file ("dictionary.txt") for specific security-related keywords (e.g., "bomb", "gun") and flags any lines containing them.


BSOD - Blue Screen of Death prank application with system timer

BSOD.java

A "prank" application simulating the Windows Blue Screen of Death, which initiates a system shutdown timer.


AudioPlayerExample - Java Sound API demonstration for waveform audio playback

AudioPlayerExample.java

An audio demonstration application that loads and plays a specific waveform audio file ("Blip.wav") using the Java Sound API's Clip interface.


MidiMusic - Programmatic MIDI sequence generation and playback

MidiMusic.java

A synthesized music player that programmatically generates and plays retro-style background music tracks using Java's MIDI system.


SystemBeep - Minimalist utility for triggering system hardware signals

SystemBeep.java

A simple utility that triggers the system's auditory beep or bell signal.


FileIODemo - Functional GUI demonstrating text file read/write operations

FileIODemo.java

A file management utility with a GUI that demonstrates reading from and writing to text files ("random.txt"), including a dedicated Read button.


TriangleClassifierApp - Geometric classification tool for vertex-based data

TriangleClassifierApp.java

An AWT/Swing-based tool that accepts three side lengths to determine if they form a valid triangle and classifies it (Equilateral, Isosceles, Scalene).


TriangleValidator - Right-triangle and scalar verification utility

TriangleValidator.java

A Swing-based variation of a triangle classifier that validates side lengths and identifies Right Triangles.


Problem1GUI - Logic checking utility for numerical pattern identification

Problem1GUI.java

A logic checker that determines if an input number is considered "easy" based on whether it contains exactly one type of specific digit.


EvenOddChecker - Parity analysis tool for integer classification

EvenOddChecker.java

A parity analysis tool that evaluates an integer input to determine its classification as either an even or odd number.


🧱 GUI Fundamentals & Console Art

The foundational building blocks of UI design and terminal-based art.

JFrameExample - Foundational Swing GUI demo with interactive greeting

JFrameExample.java

A basic introductory GUI example featuring a text input field and a "Click ME" button that greets the user.


SimpleGridGui - GridLayout demonstration for UI component alignment

SimpleGridGui.java

A basic GUI demonstration using a 2x2 GridLayout to display buttons, illustrating enabled and disabled component states.


ColorCheckBoxWindow - Dynamic UI property manipulation using checkboxes

ColorCheckBoxWindow.java

An interactive window allowing the user to toggle the background color and text color using checkboxes.


RedWhiteBlue - Interactive background color toggle demonstration

RedWhiteBlue.java

A simple interactive window with three buttons that change the background color of the application to Red, White, or Blue.


AddThis - Foundational Swing arithmetic input demo

AddThis.java

A basic Swing GUI application that takes two integer inputs in text fields and displays their sum upon clicking a button.


Calculator - Fully functional AWT arithmetic tool with copy-paste

Calculator.java

A fully functional AWT-based calculator supporting standard arithmetic operations (add, subtract, multiply, divide) and copy-paste functionality.


inputGUIcalc - Iterative GUI-based arithmetic demonstration

inputGUIcalc.java

Various iterations of GUI-based arithmetic.


NumberRangePrinter - Bound-based numerical sequence generator

NumberRangePrinter.java

A sequence generator GUI that accepts two integer bounds from the user and prints all integers within that range.


SimpleLoop - Repetition control logic demonstration

SimpleLoop.java

A basic loop demonstration that asks the user for a repetition count and then prints a specific message that many times.


SimpleIO - Helper library for streamlined console data exchange

SimpleIO.java

A helper class demonstrating cleaner input/output methods.


TreePrinter - Algorithmic ASCII pyramid generation

TreePrinter.java

Generates a pyramid-shaped "tree" of asterisks based on a user-supplied height.


RectangleDrawer - Console-based solid asterisk rectangle generator

RectangleDrawer.java

Draws a solid rectangle of asterisks (*) to the console/output area based on user-supplied dimensions.


ASCII_Rectangle - Visual ASCII art layout utility for geometric shapes

ASCII_Rectangle.java

A utility that generates a visual ASCII art rectangle based on user-specified height and width dimensions.


ascii - Reference table generator for numeric character mappings

ascii.java

Prints a reference table of ASCII characters and their corresponding numeric values from 1 to 128.