From fb72df299723fac8701e5620142ac9ebfe5e746a Mon Sep 17 00:00:00 2001 From: mileswa1q22 Date: Thu, 16 Jul 2026 14:13:21 -0500 Subject: [PATCH] Add project pages for Nova AI, OmniEmu 2.0, and Rhythm Game; create style.css for consistent styling --- index.html | 840 +++++++++++++++++++++++++++++++++++ projects/decompilations.html | 104 +++++ projects/fedl.html | 144 ++++++ projects/geode-mod.html | 134 ++++++ projects/issue-tracker.html | 101 +++++ projects/music-app.html | 121 +++++ projects/nova.html | 144 ++++++ projects/omniemu.html | 184 ++++++++ projects/rhythm-game.html | 116 +++++ projects/style.css | 305 +++++++++++++ 10 files changed, 2193 insertions(+) create mode 100644 index.html create mode 100644 projects/decompilations.html create mode 100644 projects/fedl.html create mode 100644 projects/geode-mod.html create mode 100644 projects/issue-tracker.html create mode 100644 projects/music-app.html create mode 100644 projects/nova.html create mode 100644 projects/omniemu.html create mode 100644 projects/rhythm-game.html create mode 100644 projects/style.css diff --git a/index.html b/index.html new file mode 100644 index 0000000..189dd51 --- /dev/null +++ b/index.html @@ -0,0 +1,840 @@ + + + + + + Miles Wolf Allen | Developer & 3D Artist + + + +
+
+
+ +
+ + +
+
+ + Available to collaborate +
+

Hi, I'm Miles

+

Developer and 3D artist interested in coding, games, and websites. Currently learning backend development with JavaScript.

+ +
+ +
+
+ Miles +
+

Miles Wolf Allen

+
@mileswolfallen2
+

Working on stuff. Looking to collaborate on games or websites.

+
+
142 repos
+
91 stars
+
12 followers
+
36 following
+
+
+
+ +
+
+ + Pull Shark x2 +
+
+ + YOLO +
+
+ + Quickdraw +
+
+
+ +
+

Skills & Tech

+

Technologies I work with and tools I know

+ +
+
Proficient In
+
+
+ + JavaScript +
+
+ + HTML +
+
+ + CSS +
+
+ + Python +
+
+ + Git +
+
+ + Blender +
+
+ + Unity +
+
+ + Unreal +
+
+ + Cloudflare +
+
+ + Linux +
+
+ + Netlify +
+
+ + Replit +
+
+ + VS Code +
+
+ + Bash +
+
+ + npm +
+
+ + GitHub +
+
+
+ +
+
Currently Learning
+
+
+ + PHP +
+
+ + .NET +
+
+ + Nix +
+
+ + Yarn +
+
+ + Backend JS +
+
+
+
+ +
+

Projects

+

Things I've built

+ + +
+ +
+

Get In Touch

+

Let's build something together

+ + +
+ +
+ Built by Miles · 2026 +
+
+ + diff --git a/projects/decompilations.html b/projects/decompilations.html new file mode 100644 index 0000000..ef4e2f5 --- /dev/null +++ b/projects/decompilations.html @@ -0,0 +1,104 @@ + + + + + + Decompilations | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

Decompilations

+

An animated showcase of native PC ports, decompilations, and recompilations. Tracks projects that are in active development, complete, or just starting.

+ +
+ + + View on GitHub + + + + Live Site + + HTML + MIT License +
+
+ +
+

What It Includes

+
+
+

+ + Animated Sections +

+

A polished single-page interface with animated section switching using Anime.js.

+
+
+

+ + Project Categories +

+

Dedicated views for fully released projects, active development work, and complete decompilations.

+
+
+

+ + Progress Tracking +

+

Detail cards with progress indicators showing how far along each decompilation project is.

+
+
+

+ + Source Links +

+

Sources section with official repositories and legal reminder text about ROM ownership.

+
+
+
+ +
+

How to Help

+
+

Share projects with others, help with development or bug fixes, keep information up to date, and contribute additional project details.

+
+
+ +
+

Tech Stack

