Skip to content

Commit 53d6b7f

Browse files
committed
feat: aether music player
1 parent 9211a41 commit 53d6b7f

File tree

19 files changed

+1139
-129
lines changed

19 files changed

+1139
-129
lines changed

public/apps/apps.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,15 @@
164164
"icon": "SparkleIcon",
165165
"order": 2,
166166
"apps": [
167+
{
168+
"slug": "aether",
169+
"to": "/apps/aether",
170+
"title": "Aether Music Player",
171+
"description": "Abstract music player. Listen to the sounds above the clouds.",
172+
"icon": "CloudFogIcon",
173+
"created_at": "2026-01-06T12:00:00+03:00",
174+
"pinned_order": 1
175+
},
167176
{
168177
"slug": "fezynth",
169178
"to": "/apps/fezynth",

public/images/apps/aether.png

357 KB
Loading

public/media_player/musics.piml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
(musics)
2+
> (track)
3+
(title) UNATCO Theme
4+
(artist) Michiel van den Bos
5+
(url) https://github.com/fezcode/fcdx.cdn/releases/download/TheTag/Deus.Ex.-.UNATCO.mp3
6+
(cover) https://upload.wikimedia.org/wikipedia/en/thumb/b/ba/Deus_Ex_%28game_box_art%29.jpg/250px-Deus_Ex_%28game_box_art%29.jpg
7+
8+
> (track)
9+
(title) Mafia II - Main Theme
10+
(artist) Prague FILMharmonic Orchestra
11+
(url) https://github.com/fezcode/fcdx.cdn/releases/download/TheTag/Mafia.2.Soundtrack.-.Main.Theme.mp3
12+
13+
> (track)
14+
(title) Sword and Faith
15+
(artist) Borislav "Glorian" Slavov
16+
(url) https://github.com/fezcode/fcdx.cdn/releases/download/TheTag/Sword.and.Faith.Knights.of.Honor.mp3
17+
18+
> (track)
19+
(title) Bilmem Mi
20+
(artist) DJ Mahmut
21+
(url) https://github.com/fezcode/fcdx.cdn/releases/download/TheTag/Bilmem.Mi.mp3
22+
(cover) https://images.unsplash.com/photo-1555680202-c86f0e12f086?w=500&auto=format&fit=crop&q=60
23+
24+
> (track)
25+
(title) Grand Theft Auto V Soundtrack - Pause Menu Music
26+
(artist) Tangerine Dream
27+
(url) https://github.com/fezcode/fcdx.cdn/releases/download/TheTag/Grand.Theft.Auto.V.Soundtrack.-.Pause.Menu.Music.mp3
28+
29+
> (track)
30+
(title) Hippyest
31+
(artist) Peanut Butter Wolf
32+
(url) https://github.com/fezcode/fcdx.cdn/releases/download/TheTag/Peanut.Butter.Wolf.-.Hippyest.mp3
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Aether: The Cyberpunk Music Player
2+
3+
I've just deployed **Aether**, a new cloud-based music player for Fezcodex.
4+
5+
![Aether Music Player](/images/apps/aether.png)
6+
7+
## Overview
8+
9+
Aether isn't just a music player; it's an atmospheric audio interface designed to immerse you in the soundscape of the site. It features:
10+
11+
* **Cyberpunk Aesthetic:** A high-contrast, terminal-inspired interface with CRT scanlines, glitch effects, and a generative art background that reacts to the music.
12+
* **Persistent Playback:** A tiny, "cyber deck" style player docks to the bottom of your screen, allowing you to browse the site without interrupting your tunes.
13+
* **Generative Art:** If a track lacks cover art, the system generates a unique visual signature based on the track's title.
14+
15+
Check it out here: [Aether Music Player](/apps/aether)
16+
17+
Enjoy the vibes.

public/posts/posts.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
11
[
2+
{
3+
"slug": "aether-music-player",
4+
"title": "Aether: Cyberpunk Audio Interface",
5+
"date": "2026-01-06",
6+
"updated": "2026-01-06",
7+
"description": "Introducing Aether, a cloud-based, data-driven music player with a high-fidelity cyberpunk aesthetic and generative art.",
8+
"tags": ["feat", "music", "cyberpunk", "react", "piml", "generative-art"],
9+
"category": "feat",
10+
"filename": "aether-music-player.txt",
11+
"authors": ["fezcode"],
12+
"image": "/images/apps/aether.png"
13+
},
214
{
315
"slug": "5-ways-to-pass-arguments-in-a-url",
416
"title": "5 Ways to Pass Arguments in a URL (Beyond the Basic Query)",

public/roadmap/roadmap.piml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,5 +274,13 @@
274274
(created_at) 2025-12-21T18:00:00+03:00
275275
(notes) Implemented via public/banner.piml and src/components/Banner.js. Supports types (info, warning, error), scheduling (from/to), links, and persistence (localStorage dismissal).
276276

277-
277+
> (issues)
278+
(id) FEZ-23
279+
(title) Implementing A Music Player
280+
(description)
281+
A music player with custom URL support and a tiny player.
282+
(category) Music
283+
(status) Completed
284+
(priority) High
285+
(created_at) 2026-01-06T18:00:00+03:00
278286

public/sidebar.piml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@
6767
(to) /timeline
6868
(icon) TimerIcon
6969
> (item)
70-
(label) Fezilla
70+
(label) Fezzilla
7171
(to) /roadmap
7272
(icon) BugBeetleIcon
7373
> (item)

public/the_vague/issues.piml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,22 @@
33
(id) issue_001
44
(title) Issue #001: The Beginning
55
(thumbnail) Issue001.png
6-
(link) https://github.com/fezcode/fcdx.cdn/releases/download/Issue001-002/Issue001.pdf
6+
(link) https://github.com/fezcode/fcdx.cdn/releases/download/TheVague/Issue001.pdf
77
(description) The very first issue of The Vague. A collection of thoughts and whispers.
88
(date) 2025-12-26
99

1010
> (issue)
1111
(id) issue_002
1212
(title) Issue #002: The Line
1313
(thumbnail) Issue002.png
14-
(link) https://github.com/fezcode/fcdx.cdn/releases/download/Issue001-002/Issue002.pdf
14+
(link) https://github.com/fezcode/fcdx.cdn/releases/download/TheVague/Issue002.pdf
1515
(description) The second issue of The Vague. Down by Lupe Fiasco, Spec Ops: The Line and Egyptian Mythology.
1616
(date) 2026-01-03
1717

1818
> (issue)
1919
(id) issue_003
2020
(title) Issue #003: The Rushed One
2121
(thumbnail) Issue003.png
22-
(link) https://github.com/fezcode/fcdx.cdn/releases/download/Issue003/Issue003.pdf
22+
(link) https://github.com/fezcode/fcdx.cdn/releases/download/TheVague/Issue003.pdf
2323
(description) The third issue of The Vague. The Dance of Death, The Post-Event Palate
2424
(date) 2026-01-05

public/timeline/timeline.piml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
11
(timeline)
2+
> (item)
3+
(date) 2026-01-06
4+
(title) Aether: Cyberpunk Audio Interface
5+
(description) Deployed 'Aether', a cloud-based music player with a high-fidelity cyberpunk aesthetic. Features a generative audio visualizer, seamless playback across the site via a tiny persistent player, and a fully data-driven playlist system powered by PIML.
6+
(icon) HeadphonesIcon
7+
(link) /apps/aether
8+
(type) feature
9+
210
> (item)
311
(date) 2025-12-22
412
(title) Brufez: Design Language Formalized

src/App.jsx

Lines changed: 41 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ import AchievementListeners from './components/AchievementListeners';
1616
import { SidePanelProvider } from './context/SidePanelContext';
1717
import { HomepageOrderProvider } from './context/HomepageOrderContext';
1818
import { SiteConfigProvider } from './context/SiteConfigContext';
19+
import { CloudMusicProvider } from './context/CloudMusicContext';
20+
import TinyCloudPlayer from './app/apps/CloudMusicPlayer/components/TinyCloudPlayer';
1921

2022
function App() {
2123
const [isModalOpen, setIsModalOpen] = useState(false);
@@ -57,42 +59,45 @@ function App() {
5759
<Router>
5860
<ToastProvider>
5961
<SiteConfigProvider>
60-
<AchievementProvider>
61-
<AchievementListeners />
62-
<HomepageOrderProvider>
63-
<VisualSettingsProvider>
64-
<DigitalRain isActive={isRainActive} />
65-
<BSOD isActive={isBSODActive} toggleBSOD={toggleBSOD} />
66-
<ScrollToTop />
67-
<CommandPaletteProvider>
68-
<SidePanelProvider>
69-
<Layout
70-
toggleModal={toggleModal}
71-
isSearchVisible={isSearchVisible}
72-
toggleSearch={toggleSearch}
73-
openGenericModal={openGenericModal}
74-
toggleDigitalRain={toggleDigitalRain}
75-
toggleBSOD={toggleBSOD}
76-
>
77-
<AnimatedRoutes />
78-
</Layout>
79-
</SidePanelProvider>
80-
</CommandPaletteProvider>
81-
<ContactModal isOpen={isModalOpen} onClose={toggleModal} />
82-
<GenericModal
83-
isOpen={isGenericModalOpen}
84-
onClose={closeGenericModal}
85-
title={genericModalContent.title}
86-
>
87-
{genericModalContent.content}
88-
</GenericModal>
89-
</VisualSettingsProvider>
90-
</HomepageOrderProvider>
91-
</AchievementProvider>
92-
</SiteConfigProvider>
93-
</ToastProvider>
94-
</Router>
95-
</AnimationProvider>
62+
<CloudMusicProvider>
63+
<AchievementProvider>
64+
<AchievementListeners />
65+
<HomepageOrderProvider>
66+
<VisualSettingsProvider>
67+
<DigitalRain isActive={isRainActive} />
68+
<BSOD isActive={isBSODActive} toggleBSOD={toggleBSOD} />
69+
<ScrollToTop />
70+
<TinyCloudPlayer />
71+
<CommandPaletteProvider>
72+
<SidePanelProvider>
73+
<Layout
74+
toggleModal={toggleModal}
75+
isSearchVisible={isSearchVisible}
76+
toggleSearch={toggleSearch}
77+
openGenericModal={openGenericModal}
78+
toggleDigitalRain={toggleDigitalRain}
79+
toggleBSOD={toggleBSOD}
80+
>
81+
<AnimatedRoutes />
82+
</Layout>
83+
</SidePanelProvider>
84+
</CommandPaletteProvider>
85+
<ContactModal isOpen={isModalOpen} onClose={toggleModal} />
86+
<GenericModal
87+
isOpen={isGenericModalOpen}
88+
onClose={closeGenericModal}
89+
title={genericModalContent.title}
90+
>
91+
{genericModalContent.content}
92+
</GenericModal>
93+
</VisualSettingsProvider>
94+
</HomepageOrderProvider>
95+
</AchievementProvider>
96+
</CloudMusicProvider>
97+
</SiteConfigProvider>
98+
</ToastProvider>
99+
</Router>
100+
</AnimationProvider>
96101
);
97102
}
98103
export default App;

0 commit comments

Comments
 (0)