- Updated `dashboard.css` with new animations for DATUM text, including a rainbow glitch effect and pulse glow.
- Added margin-top to `.stats-grid` in `earnings.css` for better layout.
- Modified `.search-box` focus styles in `workers.css` to use primary color variable.
- Refactored filtering functionality in `workers.js` to simplify logic and improve search capabilities.
- Reintroduced user settings info section in `earnings.html`.
- Removed 'asic' and 'bitaxe' filter buttons in `workers.html` for a cleaner interface.
Updated the CSS class `.status-indicator` to `.status-label` in `earnings.css`, including style adjustments for padding and font size. Modified the corresponding HTML in `earnings.html` to reflect this change, ensuring consistency across the codebase.
- Updated `App.py` to add a datetime formatting filter and enhance the earnings route with better error handling and currency conversion.
- Revised `README.md` to document new features, including earnings breakdown and API endpoints.
- Added default currency setting in `config.json` and a function to retrieve it in `config.py`.
- Improved `data_service.py` with a new method for fetching payment history and enhanced error handling.
- Updated `setup.py` to include new CSS and JS files for the earnings page.
- Enhanced styling in `common.css`, `dashboard.css`, and `earnings.css` for better responsiveness.
- Optimized `workers.js` for improved performance with a progressive loading approach.
- Updated multiple HTML files to reflect new dashboard structure and features.
- Enhanced `worker_service.py` for consistent hashrate values and improved logging.
- Added `read_only` parameter to `clear_notifications` method in `NotificationService` to filter unread notifications.
- Updated method docstring to reflect the new parameter.
- Changed page title and header from "BTC-OS MINING DASHBOARD" to "BTC-OS DASHBOARD".
- Incremented version number in footer from "v0.8.8" to "v0.9.1".
This commit introduces significant updates to the application, focusing on currency support and improved configuration management. Key changes include:
- Added a `config_reset` flag in `update_metrics_job` in `App.py` to manage configuration resets.
- Modified `update_config` to handle currency changes and update notifications accordingly.
- Updated `MiningDashboardService` to fetch and include exchange rates and configured currency in metrics.
- Introduced utility functions for currency formatting and symbol retrieval in `notification_service.py`.
- Enhanced UI components in `main.js` and `boot.html` to support currency selection and display.
- Adjusted Docker Compose file to remove hardcoded wallet and power settings for better flexibility.
These changes enhance usability by allowing users to view financial data in their preferred currency and manage configurations more effectively.
Updated `NotificationService` to distinguish between low and normal hashrate modes, utilizing 3-hour and 10-minute averages for detection. Improved `updateChartWithNormalizedData` in `main.js` to support localStorage persistence for hashrate state and refined mode-switching logic. Introduced `showHashrateNormalizeNotice` for user notifications regarding hashrate normalization. Updated HTML files for UI consistency, including version number and structured display of pool fees and unpaid earnings. Ensured proper chart updates and annotations for 24-hour averages.
Implemented a keyboard event listener for Alt+W to reset the wallet address, clear chart data, and redirect to the configuration page with a confirmation dialog. Added a fallback function for wallet reset if chart data clearing fails. Updated the chart's Y-axis label to 'HASHRATE (TH/S)' and commented out the theme toggle button in the HTML for cleaner implementation.
- Adjust footer CSS and increase padding in dashboard.
- Update chart title for clarity on hashrate units.
- Implement Alt+W keyboard shortcut to reset wallet address with confirmation and error handling.
- Add version number to footer in base.html.
- Change "Network Fee (%)" label to "Firmware Fee (%)" with updated tooltip in boot.html.
Updated `updateUI()` in `main.js` to show last block earnings with a "+" prefix and "SATS" suffix. Modified `dashboard.html` to include a new span element that conditionally displays the earnings or defaults to "+0 SATS".
The `memory_dashboard` route and its rendering logic have been completely removed from `App.py`. This includes the collection of memory statistics, error handling, and all associated HTML, CSS, and JavaScript from `memory_dashboard.html`. The removal effectively eliminates the memory monitoring dashboard from the web application. Was not working as intended. But memory management is still full operational.
- Implemented a new `/memory-dashboard` route in `App.py` to display memory usage metrics, including current usage, historical data, and garbage collection stats.
- Updated `docker-compose.yml` to change Redis health check interval from 10s to 1s and added a start period of 3s.
- Created `memory_dashboard.html` with a dashboard layout, styles, and scripts for dynamic memory metrics display and actions.
Introduces a script in `boot.html` to bypass the boot sequence if the user has completed it previously, checking for a valid wallet configuration before redirecting to the dashboard. Additionally, updates the earnings check in `worker_service.py` to handle `None` values more robustly, ensuring a minimum unpaid earnings value of `0.001`.
Updated the star rating display for pool fees in `dashboard.html`. When `metrics.pool_fees_percentage` is between 0.9 and 1.3, the number of stars shown has been increased from one to three, improving the visual representation of the metric.
Updated titles in base.html, blocks.html, dashboard.html,
notifications.html, and workers.html to eliminate the
version number "v 0.3", creating a more concise and
uniform appearance across the application.
- Added health check for Redis in `docker-compose.yml`.
- Introduced new environment variables for the dashboard service.
- Updated Redis dependency condition for the dashboard service.
- Modified Dockerfile to use Python 3.9.18 and streamlined directory creation.
- Enhanced `minify.py` with logging and improved error handling.
- Added methods in `OceanData` and `WorkerData` for better data handling.
- Improved error handling and logging in `NotificationService`.
- Refactored `BitcoinProgressBar.js` for better organization and theme support.
- Updated `blocks.js` with new helper functions for block data management.
- Enhanced `dashboard.html` for improved display of network stats.
Implemented new CSS styles for the DeepSea theme in `boot.css`, enhancing visual elements like colors, shadows, and animations for various components. Updated `common.css` to include a footer style and a theme loader for improved user experience. Removed inline styles from `base.html` and replaced them with references to the new styles. Added JavaScript to create dynamic underwater effects when the DeepSea theme is active. Updated footer to include a link to Ocean.xyz.
Updated `theme-toggle.css` with new styles for DeepSea and Bitcoin themes, including a loading screen. Introduced `isApplyingTheme` flag in `main.js` to manage theme application state. Modified `applyDeepSeaTheme` and `toggleTheme` functions in `theme.js` to enhance theme switching experience with dynamic loading messages. Enhanced `base.html` to preload styles and prevent flickering during theme transitions.
Implemented CSS styles and animations for an "Ocean Wave Ripple Effect" and a "Retro Glitch Effect" in the new "DeepSea Theme". Added keyframes, background images, and opacity settings to create underwater light rays and digital noise. Included JavaScript to dynamically generate elements for these effects when the theme is active, enhancing user experience.
Update wallet address and improve user flow
- Changed the `WALLET` environment variable in `docker-compose.yml` to a new Bitcoin address.
- Updated the wallet address in the "Use Defaults" button handler in `boot.html`.
- Modified the logic for user selection of 'N' to display the configuration form directly instead of redirecting to the dashboard.
- Updated fallback messages to reflect the new title "MINING CONTROL SYSTEM".
Added fixed height and flexbox properties to center the Bitcoin logo. Adjusted positioning of the DeepSea ASCII art for perfect centering within the logo area.
Updated the `#bitcoin-logo::before` pseudo-element to change the displayed version text from "DeepSea v.21" to "v.21", simplifying the version information.
- Added base styling for the Bitcoin logo with positioning and font settings.
- Updated logo styling to hide the original and accommodate new height.
- Introduced ASCII art for the Bitcoin logo with enhanced visual effects.
- Added "DeepSea" version info label for better branding visibility.
Introduces a responsive theme toggle button with styles for desktop and mobile views in `theme-toggle.css`. Updates `BitcoinProgressBar.js` to support dynamic theme changes and adds a new `updateTheme` method. Enhances `main.js` for theme management based on user preferences in `localStorage`. Modifies `base.html` and other HTML files to include the theme toggle button and necessary scripts. Introduces `theme.js` for managing theme constants and applying the DeepSea theme.
Updated the `reset_chart_data` function to include a new `network_fee` parameter in the `MiningDashboardService`. Modified `config.json` to add a default `network_fee` key. Enhanced `load_config` in `config.py` to handle the new parameter. Updated the `MiningDashboardService` constructor and `fetch_metrics` method to utilize the `network_fee` in calculations. Added a new input field for `network_fee` in `boot.html` and updated related JavaScript functions to manage this input. Improved the "Use Defaults" button functionality to reset the `network_fee` to its default value.
Updated conditional checks in `dashboard.html` to ensure
`metrics.pool_fees_percentage` is not `none` before display.
Added validation for percentage range (0.9 to 1.3) to show
star icon and "DATUM" label, improving data accuracy and
presentation.
Increased margin-left for the `probSpan` element in the
`updateUI` function from 10px to 17px for better spacing.
Removed the inline margin-left style from the `block_odds_3hr`
span in `dashboard.html`, promoting a more consistent style
management through JavaScript.
Updated CSS for improved styling, added functions to calculate block finding probability and time, and modified UI to display these metrics based on the 24-hour hashrate. New HTML elements added to the dashboard for better user visibility of block odds.
Eliminated the acceptance rate section from the `createWorkerCard` function in `workers.js`, including its corresponding HTML in `workers.html`. Updated the `updateSummaryStats` function to remove references to the average acceptance rate.
Clarified the use of "mempool.guide" in `blocks.js` to align with Ocean.xyz ethos.
In `dashboard.html`, replaced the "Pool Fees" section with "Blocks Found," including logic to display the number of blocks found, defaulting to "0" if not defined. Removed associated pool fees logic and updated indicators accordingly.
This commit updates all references from "mempool.space" to "mempool.guide" in multiple files, including README.md, project_structure.md, blocks.js, and blocks.html.
Updated the application to use a configurable timezone instead of hardcoding "America/Los_Angeles". This change impacts the dashboard, API endpoints, and worker services. Timezone is now fetched from a configuration file or environment variable, enhancing flexibility in time display. New API endpoints for available timezones and the current configured timezone have been added. The frontend now allows users to select their timezone from a dropdown menu, which is stored in local storage for future use. Timestamps in the UI have been updated to reflect the selected timezone.
Implemented CSS styles for an optimal fee indicator, including a gold star and a label. Updated HTML to conditionally show the star and "DATUM" label when the pool fees percentage is between 0.9 and 1.3.
Updated `MiningDashboardService` to calculate and display
the `pool_fees_percentage` metric, reflecting earnings lost
to pool fees. Enhanced error handling for earnings processing.
Updated styles in `dashboard.css` for the new metric and
added corresponding HTML elements in `dashboard.html` to
ensure proper display and conditional rendering.
- Decreased font size of `h1` in `common.css` and added padding for better usability.
- Introduced hover effects for the top right link.
- Removed link from `h1` in `base.html` and added a block to display the last updated time.
- Clarified comments to emphasize real-time data display.
- Modified `consoleSettings` to include `refreshInterval`.
- Changed initialization message for the console.
- Enhanced `setupEventSource` with connection logging and error handling.
- Updated `fetchMetrics` to log connection and error messages.
- Introduced `processMetricChanges` to handle significant metric updates.
- Added `logCurrentStats` for periodic logging of mining statistics.
- Implemented `queueMetricUpdate` to manage console message display.
- Retained and adjusted `adjustConsoleLayout` for proper layout on load.
- Updated HTML title and copyright information for branding.
- Added white text color to `.stat-value` in console.css for better visibility.
- Updated Bitcoin Mining Terminal version to `21.0000` in console.html.
- Changed copyright notice to "BTC OS - Mining Operations".
- Removed current time display elements from the console.
Updated CSS for better height management and responsiveness.
Adjusted `.console-container`, `.console-wrapper`, and `.console-output` for improved layout stability and overflow handling.
Set minimum heights for `.console-stats` and added padding for better spacing.
Changed title from "BITCOIN MINING TERMINAL v1.0" to "BTC OS LOG TERMINAL v1.0".
Updated `console.css` to implement a retro CRT theme, featuring new background colors, gradient effects, and flicker animations. Improved styles for console elements and added neon-inspired color classes for messages. Included media queries for mobile responsiveness.
Moved CSS link in `console.html` to a new block for better organization and structure.
This commit introduces a new route in `App.py` for a retro-styled console log page that displays real-time Bitcoin mining metrics. It includes a new CSS file, `console.css`, for styling with effects like CRT and text glitch animations. The `console.js` file is added to handle log generation, metrics fetching, and real-time updates. Additionally, a new `console.html` file is created to structure the console page, integrating the necessary styles and scripts.