+
+ HTML (100%) + Anime.js + CSS Animations +
+
+ + +
+ + diff --git a/projects/fedl.html b/projects/fedl.html new file mode 100644 index 0000000..e0ef9d2 --- /dev/null +++ b/projects/fedl.html @@ -0,0 +1,144 @@ + + + + + + FEDL | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

FEDL

+

A Geometry Dash demon list site with ranked levels, run submissions, admin moderation, accounts, and community features.

+ +
+ + + View on GitHub + + + + Live Site + + HTML / JS / CSS + 196 commits + 2 stars +
+
+ +
+

What It Includes

+

Full-featured list site with frontend and backend

+ +
+
+

+ + Ranked List Browser +

+

Browse the ranked demon list with search, filters, and video playback for each level.

+
+
+

+ + Run Submissions +

+

Submit runs for review. Admins can approve, reject, or bulk-approve submissions.

+
+
+

+ + Accounts & Auth +

+

Signup, login, and synced user state. Bearer token authentication with session management.

+
+
+

+ + Community +

+

Community posts, bug reports, and private direct messages between users.

+
+
+

+ + Rank Guesser +

+

A guessing game where you try to identify the rank of demon levels on the list.

+
+
+

+ + Demon Roulette +

+

Randomly pick a demon level to play. Uses level ID lookup for fast selection.

+
+
+

+ + Admin Panel +

+

Admin moderation page for list editing, run management, and AREDL/Pointercrate imports.

+
+
+

+ + Live Updates +

+

Server-Sent Events for real-time list data updates across connected clients.

+
+
+
+ +
+

Tech Stack

+
+ HTML (49.8%) + JavaScript (29.8%) + CSS (20.4%) + Node.js + Server-Sent Events + localStorage + JSON +
+
+ +
+

Local Setup

+
+ # Make sure Node.js is installed, then:
+ node server/server.js

+ # Open the site at:
+ http://127.0.0.1:8090/fedl/

+ # Expose on local network:
+ HOST=0.0.0.0 PORT=8090 node server/server.js +
+
+ + +
+ + diff --git a/projects/geode-mod.html b/projects/geode-mod.html new file mode 100644 index 0000000..0c4dfd4 --- /dev/null +++ b/projects/geode-mod.html @@ -0,0 +1,134 @@ + + + + + + FEDL Geode Mod | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

FEDL Geode Mod

+

Official FEDL mod for Geometry Dash using the Geode modding framework. View the ranked demon list, play roulette, and detect banned mods in-game.

+ +
+ + + View on GitHub + + WIP + C++ + MIT License +
+
+ +
+

Features

+
+
+

+ + Integrated Login +

+

Login and signup with your FEDL account directly inside Geometry Dash.

+
+
+

+ + Demon List +

+

View the complete ranked demon list with filtering, right inside the game.

+
+
+

+ + Roulette +

+

Play demon roulette to randomly select a level from the list to attempt.

+
+
+

+ + Mod Ban Detection +

+

Configurable list of banned mods that logs warnings when they are detected running.

+
+
+
+ +
+

Settings

+
+

Configure the mod in Geode mod settings:

+
+
+
+

FEDL API URL

+

