Skip to content

Commit 25d58f1

Browse files
committed
Add resources list and revamp projects UI
Introduce a new curated resources dataset and UI, and refactor the projects listing. Changes include: - Add _data/resources.json with curated links and metadata. - Add _sass/klise/_resources.scss for resources styles and dark-mode overrides. - Major refactor of _sass/klise/_projects.scss: rename/reshape classes, improve search UI, category buttons, card layout, hover states and dark-mode tweaks. - Update _sass/main.scss: adjust font variables and import klise/resources. - Update projects.html: new markup for project search, category filters, icons, empty state and data-category attributes on project cards. - Update assets/js/site-enhancements.js: client-side search & filtering for projects and resources, category button handling, and URL query param support. - Update project data (_data/projects.json) to include category and icon fields for multiple entries. - Modify resource pages (resources/*.md) to align with the new resources dataset/UI. These changes implement a searchable, filterable resources section and modernize the projects listing for better UX and accessibility.
1 parent a977c94 commit 25d58f1

12 files changed

Lines changed: 1080 additions & 268 deletions

_data/projects.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
"id": "codex-quota-tracker",
66
"has_demo": false,
77
"updated": "2026-05-11",
8+
"category": "scripts",
9+
"icon": "bi-cpu",
810
"tags": [
911
"python",
1012
"codex",
@@ -18,6 +20,8 @@
1820
"id": "DiskyCleaner",
1921
"has_demo": false,
2022
"updated": "2026-05-11",
23+
"category": "desktop-apps",
24+
"icon": "bi-sd-card",
2125
"tags": [
2226
"powershell",
2327
"csharp",
@@ -30,6 +34,8 @@
3034
"description": "Set of tools to batch downscale and convert media inside a folder to be used in gamedev projects",
3135
"id": "rp-media-optimizer-toolkit",
3236
"has_demo": false,
37+
"category": "scripts",
38+
"icon": "bi-sliders",
3339
"tags": [
3440
"python",
3541
"media",
@@ -42,6 +48,8 @@
4248
"description": "Python script to create slowed+reverb versions of songs",
4349
"id": "slowed-reverb",
4450
"has_demo": false,
51+
"category": "scripts",
52+
"icon": "bi-music-note-beamed",
4553
"tags": [
4654
"python",
4755
"automation",
@@ -54,6 +62,8 @@
5462
"description": "An open source video sharing platform built with MongoDB, ExpressJS, React and Nodejs",
5563
"id": "twaire",
5664
"has_demo": false,
65+
"category": "web-apps",
66+
"icon": "bi-play-circle",
5767
"tags": [
5868
"javascript",
5969
"react",
@@ -68,6 +78,8 @@
6878
"description": "Open-source video editor written in Python and PySide6",
6979
"id": "seensaw",
7080
"has_demo": false,
81+
"category": "desktop-apps",
82+
"icon": "bi-film",
7183
"tags": [
7284
"python",
7385
"pyside",
@@ -80,6 +92,8 @@
8092
"description": "The best search engine you'll ever use",
8193
"id": "gurgle",
8294
"has_demo": true,
95+
"category": "web-apps",
96+
"icon": "bi-search",
8397
"tags": [
8498
"javascript",
8599
"gurgle"
@@ -90,6 +104,8 @@
90104
"description": "Markdown-based note taking app written in Python3 and PySide6",
91105
"id": "ivybook",
92106
"has_demo": false,
107+
"category": "desktop-apps",
108+
"icon": "bi-journal-text",
93109
"tags": [
94110
"python",
95111
"pyside",

_data/resources.json

Lines changed: 250 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
[
2+
{
3+
"name": "GitHub Profile",
4+
"url": "https://github.com/riffpointer",
5+
"description": "All the source code of the projects showcased on my channel.",
6+
"category": "social",
7+
"tags": ["profile", "code"],
8+
"icon": "bi-github"
9+
},
10+
{
11+
"name": "YouTube Channel",
12+
"url": "https://youtube.com/@riffpointer",
13+
"description": "Tech tutorials, project showcases, and coding videos.",
14+
"category": "social",
15+
"tags": ["videos", "creator"],
16+
"icon": "bi-youtube"
17+
},
18+
{
19+
"name": "Instagram",
20+
"url": "https://instagram.com/riffpointer",
21+
"description": "Short form dev content, behind the scenes, and updates.",
22+
"category": "social",
23+
"tags": ["social", "creator"],
24+
"icon": "bi-instagram"
25+
},
26+
{
27+
"name": "MDN Web Docs",
28+
"url": "https://developer.mozilla.org/",
29+
"description": "The ultimate documentation and learning resource for HTML, CSS, and JS.",
30+
"category": "coding",
31+
"tags": ["reference", "web"],
32+
"icon": "bi-globe"
33+
},
34+
{
35+
"name": "Can I use",
36+
"url": "https://caniuse.com/",
37+
"description": "Up-to-date browser support tables for modern frontend web technologies.",
38+
"category": "coding",
39+
"tags": ["reference", "compatibility"],
40+
"icon": "bi-check-circle"
41+
},
42+
{
43+
"name": "DevDocs",
44+
"url": "https://devdocs.io/",
45+
"description": "Combines multiple API documentations in a fast, search-optimized interface.",
46+
"category": "coding",
47+
"tags": ["tool", "reference"],
48+
"icon": "bi-file-earmark-code"
49+
},
50+
{
51+
"name": "Bundlephobia",
52+
"url": "https://bundlephobia.com/",
53+
"description": "Find the cost and size of adding any npm package to your bundle.",
54+
"category": "coding",
55+
"tags": ["tool", "performance"],
56+
"icon": "bi-box-seam"
57+
},
58+
{
59+
"name": "Excalidraw",
60+
"url": "https://excalidraw.com/",
61+
"description": "A collaborative virtual whiteboard tool with a hand-drawn sketch feel.",
62+
"category": "design",
63+
"tags": ["tool", "diagrams"],
64+
"icon": "bi-pencil-fill"
65+
},
66+
{
67+
"name": "Squoosh",
68+
"url": "https://squoosh.app/",
69+
"description": "Google's image compression tool that lets you compare formats and sizes.",
70+
"category": "design",
71+
"tags": ["tool", "images"],
72+
"icon": "bi-aspect-ratio"
73+
},
74+
{
75+
"name": "SVG Repo",
76+
"url": "https://www.svgrepo.com/",
77+
"description": "Search and download from a library of over 500,000 free SVG vectors.",
78+
"category": "design",
79+
"tags": ["assets", "svg"],
80+
"icon": "bi-image"
81+
},
82+
{
83+
"name": "Coolors",
84+
"url": "https://coolors.co/",
85+
"description": "A super fast color palettes generator to kickstart UI and brand design.",
86+
"category": "design",
87+
"tags": ["tool", "colors"],
88+
"icon": "bi-palette2"
89+
},
90+
{
91+
"name": "Google Fonts",
92+
"url": "https://fonts.google.com/",
93+
"description": "Library of free, open-source web fonts and interactive designer tools.",
94+
"category": "design",
95+
"tags": ["assets", "typography"],
96+
"icon": "bi-type"
97+
},
98+
{
99+
"name": "Lucide Icons",
100+
"url": "https://lucide.dev/",
101+
"description": "Beautiful, consistent, and customizable open-source icon library.",
102+
"category": "design",
103+
"tags": ["assets", "icons"],
104+
"icon": "bi-emoji-smile"
105+
},
106+
{
107+
"name": "CSS-Tricks",
108+
"url": "https://css-tricks.com/",
109+
"description": "Daily articles and deep dives into CSS layouts, tips, and front-end development.",
110+
"category": "coding",
111+
"tags": ["guides", "css"],
112+
"icon": "bi-magic"
113+
},
114+
{
115+
"name": "Refactoring UI",
116+
"url": "https://www.refactoringui.com/",
117+
"description": "Excellent design guide and rules for developers to design beautiful interfaces.",
118+
"category": "design",
119+
"tags": ["guides", "ui-ux"],
120+
"icon": "bi-layout-sidebar-inset"
121+
},
122+
{
123+
"name": "FFmpeg",
124+
"url": "https://ffmpeg.org/",
125+
"description": "A complete, cross-platform solution to record, convert and stream audio and video.",
126+
"category": "media",
127+
"tags": ["tool", "cli"],
128+
"icon": "bi-terminal"
129+
},
130+
{
131+
"name": "ImageMagick",
132+
"url": "https://imagemagick.org/",
133+
"description": "Robust suite to create, edit, compose, or convert bitmap images.",
134+
"category": "media",
135+
"tags": ["tool", "cli"],
136+
"icon": "bi-image-fill"
137+
},
138+
{
139+
"name": "OBS Studio",
140+
"url": "https://obsproject.com/",
141+
"description": "Free and open source software for video recording and live streaming.",
142+
"category": "media",
143+
"tags": ["app", "recording"],
144+
"icon": "bi-camera-video"
145+
},
146+
{
147+
"name": "DaVinci Resolve",
148+
"url": "https://www.blackmagicdesign.com/products/davinciresolve",
149+
"description": "Professional video editing, color correction, and audio post-production app.",
150+
"category": "media",
151+
"tags": ["app", "video-editing"],
152+
"icon": "bi-film"
153+
},
154+
{
155+
"name": "Handbrake",
156+
"url": "https://handbrake.fr/",
157+
"description": "Open-source tool for converting video from nearly any format to modern codecs.",
158+
"category": "media",
159+
"tags": ["app", "transcoder"],
160+
"icon": "bi-disc"
161+
},
162+
{
163+
"name": "Audacity",
164+
"url": "https://www.audacityteam.org/",
165+
"description": "Easy-to-use, multi-track audio editor and recorder for Windows, macOS, and Linux.",
166+
"category": "media",
167+
"tags": ["app", "audio"],
168+
"icon": "bi-mic"
169+
},
170+
{
171+
"name": "Jekyll Documentation",
172+
"url": "https://jekyllrb.com/docs/",
173+
"description": "Guides and references for building Jekyll static websites and blogs.",
174+
"category": "writing",
175+
"tags": ["docs", "jekyll"],
176+
"icon": "bi-book"
177+
},
178+
{
179+
"name": "Liquid Documentation",
180+
"url": "https://shopify.github.io/liquid/",
181+
"description": "Reference docs for Liquid, the flexible template language used in Jekyll.",
182+
"category": "writing",
183+
"tags": ["docs", "templating"],
184+
"icon": "bi-code-square"
185+
},
186+
{
187+
"name": "Markdown Guide",
188+
"url": "https://www.markdownguide.org/",
189+
"description": "A comprehensive reference manual and cheat sheet for Markdown syntax.",
190+
"category": "writing",
191+
"tags": ["guides", "markdown"],
192+
"icon": "bi-markdown"
193+
},
194+
{
195+
"name": "GitHub Docs",
196+
"url": "https://docs.github.com/",
197+
"description": "Guides and developer documentations for using git and hosting on GitHub.",
198+
"category": "writing",
199+
"tags": ["docs", "github"],
200+
"icon": "bi-journal-code"
201+
},
202+
{
203+
"name": "StackEdit",
204+
"url": "https://stackedit.io/",
205+
"description": "In-browser Markdown editor with real-time rendering and cloud syncing.",
206+
"category": "writing",
207+
"tags": ["tool", "writing"],
208+
"icon": "bi-textarea-resize"
209+
},
210+
{
211+
"name": "Hemingway Editor",
212+
"url": "https://hemingwayapp.com/",
213+
"description": "An editor that identifies complex sentence structures to improve readability.",
214+
"category": "writing",
215+
"tags": ["tool", "writing"],
216+
"icon": "bi-pen"
217+
},
218+
{
219+
"name": "WebAIM",
220+
"url": "https://webaim.org/",
221+
"description": "Articles and tools providing practical web accessibility solutions.",
222+
"category": "a11y",
223+
"tags": ["reference", "a11y"],
224+
"icon": "bi-universal-access"
225+
},
226+
{
227+
"name": "W3C WAI",
228+
"url": "https://www.w3.org/WAI/",
229+
"description": "Standards and resources from the Web Accessibility Initiative.",
230+
"category": "a11y",
231+
"tags": ["reference", "standards"],
232+
"icon": "bi-shield-check"
233+
},
234+
{
235+
"name": "PageSpeed Insights",
236+
"url": "https://pagespeed.web.dev/",
237+
"description": "Google tool to analyze web performance and get suggestions to make pages faster.",
238+
"category": "a11y",
239+
"tags": ["tool", "performance"],
240+
"icon": "bi-lightning-charge"
241+
},
242+
{
243+
"name": "The A11y Project",
244+
"url": "https://www.a11yproject.com/",
245+
"description": "A community-driven checklist and set of resources to make web design accessible.",
246+
"category": "a11y",
247+
"tags": ["guides", "a11y"],
248+
"icon": "bi-check-all"
249+
}
250+
]

0 commit comments

Comments
 (0)