Skip to content

Conversation

@andchir
Copy link

@andchir andchir commented Dec 30, 2025

  • Updated Angular.js version to latest.
  • Added skins support
  • Added "Flat" skin (default).

konard and others added 30 commits December 30, 2025 10:01
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #1
- Add app/server/python3.py: Python 3 version of the HTTP server
  with improved error handling, MIME type detection, and security
- Add gulpfile_skins.js: Gulp build file for compiling skins from
  src/css/skins/ folder
- Add src/css/skins/flat/flat.css: Modern flat skin with:
  - CSS custom properties for theming
  - Rounded corners throughout
  - Soft shadows
  - Thicker progress bars (avoiding thin lines)
  - Purple gradient navbar
  - Clean typography with Inter font
- Update app/index.html to load skin CSS
- Add compiled app/skins/flat.min.css
- Include screenshot demonstrating the flat skin

Fixes #1

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Changes based on owner feedback:
- Changed to dark theme style (medium dark, not too harsh #1e2430)
- Removed all shadows, using subtle borders instead
- Modern and visually beautiful design with:
  - Clean flat appearance
  - Teal/cyan accent colors for progress bars
  - Purple/blue accent for headings and active states
  - Good contrast between text and backgrounds
  - Rounded corners preserved

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add clean-css-cli devDependency for building skin CSS files
- Include package-lock.json for reproducible builds
- Update .gitignore to exclude .playwright-mcp/ testing directory

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Prevents Python bytecode cache from being tracked.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Make top bar a flexbox container for proper alignment
- Center icons in action buttons using inline-flex
- Reduce button size slightly (32px) for better fit within top bar
- Remove float properties and use flexbox instead

This fixes the issues:
- Icons in buttons are now centered
- Buttons no longer extend beyond the top bar

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Screenshot now shows:
- Icons properly centered in action buttons
- Buttons fitting within the top bar
- Clean flat dark theme design

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The screenshot now shows the latest version of the flat skin theme
with properly aligned buttons in the top bar.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Reduce button size from 32x32 to 28x28 pixels for better fit in headers
- Add specific font-size adjustments for minimize (-), width-toggle (↔),
  and refresh (↺) buttons
- Add padding-bottom adjustment for minus character visual centering
- Update screenshot to reflect current state

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add padding-top to Resources line in nav-bar for better spacing
- Change table header text color to light (--flat-text) for readability
- Add styling for links inside table headers
- Update screenshot with latest changes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add more specific CSS selectors for .table-data-plugin to override
  base styles that set link colors to black
- Style table header links (PID, USER, MEM%, etc.) with light text
- Add proper filter input styling for dark theme
- Style column sort caret with primary color
- Update screenshot to show the fixed design

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Changes based on owner feedback:
- Remove horizontal padding from table plugins so tables stretch to full width
- Change Resources block from padding-top to margin-top for proper spacing
- Remove border-radius from table corners for edge-to-edge display
- Update screenshot to reflect current state

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Updated CSS selector to use :has(table) to match all plugin bodies
containing tables, removing horizontal padding so tables stretch edge-to-edge.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Added 12px padding-bottom to .table-data-plugin .filter-container to create visual spacing between the search field and table headers in all plugin cards.

Updated screenshot to reflect current implementation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Add visible padding and border to search filter container
- Fix Python 3 server to handle URL query strings properly
- Update screenshot with improved search field spacing

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Changed filter-container padding from 16px 16px 20px 16px to 16px
for consistent spacing around the search field.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Внести изменения: Python 3 сервер и поддержка скинов с flat темой
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #3
- Add "Customizable" feature in features list
- Add comprehensive "Customization with Skins" section
- Document the Flat skin (dark theme) with screenshot
- Add instructions for using existing skins
- Add detailed guide for creating custom skins
- Document both Gulp and clean-css-cli build methods
- Update Python section to mention Python 3 support
- Include skin development tips

Fixes #3

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #5
- Remove white border from scrollbar track by adding border: none and
  box-shadow: none to override base plugin.css styles
- Change nav-bar height from fixed 48px to auto for proper content fitting

Fixes #5

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Обновить README: добавить информацию про skins
Fix flat theme scrollbar border and nav-bar height
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #7
Added padding-top: 0 to .table-data-plugin .plugin-body and .plugin-body:has(table)
selectors to remove top padding for table plugins, ensuring tables align flush with
the top of the plugin body.

Fixes #7

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
konard and others added 30 commits December 30, 2025 16:10
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #17
…tibility

- Updated Gulp from 3.9.1 to 5.0.1
- Migrated gulpfile.js to Gulp 4+ syntax using series() and parallel()
- Migrated gulpfile_skins.js to Gulp 4+ syntax
- Replaced deprecated gulp-util with fancy-log
- Replaced gulp-cssmin with gulp-clean-css (better maintained)
- Updated all gulp plugins to latest versions:
  - gulp-angular-templatecache: 1.8.0 → 3.0.1
  - gulp-concat: 2.6.0 → 2.6.1
  - gulp-ng-annotate: 2.0.0 → 2.1.0
  - gulp-uglify: 1.5.3 → 3.0.2
- Updated del from 2.2.0 to 8.0.1
- Build now works correctly on Node.js 20
- Reduced package count from 602 to 412
- Reduced vulnerabilities from 35 to 15

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
обновить версию Gulp и всех необходимых компонентов
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #19
- Updated angular from 1.3.4 to 1.8.3 in package.json
- Updated angular-route from 1.3.4 to 1.8.3 in package.json
- Replaced deprecated $$phase check with $applyAsync() in directives:
  - table-data.directive.js: replaced manual $digest() with $applyAsync()
  - key-value-list.directive.js: replaced manual $digest() with $applyAsync()
- Updated server.service.js: replaced $rootScope.$apply() with safer $applyAsync()
- Updated angular-mocks CDN URL in index.html to 1.8.3
- Rebuilt app/linuxDash.min.js with new Angular version

Tested on Node.js v20.19.6 - build and server work correctly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Обновить версию angular.js чтобы он работал на nodejs 20
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #21
The application was failing with error:
"Uncaught Error: [$injector:nomod] Module 'linuxDash' is not available"

Root cause:
- The gulpfile.js was concatenating JS files using 'src/js/**/*.js' glob
- This caused files to be concatenated in an undefined order
- The templates.js file (which uses the module) was being placed before
  app.js (which creates the module), causing the error

Solution:
- Explicitly include 'src/js/core/app.js' first in the concatenation order
- This ensures the AngularJS module is created before any code tries to use it
- The app.js file will be included twice (once explicitly, once in the glob),
  but this is harmless since module definition is idempotent

Testing:
- Rebuilt the application with 'npx gulp build'
- Verified module creation now appears at line 1549 (before usage at line 1555)
- Tested in browser - application loads successfully with no module errors

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Исправить ошибку angular приложения
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #23
Fixes the 404 error when Angular app checks for websocket support.
The Python server now responds with {"websocket_support": false}
instead of returning 404, allowing the app to gracefully fall back
to HTTP-based polling.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Исправить ошибку angular приложения
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #26
The router was getting stuck on the loading screen because localStorage
was storing routes with the hashbang prefix (!/path instead of /path).
When the app tried to navigate to these corrupted routes, it would fail
and get redirected back to /loading, creating an infinite loop.

This fix strips the hashbang prefix (!/) from routes before saving them
to localStorage, ensuring that route navigation works correctly.

Fixes #26

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Исправить роутер Angular (застревает на загрузке)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants