Skip to content
View HenryXCC's full-sized avatar
  • Lima

Block or report HenryXCC

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
HenryXCC/README.md

Hey, I'm Henry 👋

I build things that are well-crafted, properly tested, and bilingual by default.

Python · JavaScript · Desktop · Web · ES / EN


About me

  • 🧪 Tests in every repo — every project ships with a pytest or browser test suite (48–72 tests).
  • 🌍 Bilingual out of the box — every project supports live Spanish/English switching without restarting.
  • 🔎 Clean architecture — core logic stays separated from the UI and is independently testable.
  • 🐍 Python for desktop — customtkinter, Flet, tkinter, FFmpeg, yt-dlp, pandas.
  • 🌐 Vanilla JS for the web — SPAs using ES2020+ and native browser APIs, no bundler required.

Tech stack

PythonJavaScriptHTML5CustomTkinterFletFFmpegpytestMIT


Projects

🔐 Security & Privacy

ProjectDescriptionStack
LockBoxPassword manager in a single HTML file. AES-256-GCM + PBKDF2 (310k iterations), TOTP/2FA, HIBP breach check with k-anonymity, 71 browser tests. Zero runtime dependencies.Vanilla JSWeb Crypto APIHTML

🛠 Desktop Utilities

ProjectDescriptionStack
FiloDesktop file organizer: auto-sort by category, EXIF/ID3 metadata hierarchy, custom rules engine, bulk renamer with 17 variables, duplicate detector, real-time watch mode, system tray. 56 tests.Pythoncustomtkinterwatchdog
Universal ConverterConvert images (WebP, PNG, JPEG, GIF…) and videos (MP4, AVI, MKV…), download YouTube audio in 6 formats. Animated GIF builder with live preview. 56 tests.PythoncustomtkinterFFmpegyt-dlp
PDFuseFill PDF forms in batch from Excel or CSV. Supports AcroForm fields and flat PDFs via a visual coordinate editor. CLI mode included. 72 tests.PythonpypdfReportLabpymupdf
Renombrador MasivoBulk file renamer: 4 combinable rules, colour-coded live preview, dual conflict detection, persistent undo log, JSON profiles, CLI. Zero external dependencies. 48 tests.Pythontkinter

⏱ Productivity

ProjectDescriptionStack
FlowTimerFull-featured Pomodoro timer: drift-free countdown with time.monotonic(), weekly stats + streak tracking, CSV export, built-in music player with YouTube import.Pythontkinterpygameyt-dlp

📊 Data & Finance

ProjectDescriptionStack
Personal Expense DashboardPersonal finance tracker: manual entry, Excel/CSV import with flexible column detection, pie & bar charts, multi-currency (PEN/USD), atomic JSON persistence.Pythontkinterpandasmatplotlib

🌐 Web Apps

ProjectDescriptionStack
NewsScopeReal-time global news SPA. 11 languages, 50+ country filters, geo-restriction detection, skeleton loaders, full keyboard nav & ARIA. Zero npm dependencies, no bundler.Vanilla JSES2020+CSS Grid
Clima & AgendaWeather + daily planner desktop app. 7-day forecast, dynamic gradient by weather & time of day, remote city clock, 7-day auto-cleaning agenda, offline cache. No API key required.PythonFletOpen-Meteo

All projects are MIT licensed

Pinned Loading

  1. FiloFiloPublic

    Desktop file organizer with rules engine, bulk renamer, duplicate detector and real-time watch mode.

    Python

  2. FlowTimerFlowTimerPublic

    Full-featured Pomodoro timer with stats, streak tracking and built-in music player.

    Python

  3. lockboxlockboxPublic

    Password manager in a single HTML file. AES-256-GCM, TOTP/2FA, HIBP breach check. Zero dependencies.

    HTML

  4. newsscope-appnewsscope-appPublic

    Real-time global news SPA. 11 languages, 50+ countries, 0 npm dependencies.

    JavaScript

  5. pdfusepdfusePublic

    Batch PDF form filler from Excel/CSV. Supports AcroForm and flat PDFs with visual coordinate editor.

    Python

  6. universal-converteruniversal-converterPublic

    Convert images and videos locally. Download YouTube audio. No cloud uploads.

    Python