Base URL for FEDL API (default: https://fedl.site)

+
+
+

Mod Ban List

+

Comma-separated list of mod names to detect and warn about.

+
+
+

Auto Login

+

Automatically log in using saved credentials on game launch.

+
+
+
+ +
+

API Integration

+
+

Connects to the FEDL server API at fedl.site with endpoints for login, signup, user state, and the demon list.

+
+
+ +
+

Tech Stack

+
+ C++ (98.2%) + CMake (1.2%) + Geode SDK + Geometry Dash +
+
+ +
+

Build

+
+ # Install Geode CLI if you haven't already
+ geode install

+ # Build the mod
+ geode build

+ # Output: bin/fedl.geode +
+
+ + +
+ + diff --git a/projects/issue-tracker.html b/projects/issue-tracker.html new file mode 100644 index 0000000..4be634d --- /dev/null +++ b/projects/issue-tracker.html @@ -0,0 +1,101 @@ + + + + + + Issue Tracker | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

Issue Tracker

+

A custom issue tracker built from scratch with a Node.js backend and clean HTML/CSS frontend. Made for fun.

+ +
+ + + View on GitHub + + HTML / JavaScript + MIT License +
+
+ +
+

About

+
+

A custom issue tracker built as a learning project. Features a Node.js server backend with a clean HTML/CSS/JavaScript frontend for creating, viewing, and managing issues.

+
+
+ +
+

Features

+
+
+

+ + Create Issues +

+

Create new issues with titles, descriptions, and status tracking.

+
+
+

+ + Track Progress +

+

View and manage issue status with a clean, intuitive interface.

+
+
+

+ + Node.js Backend +

+

Server-side logic with RESTful API endpoints for CRUD operations.

+
+
+

+ + Clean Design +

+

Minimal, well-structured HTML and CSS with no frameworks.

+
+
+
+ +
+

Tech Stack

+
+ HTML (91.1%) + JavaScript (8.9%) + Node.js + Express +
+
+ + +
+ + diff --git a/projects/music-app.html b/projects/music-app.html new file mode 100644 index 0000000..7b2fd4d --- /dev/null +++ b/projects/music-app.html @@ -0,0 +1,121 @@ + + + + + + Music App | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

Music App

+

A sleek, lightweight, and ad-free music player web app inspired by YouTube Music. Built for speed, simplicity, and control.

+ +
+ + + View on GitHub + + + + Live Demo + + JavaScript + Apache-2.0 +
+
+ +
+

Features

+
+
+

+ + Ad-Free Playback +

+

Enjoy music from YouTube with little to no interruptions. Focused on uninterrupted listening.

+
+
+

+ + Web-First +

+

100% web-based. No downloads, no installs. Fast loading with minimal dependencies.

+
+
+

+ + Developer-Friendly +

+

Clean, modular code. No frameworks -- just plain HTML, CSS, and JavaScript.

+
+
+

+ + Playlist Tools +

+

Includes tools to convert YouTube playlists to static HTML and generate JavaScript playlist files.

+
+
+
+ +
+

Project Files

+
+ + + + + + + + + + + + + + +
FileDescription
index.htmlMain music app interface
script.jsMain app logic -- playback and UI behavior
songs.jsSong data and playlist definitions
style.cssCore styling for all pages
playlist2static.htmlTool to convert YouTube playlists to static HTML
playlist2static.jsJavaScript logic behind playlist conversion
static-list-generator.htmlGUI for creating static playlist files
static-to-js.htmlConverts HTML playlist elements into JavaScript format
+
+
+ +
+

Tech Stack

+
+ JavaScript (89.7%) + CSS (5.7%) + HTML (4.6%) + YouTube API + GitHub Pages + Cloudflare Pages +
+
+ + +
+ + diff --git a/projects/nova.html b/projects/nova.html new file mode 100644 index 0000000..9be6e15 --- /dev/null +++ b/projects/nova.html @@ -0,0 +1,144 @@ + + + + + + Nova AI | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

Nova AI

+

Multi-modal AI assistant with desktop GUI, web interface, and CLI. Runs locally on Ollama with support for small and large language models.

+ +
+ + + View on GitHub + + + + Live Demo + + Python + MIT License +
+
+ +
+

Entry Points

+

Multiple interfaces for different use cases

+ +
+ + + + + + + + + + + + +
CommandVersionMode
python ui2.pyV2Desktop GUI (Tkinter, animated HUD)
python web_v2.pyV2Web server on :9090
python jarvis_v2.pyV2CLI with native tool-calling agent
python ui2_small.pyV2 SmallDesktop GUI for 1B-3B models (green theme)
python web_v2_small.pyV2 SmallWeb server on :9091 for small models
python jarvis_v2_small.pyV2 SmallCLI agent for small models
+
+
+ +
+

Features

+
+
+

+ + Voice & Text +

+

Interact via voice commands or text input. Multi-modal conversation with context retention.

+
+
+

+ + Desktop GUI +

+

Animated Tkinter HUD interface with real-time status indicators and chat history.

+
+
+

+ + Web Interface +

+

Browser-based chat interface accessible from any device on your network.

+
+
+

+ + Native Tool Calling +

+

V2 uses Ollama's native tool_calls for multi-step reasoning with web search and file operations.

+
+
+

+ + Raspberry Pi Support +

+

Optimized for Pi 4 with small model support. Qwen2.5 1.5B is the recommended sweet spot.

+
+
+

+ + File Operations +

+

Read, write, and manage files directly through the assistant. Multi-step task execution.

+
+
+
+ +
+

Quick Start

+
+ pip install -r requirements.txt
+ ollama pull qwen2.5:1.5b
+ python ui2_small.py # Launch desktop GUI +
+
+ +
+

Tech Stack

+
+ Python (100%) + Ollama + Tkinter + Qwen2.5 + Llama 3.2 + Raspberry Pi +
+
+ + +
+ + diff --git a/projects/omniemu.html b/projects/omniemu.html new file mode 100644 index 0000000..4f6a281 --- /dev/null +++ b/projects/omniemu.html @@ -0,0 +1,184 @@ + + + + + + OmniEmu 2.0 | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

OmniEmu 2.0

+

All your games. One place. A cross-platform emulator manager, game launcher, and ROM library for Windows, macOS, and Linux.

+ +
+ + + View on GitHub + + + + Website + + Active Development + TypeScript + MIT License + v0.3.2 +
+
+ +
+

Features

+

Everything you need to manage your game library

+ +
+
+

+ + One-Click Emulator Setup +

+

Download, install, and auto-configure 20+ emulators from inside the app. No terminal required.

+
+
+

+ + ROM Library +

+

Scan your ROMs, browse by platform, and launch games directly from a unified library.

+
+
+

+ + Game Art Scraping +

+

Automatically fetches covers, screenshots, and metadata from SteamGridDB and libretro-thumbnails.

+
+
+

+ + RetroAchievements +

+

View per-game achievements in the game detail modal. Supports RetroArch, PCSX2, DuckStation, and more.

+
+
+

+ + Controller Navigation +

+

Navigate the entire UI with a gamepad. Apply PS/Xbox-aware controller bindings to installed emulators.

+
+
+

+ + Cloud Sync +

+

Sync save files between devices with built-in Syncthing integration. BIOS manager included.

+
+
+

+ + Decomp Projects +

+

Install and manage PC port projects like Ship of Harkinian, SM64, and more.

+
+
+

+ + Light & Dark Mode +

+

Choose your theme or follow system preference. Cross-platform with identical experience everywhere.

+
+
+
+ +
+

Supported Emulators

+

20+ emulators across Windows, macOS, and Linux

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
EmulatorSystemsWindowsmacOSLinux
DolphinGameCube, WiiYesYesYes
RPCS3PlayStation 3YesNoYes
EdenNintendo SwitchYesYesYes
PCSX2PlayStation 2YesYesYes
DuckStationPlayStation 1YesYesYes
MednafenPS1, PC Engine, Lynx, Neo Geo PocketYesYesYes
MAMEArcadeYesYesYes
PPSSPPPSPYesYesYes
melonDSNintendo DSYesYesYes
FlycastDreamcast, NaomiYesYesYes
CemuWii UYesYesYes
xemuOriginal XboxYesYesYes
Vita3KPS VitaYesYesYes
AzaharNintendo 3DSYesYesYes
Project64Nintendo 64YesNoNo
Snes9xSNESYesYesYes
mGBAGame Boy, GBAYesYesYes
Mesen2NES, SNES, GB, GBA, PC EngineYesYesYes
RetroArchMulti-systemYesYesYes
+
+
+ +
+

Tech Stack

+
+ TypeScript (91.4%) + CSS (6.8%) + JavaScript (0.8%) + Shell (0.6%) + Python (0.2%) + HTML (0.1%) + Vite + Electron +
+
+ +
+

Quick Start

+
+

Download the latest release for your platform, launch OmniEmu, install an emulator from the Library, set your ROMs directory, and start playing.

+
+
+ # macOS
+ sudo xattr -rd com.apple.quarantine /Applications/OmniEmu.app

+ # Linux
+ chmod +x OmniEmu*.AppImage && ./OmniEmu*.AppImage

+ # Build from source
+ npm install
+ npm run start +
+
+ + +
+ + diff --git a/projects/rhythm-game.html b/projects/rhythm-game.html new file mode 100644 index 0000000..61a00bf --- /dev/null +++ b/projects/rhythm-game.html @@ -0,0 +1,116 @@ + + + + + + Rhythm Game | Miles Wolf Allen + + + +
+
+
+ +
+ + +
+ + +

Rhythm Game

+

A rhythm-based game where players hit notes as they appear on screen, with song selection, a level editor, and real-time canvas rendering.

+ +
+ + + View on GitHub + + + + Live Demo + + HTML / JavaScript + MPL-2.0 + 64 commits + 1 star +
+
+ +
+

Features

+
+
+

+ + Interactive Gameplay +

+

Real-time note rendering on canvas with keyboard controls. Hit notes as they scroll down the screen.

+
+
+

+ + Song Selection +

+

Browse and select songs from a library. Preview songs before playing them.

+
+
+

+ + Level Editor +

+

Built-in editor for creating custom charts and song mappings.

+
+
+

+ + User Accounts +

+

Signup and login system with user settings and profile management.

+
+
+

+ + Admin Panel +

+

Admin interface for managing songs, charts, and user content.

+
+
+

+ + Song Browser +

+

Browse available songs with metadata, difficulty info, and chart previews.

+
+
+
+ +
+

Tech Stack

+
+ HTML (96%) + JavaScript (4%) + Canvas API + Node.js Server + Fly.io + Render +
+
+ + +
+ + diff --git a/projects/style.css b/projects/style.css new file mode 100644 index 0000000..6db8094 --- /dev/null +++ b/projects/style.css @@ -0,0 +1,305 @@ +* { margin: 0; padding: 0; box-sizing: border-box; } + +:root { + --bg: #0a0a0f; + --surface: #12121a; + --surface-hover: #1a1a25; + --border: #1e1e2e; + --text: #e4e4e7; + --text-dim: #71717a; + --accent: #6366f1; + --accent-glow: rgba(99, 102, 241, 0.15); + --green: #22c55e; + --purple: #a855f7; + --cyan: #06b6d4; +} + +body { + font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; + background: var(--bg); + color: var(--text); + line-height: 1.6; + overflow-x: hidden; +} + +@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap'); + +.bg-grid { + position: fixed; + inset: 0; + background-image: + linear-gradient(rgba(99, 102, 241, 0.03) 1px, transparent 1px), + linear-gradient(90deg, rgba(99, 102, 241, 0.03) 1px, transparent 1px); + background-size: 60px 60px; + pointer-events: none; + z-index: 0; +} + +.bg-glow { + position: fixed; + width: 600px; + height: 600px; + border-radius: 50%; + filter: blur(120px); + opacity: 0.07; + pointer-events: none; + z-index: 0; +} + +.bg-glow-1 { background: var(--accent); top: -200px; left: 10%; } +.bg-glow-2 { background: var(--purple); bottom: -200px; right: 10%; } + +.container { + max-width: 900px; + margin: 0 auto; + padding: 0 24px; + position: relative; + z-index: 1; +} + +nav { + padding: 32px 0; + display: flex; + justify-content: space-between; + align-items: center; +} + +.nav-logo { + font-weight: 700; + font-size: 1.1rem; + color: var(--accent); + text-decoration: none; + letter-spacing: -0.02em; +} + +.nav-links { display: flex; gap: 28px; } + +.nav-links a { + color: var(--text-dim); + text-decoration: none; + font-size: 0.875rem; + font-weight: 500; + transition: color 0.2s; +} + +.nav-links a:hover { color: var(--text); } + +.project-hero { + padding: 60px 0 40px; +} + +.breadcrumb { + display: flex; + align-items: center; + gap: 8px; + font-size: 0.85rem; + color: var(--text-dim); + margin-bottom: 24px; +} + +.breadcrumb a { + color: var(--text-dim); + text-decoration: none; + transition: color 0.2s; +} + +.breadcrumb a:hover { color: var(--text); } + +.breadcrumb svg { + width: 14px; + height: 14px; +} + +.project-hero h1 { + font-size: 2.5rem; + font-weight: 800; + letter-spacing: -0.04em; + line-height: 1.1; + margin-bottom: 12px; +} + +.project-hero .tagline { + font-size: 1.1rem; + color: var(--text-dim); + max-width: 600px; + margin-bottom: 28px; +} + +.project-meta-bar { + display: flex; + gap: 16px; + flex-wrap: wrap; + align-items: center; +} + +.meta-chip { + display: inline-flex; + align-items: center; + gap: 6px; + background: var(--surface); + border: 1px solid var(--border); + padding: 6px 14px; + border-radius: 8px; + font-size: 0.8rem; + color: var(--text-dim); + text-decoration: none; + transition: all 0.2s; +} + +.meta-chip:hover { + border-color: var(--accent); + color: var(--text); +} + +.meta-chip svg { + width: 14px; + height: 14px; +} + +.meta-chip.primary { + background: var(--accent); + border-color: var(--accent); + color: #fff; +} + +.meta-chip.primary:hover { + background: #4f46e5; +} + +section { padding: 40px 0; } + +.section-title { + font-size: 1.4rem; + font-weight: 700; + letter-spacing: -0.03em; + margin-bottom: 8px; +} + +.section-subtitle { + color: var(--text-dim); + font-size: 0.9rem; + margin-bottom: 24px; +} + +.feature-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); + gap: 12px; +} + +.feature-card { + background: var(--surface); + border: 1px solid var(--border); + border-radius: 12px; + padding: 20px; +} + +.feature-card h3 { + font-size: 0.95rem; + font-weight: 600; + margin-bottom: 6px; + display: flex; + align-items: center; + gap: 8px; +} + +.feature-card h3 svg { + width: 18px; + height: 18px; + color: var(--accent); + flex-shrink: 0; +} + +.feature-card p { + font-size: 0.82rem; + color: var(--text-dim); + line-height: 1.5; +} + +.tech-stack { + display: flex; + gap: 8px; + flex-wrap: wrap; +} + +.tech-badge { + background: var(--surface); + border: 1px solid var(--border); + padding: 6px 12px; + border-radius: 8px; + font-size: 0.78rem; + font-weight: 500; +} + +.table-wrapper { + overflow-x: auto; +} + +table { + width: 100%; + border-collapse: collapse; + font-size: 0.85rem; +} + +th, td { + text-align: left; + padding: 10px 14px; + border-bottom: 1px solid var(--border); +} + +th { + color: var(--text-dim); + font-weight: 600; + font-size: 0.75rem; + text-transform: uppercase; + letter-spacing: 0.06em; +} + +td { color: var(--text); } + +.check { color: var(--green); } +.cross { color: var(--text-dim); opacity: 0.4; } + +.desc-text { + color: var(--text-dim); + font-size: 0.9rem; + line-height: 1.7; + max-width: 680px; +} + +.desc-text code { + background: var(--surface); + border: 1px solid var(--border); + padding: 2px 6px; + border-radius: 4px; + font-size: 0.82rem; +} + +code-block { + background: var(--surface); + border: 1px solid var(--border); + border-radius: 10px; + padding: 16px 20px; + font-family: 'SF Mono', 'Fira Code', monospace; + font-size: 0.82rem; + color: var(--text-dim); + overflow-x: auto; + margin: 12px 0; +} + +code-block .comment { color: #4a5568; } +code-block .cmd { color: var(--cyan); } + +footer { + text-align: center; + padding: 48px 0; + color: var(--text-dim); + font-size: 0.8rem; + border-top: 1px solid var(--border); + margin-top: 40px; +} + +@media (max-width: 640px) { + .project-hero h1 { font-size: 1.8rem; } + .nav-links { display: none; } +}