Commit Graph

62 Commits

Author SHA1 Message Date
Nirodan 75062dbf5e Add 8 new tools: Hash Verifier, URL Tool, String Utils, Cron Explainer, IP Calc, Lorem Ipsum, CSV Viewer, Notes
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 09:10:25 +02:00
Nirodan ef03e76950 Fix requirements.txt: add trailing newline
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 18:27:51 +02:00
Nirodan 34c82f3dca Add 5 new tools: QR-Code, Markdown, Color Converter, JSON Formatter, Regex Tester
- backend/tools/qrcode_gen.py: POST /api/qrcode/generate, returns base64 PNG (qrcode[pil])
- backend/tools/markdown_tool.py: POST /api/markdown/render, extensions: tables/fenced_code/nl2br
- backend/tools/colorconverter.py: POST /api/color/convert, HEX/RGB/HSL via colorsys (no deps)
- backend/tools/jsonformatter.py: POST /api/json/format, returns formatted JSON with line/col errors
- backend/tools/regextester.py: POST /api/regex/test, flags i/m/s, returns matches with positions
- QrCodeTool.jsx: generate + download PNG button
- MarkdownTool.jsx: split editor/preview, debounce 500ms, white preview bg
- ColorConverterTool.jsx: color swatch preview, per-format copy buttons
- JsonFormatterTool.jsx: indent toggle 2/4, pre result box with copy
- RegexTesterTool.jsx: debounce 400ms, yellow match highlighting, flag checkboxes
- All blueprints registered in app.py; qrcode[pil] + markdown added to requirements.txt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 18:19:34 +02:00
Nirodan 45e1934bee Fix App.jsx: remove dead comment, make auth state reactive
- Remove leftover commented-out AdminDashboard import
- Replace static localStorage reads with useState + useEffect
  so isLoggedIn/role update automatically on storage events
  (e.g. token deleted in another tab)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 18:02:15 +02:00
Nirodan 1a6f476dc8 Merge pull request 'Clean release: drop local startup scripts and agent stub' (#1) from release into main
Reviewed-on: #1
2026-04-24 17:42:00 +02:00
Nirodan 955bc9a7bf Fix 8 bugs found in code review
- auth/login.py: guard against missing JSON body (get_json silent=True, empty-string check)
- app.py: replace infinite redirect with 404 for unknown /api/* and /setup/* paths
- tools/jwtdecoder.py: add algorithms list to jwt.decode() for PyJWT 2.x compatibility
- util/setup_routes.py: call reset_pool() after save_config() so pool re-initialises with new DB credentials
- util/logger.py: set ERROR level on error.log handler so it no longer receives INFO/WARNING messages
- LoginForm.jsx: remove dead navigate() call that was immediately overridden by window.location.href
- main.jsx: remove base.css, dark.css, light.css that were already imported in App.jsx (duplicate imports)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 17:38:51 +02:00
Nirodan 7f9c5c874a Add 6 new tools: Hasher, Base64, JWT Decoder, Password Gen, Timestamp, Text Diff
- backend/tools/hasher.py: POST /api/hash/sha256 and /api/hash/bcrypt (bcrypt added to requirements)
- backend/tools/base64tool.py: POST /api/base64/encode and /api/base64/decode
- backend/tools/jwtdecoder.py: POST /api/jwt/decode (signature verification disabled)
- backend/tools/passwordgen.py: POST /api/password/generate with charset and length options
- backend/tools/timestamp.py: POST /api/timestamp/convert (unix<->date, ISO 8601 + German format)
- backend/tools/textdiff.py: POST /api/text/diff returning structured added/removed/unchanged lines
- All blueprints registered in app.py and tools/__init__.py
- React components with copy button, dark/light mode support via CSS variables
- ToolOverview rebuilt as card grid; App.jsx routes added for all tools

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 14:28:18 +02:00
Nirodan 80ec5eca7b Security, code quality and frontend improvements
- Move SECRET_KEY out of docker-compose into .env (env_file), add .env.example
- Add flask-limiter with 10 req/min on login route; introduce util/limiter.py
- Replace direct mysql.connector.connect() calls with MySQLConnectionPool via util/db_pool.py
- Fix deprecated datetime.utcnow() -> datetime.now(timezone.utc) in auth/login.py
- Remove dead /api/scripts 410 route from admin.py
- Add MD5 security warning in Md5Tool.jsx
- Add ErrorBoundary component and wrap App.jsx
- Expand README with setup guide, screenshot and project structure

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 13:52:53 +02:00
Nirodan 8e2c2d740e Clean release: drop local startup scripts and agent stub v1.0 2026-01-22 16:43:14 +01:00
Nirodan 923c1984f5 v1.0 2026-01-22 15:35:38 +01:00
Nirodan a3c3967903 Reduce admin input padding to avoid overflow 2026-01-22 15:34:33 +01:00
Nirodan 206102db36 Let admin cards show full rounded inputs 2026-01-22 15:28:47 +01:00
Nirodan baa8b17ab2 Force admin forms single-column to stop overflow 2026-01-22 15:25:51 +01:00
Nirodan c24a0df4b2 Prevent input overflow in admin forms 2026-01-22 15:22:45 +01:00
Nirodan edc5fa7fd0 Stack admin forms to prevent overflow 2026-01-22 13:05:47 +01:00
Nirodan 7af1ca32ed Tighten admin form layout and responsive tables 2026-01-22 12:36:43 +01:00
Nirodan 450e184cf3 Clean admin layout, drop scripts, keep admin out of tools list 2026-01-22 12:31:19 +01:00
Nirodan e3b34bfc47 Extend admin for websites/scripts and surface links 2026-01-22 12:26:21 +01:00
Nirodan 0699158486 Add admin dashboard and tool icons 2026-01-22 12:18:27 +01:00
Nirodan a944f7dd5d Restyle UI with modern glassy theme 2026-01-22 12:12:47 +01:00
Nirodan 3d1bb93dfd Deleted old faststart setup 2026-01-22 12:03:36 +01:00
Nirodan 9d7e0023f4 Fix auth redirects and add rebuild startup scripts 2026-01-22 12:02:37 +01:00
Nirodan 1263f9d2ef Fix dev compose volume mounts 2026-01-22 07:57:05 +01:00
Nirodan c0aaa86546 Fix config path, env secrets, and align API calls 2026-01-22 07:56:27 +01:00
Nirodan 73d487255a Einfügen einer setup.css noch nicht run fähig, Design wird nicht angezeigt 2025-07-07 12:24:57 +02:00
Nirodan cf838ee9b1 Logout Button Fix immer noch zu weit rechts gewesen 2025-07-07 11:50:21 +02:00
Nirodan 96b5fc1a81 Bug Fixing, buttons nicht sichtbar im hellen modus, Logout zu weit rechts. Von hell auf dunkel standard 2025-07-07 11:39:47 +02:00
Nirodan 8d7b254306 NavBar v.0.1 etnfernen von altem LogoutButton in ToolOverview 2025-07-07 11:19:00 +02:00
Nirodan d927679667 NavBar v.0.0.1 2025-07-07 10:57:18 +02:00
Nirodan 537df29737 Hinzufügen des Styles, verschieben und löschen der alten CSS Dateien. Umschalten auf Modulares Design 2025-07-07 10:23:29 +02:00
Nirodan c6f4522d2c Sichtbare DockerLogs im Dev, änderungen an der python version gegen angriffe 2025-06-17 14:35:55 +02:00
Nirodan 263ac52454 setup_routes wieder util 2025-06-17 14:22:32 +02:00
Nirodan e680776bc4 Bug fixing fehlende oder Fehlerhafte Module korrigiert 2025-06-17 14:18:14 +02:00
Nirodan 4c6872a866 neuschreiben der app.py nach refectoring 2025-06-17 11:36:12 +02:00
Nirodan e0b77c890e Funktionsverschiebungen 1.1 2025-06-17 11:33:47 +02:00
Nirodan 8ca650cf11 Funktionstrennung 1.0 2025-06-17 11:28:06 +02:00
Nirodan 97acda1d2b Umstruckturieren, trennen vom Logger in eine eigene Datei 2025-06-17 11:20:00 +02:00
Nirodan e15f6a4ccf Trennen von errorlogs und normalen logs 2025-06-17 11:09:20 +02:00
Nirodan 6ca9cf77ac Logging in App.py 2025-06-17 11:05:55 +02:00
Nirodan ce36859cf0 Logger in login + token verify 2025-06-17 11:01:33 +02:00
Nirodan bbb1a70b9c MD5 hasher Bug Fix + Logger 2025-06-17 11:00:26 +02:00
Nirodan b6399f8b52 Docker compose. dev.yml erstellt 2025-06-17 10:43:22 +02:00
Nirodan 2961081c06 In docker umgewandelt zwar mit erros im frontend aber ja 2025-06-16 12:15:13 +02:00
Nirodan f395740522 Hash Fix 2025-06-16 11:16:44 +02:00
Nirodan 84684d0a08 Tokken validierung 2025-06-16 11:13:00 +02:00
Nirodan 77b95762f7 Token löschen für vollständigen Logout 2025-06-16 10:28:51 +02:00
Nirodan 492bc31393 Passwort hashen 2025-06-16 10:24:54 +02:00
Nirodan eb674efe9a Leerzeichen gelöscht 2025-06-16 10:10:59 +02:00
Nirodan 31ec539be2 Lizenz einfügen 2025-06-14 19:34:50 +02:00
Nirodan f877ea4398 Apassung an der Lizenz 2025-06-14 19:30:48 +02:00