Commit Graph

113 Commits

Author SHA1 Message Date
89b0f733b1 Add .gitea/workflows/changelog.yml
Some checks failed
Changelog / changelog (push) Failing after 1m10s
2025-12-25 16:57:58 +00:00
b90008d13c Update README.md 2025-12-25 09:33:37 +00:00
47fb7779d9 Update README.md 2025-12-25 09:31:50 +00:00
3de0ae1fd3 Update README.md 2025-12-25 09:23:48 +00:00
fea9c3a6bf Update LICENSE 2025-12-25 09:23:09 +00:00
e0c7dce9c8 Update LICENSE 2025-12-25 09:19:35 +00:00
9a6088fc9b Update LICENSE 2025-12-25 09:16:41 +00:00
3addaca2f2 Snapshot as lots broken. Taken snapshot before reverting commits 2025-12-17 17:28:40 +00:00
ce6c2298a1 Binary simulator is feature complete.
Known issues:
- Formatting of the navbar across the site is broken
- Formatting of the Binary simulator is broken

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 22:46:29 +00:00
8b3c58c8d9 Recent Changes:
- Make the navigation bar 3 times it's current height
- The navbar needs the Computing:Box logo to the left of the site name
- Move the toolbox button to appear below the navigation bar
- Make the background of the random button glow/pulse green when random is running
- Make Random run a little longer (like 25% more)
- Rename the "Custom" card to "Custom Number"
2025-12-16 19:56:40 +00:00
ae91944cb4 Fixed Changes:
- The bit value when in two's compliment mode is not right, it should be on the same line, not wrapped
- The random button should glow when the random function is running, it shouldn't be solid green all the time
- The reset button, can you make the background of it red when hovered over too? I want it to pulse red on the background as well
- Make the title of this page (in head) "Binary Simulator"
- Reinstate the BaseLayout layout which we created previously
- The shifts for Two's Compliment do not work. An Arithmetic Right Shift would keep the value of the most significant bit.

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 19:35:39 +00:00
8bf8b44938 - Make the bulbs 25% bigger
- Make the increment/decrement buttons centred to the card
- The toolbox button disappears when the toolbox is hidden
- Move the custom buttons to their own card in the toolbox
- Put the random button in the same card as the custom buttons
- Make the random button glow/pulse green when it is running
- Move the shift buttons to the "Tools" card
- Make the reset button the full width of the card, it should be in the bottom row on its own.
- Make the reset button glow/pulse red when hovered over
- Rename Mode to "Settings"
- Move bit width to the "Settings" card
- Keep the "Tools" card named as "Tools"
2025-12-16 19:17:06 +00:00
7fa90ab165 Signed-off-by: Alexander Lyall <alex@adcm.uk> 2025-12-16 18:53:23 +00:00
f68aea4e33 Binary Page Beta 1
Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 17:18:03 +00:00
91a07e49ae feat(v2-alpha): add collapsible toolbox and refine binary simulator layout
- Introduce collapsible right-hand toolbox for the binary simulator
- Pin toolbox to the right edge with responsive fallback on smaller screens
- Rework tools and bit-width controls into a shared side layout
- Adjust control sizing, spacing, and visual hierarchy for clarity

Notes:
- Toolbox collapse is functional but requires refinement
- Tools and Bit Width should be merged into a single module/card
- Collapsed state does not yet fully hide the panel or re-centre content

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 15:13:18 +00:00
1519032f5b Fixed the dual bulb issue, added new font to typeface package
Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 14:27:51 +00:00
8d701a7704 Update to increment/decrement buttons and rearrangement of buttons.
Page now broken...

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 13:04:21 +00:00
ac585701a3 Fix broken code
Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 11:30:59 +00:00
002fbb8b6c Addition of increment/decrement buttons, addition of Auto Random button
Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-16 11:19:51 +00:00
e6da9c8c98 Tweaks to Binary UI
Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-15 19:58:34 +00:00
d4765b3788 feat(v2-alpha): refactor binary simulator and introduce shared site layout
- Rewrite binary simulator with unified unsigned and two’s complement logic
- Support dynamic bit widths from 4 to 64 with LSB-preserving resizing
- Replace legacy unsigned-only scripts with a single maintainable implementation
- Extract binary styles into dedicated CSS and add global site styling
- Introduce shared header, footer, and base layout components
- Migrate Binary page to BaseLayout and modular assets

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-14 19:46:23 +00:00
460126dccc Update to product roadmap
Signed-off-by: Alexander Lyall <alex@adcm.uk>
2.0
2025-12-14 17:11:21 +00:00
58202ca853 feat(alpha): introduce Computing:Box prototype alpha branding and assets
- Update README to reflect Computing:Box as the evolution of Bit:Box and CS:Box
- Replace CS:Box logo references with Computing:Box branding
- Add initial Bootstrap Studio design file for prototype layout
- Include legacy CS:Box logo assets for reference and transition
- Establish baseline assets for Prototype Alpha phase

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-14 17:06:57 +00:00
50829688e3 feat(binary): add full binary simulator with unsigned and two’s complement modes
- Introduce new Binary Simulator page with adjustable bit width (4–16 bits)
- Support unsigned and two’s complement representations with live conversion
- Add left/right shift operations and custom binary/denary input
- Implement accessible bulb-and-switch UI with MD3-inspired styling
- Add seven-segment display font assets for realistic number output
- Establish shared base layout, styles, and tooling for future simulators

Signed-off-by: Alexander Lyall <alex@adcm.uk>
2025-12-14 16:57:31 +00:00
7a694bf400 Update README.md 2025-12-14 16:34:30 +00:00
8ea5c870be revert 268a82f17c
revert ci(deploy): add Gitea Actions workflow for site publishing

- Add publish workflow to deploy main branch via SFTP
- Configure workflow dispatch and push-to-main triggers
- Use repository variables and secrets for SSH credentials
- Update README logo markup for consistent sizing

Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-14 16:18:42 +00:00
758d2228f7 feat(rebrand): migrate CS:Box content to Computing:Box branding
- Rebrand UI text, navigation, footer, and metadata to Computing:Box
- Add canonical URLs and updated Open Graph metadata for SEO
- Replace legacy CS:Box imagery with new Computing:Box assets
- Update About page copy to reflect expanded curriculum focus
- Enhance A Level hexadecimal simulator with custom binary input
- Regenerate exported assets and font hashes

Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-14 15:23:57 +00:00
268a82f17c ci(deploy): add Gitea Actions workflow for site publishing
- Add publish workflow to deploy main branch via SFTP
- Configure workflow dispatch and push-to-main triggers
- Use repository variables and secrets for SSH credentials
- Update README logo markup for consistent sizing

Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-14 13:59:47 +00:00
01cc324549 chore(assets): reorganise project files and add exported pages
- Move Bootstrap Studio design file into assets/bootstrap
- Rename and relocate screenshots into assets/screenshot with kebab-case names
- Add generated export HTML pages for simulators and site content
- Preserve existing content with no functional changes to simulators

Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-14 13:53:28 +00:00
6e1c31068a chore(repo): update CODEOWNERS and remove exported site artifacts
- Update default reviewer from @MrDavisCSIT to @alexander.lyall
- Remove generated files under Export/ (HTML/CSS/assets) from the repo
- Update Bootstrap Studio project file (CSBox.bsdesign)
``` :contentReference[oaicite:0]{index=0}

Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-14 13:49:40 +00:00
a87d9d0da6 Export of updated website
Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-09 19:56:29 +00:00
36fcbf53f9 Removal of external linking
Signed-off-by: Alexander Davis <alex@adcm.uk>
2025-12-09 19:53:41 +00:00
f8a86adc40 Merge branch 'main' of https://gitea.adcmnetworks.co.uk/alexander/CS-Box
Merge of minor updates
2025-07-20 14:16:56 +01:00
837f1f3e9f Added show on hover for dropdown menu items 2025-07-20 14:13:40 +01:00
Alexander Davis
c94121646b Update README.md 2025-07-19 19:53:08 +01:00
9bbd8ee3c0 Tracking Update
Updates to site tracking service
2025-05-26 21:51:05 +01:00
f7766d03b0 Create CODEOWNERS 2025-04-24 20:43:24 +01:00
d89c0093fa Upload of Screenshorts 2025-04-24 20:40:45 +01:00
b6cefbfdbe Update CSBox.bsdesign 2025-02-22 11:39:42 +00:00
fc9c5f4c9f Update CSBox.bsdesign 2024-12-11 23:05:49 +00:00
d4441afd55 Wave 2 Beta Release
 Wave 2 Beta Release: New Logic Gates, Improved UX, and Major Enhancements! 

---

## **🆕 New Features**
### **1️⃣ Additional Logic Gates**
#### **🔲 NAND Gate**
- **Fully functional NAND logic** implemented.
- **Truth Table**:
  | **Input A** | **Input B** | **Output (A NAND B)** |
  |-------------|-------------|-----------------------|
  | 0           | 0           | **1** (ON)            |
  | 0           | 1           | **1** (ON)            |
  | 1           | 0           | **1** (ON)            |
  | 1           | 1           | **0** (OFF)           |
- **Toggle buttons** for Input 1 and Input 2 work as expected.
- Lightbulb updates correctly to match the logic output.

#### **🔲 NOR Gate**
- **Fully functional NOR logic** implemented.
- **Truth Table**:
  | **Input A** | **Input B** | **Output (A NOR B)** |
  |-------------|-------------|----------------------|
  | 0           | 0           | **1** (ON)           |
  | 0           | 1           | **0** (OFF)          |
  | 1           | 0           | **0** (OFF)          |
  | 1           | 1           | **0** (OFF)          |
- Lightbulb updates correctly to match the logic output.
- Toggle buttons for Input 1 and Input 2 work as expected.

#### **🔲 XOR Gate**
- **Fully functional XOR logic** implemented.
- **Truth Table**:
  | **Input A** | **Input B** | **Output (A XOR B)** |
  |-------------|-------------|----------------------|
  | 0           | 0           | **0** (OFF)          |
  | 0           | 1           | **1** (ON)           |
  | 1           | 0           | **1** (ON)           |
  | 1           | 1           | **0** (OFF)          |
- Toggle buttons for Input 1 and Input 2 trigger the logic updates.
- Lightbulb behavior reflects the XOR output logic.

#### **🔲 XNOR Gate**
- **Fully functional XNOR logic** implemented.
- **Truth Table**:
  | **Input A** | **Input B** | **Output (A XNOR B)** |
  |-------------|-------------|-----------------------|
  | 0           | 0           | **1** (ON)            |
  | 0           | 1           | **0** (OFF)           |
  | 1           | 0           | **0** (OFF)           |
  | 1           | 1           | **1** (ON)            |
- Lightbulb updates correctly based on the logic.
- Input toggle buttons work correctly for Input 1 and Input 2.

---

## **🛠️ Enhancements & Improvements**
- **Input Handling**:
  - **Input toggles** now work consistently across all logic gate types (AND, OR, NOT, XOR, NOR, NAND, XNOR).
  - Input logic is consistent across all gate types, including the lightbulb status updates.

- **Reset Functionality**:
  - The **reset button** now works across all logic gates.
  - The lightbulb and toggle button status are properly reset.

- **Code Refactoring**:
  - Reduced **redundancy** in the toggle input functions.
  - Enhanced **code readability** and maintainability.
  - Removed unnecessary logic duplications and consolidated shared logic for gate input handling.

---

## **🐛 Bug Fixes**
- **Fixed NAND Gate logic** — lightbulb now correctly updates according to the truth table.
- **Fixed XNOR Gate logic** — logic now correctly handles the logic for matching inputs.
- **Fixed Reset Functionality** — lightbulbs and buttons now reset correctly across all gate types.
- **General Bug Fixes** — Minor improvements in input toggle functions for better user experience.

---

## **📁 Files Changed**
📄 logicGates.js 📄 logicGates.html

---

## **🚀 Release Notes**
This release marks the **Wave 2 Beta** of the CS:Box project, bringing support for all fundamental logic gates. This wave includes the **NAND, NOR, XOR, and XNOR gates**, which have been built with consistent logic, responsive lightbulb behavior, and proper input handling. This release also introduces major fixes to the **reset functionality**, ensuring that all gates reset properly when the reset button is pressed.

**New Features Include:**
- Full support for **NAND, NOR, XOR, XNOR logic gates**.
- Input toggle buttons now work seamlessly for all gates.
- Lightbulb status updates in real-time according to input changes.
- **Reset button** now clears all input states and correctly resets the lightbulb status for each gate type.

**Looking Ahead**:
- Further UI improvements to make the interface more user-friendly.
- Expanded testing to ensure accurate logic across all devices.

Enjoy this latest version of CS:Box! 🚀
2024-12-07 23:46:18 +00:00
a247bc036e Wave 1 Beta Release
# Wave 1 Beta Release

---

## Key Features and Enhancements

### 1. Core Functionality
- Developed and optimized JavaScript functions for binary, hexadecimal, and logic gate simulations, ensuring high performance and compatibility across GCSE and A-Level specifications.
- Introduced dynamic behavior to adapt pages (e.g., GCSE vs A-Level) based on URL or heading context.
- Streamlined reset, toggle, and update functionalities for user inputs and sliders across various simulation pages.

### 2. Hexadecimal Simulator
- Enabled two configurations:
  - 8-bit binary with 2-digit hexadecimal (GCSE).
  - 16-bit binary with 4-digit hexadecimal (A-Level).
- Ensured user input validation for denary and hexadecimal values with robust error handling and feedback.

### 3. Hex Colors Module
- Added dynamic color preview updates for RGB sliders, denary, binary, and hexadecimal values.
- Included an "invert color" feature with corresponding visual updates.

### 4. Logic Gates Module
- Implemented NOT, AND, and OR gates with toggle buttons and live output updates.
- Enhanced reset functionality to initialize states correctly for each gate type.

### 5. Error Handling
- Resolved bugs related to undefined slider properties and invalid binary/hexadecimal inputs.
- Implemented fallback defaults for invalid or canceled inputs.

---

## Visual Enhancements

### 1. Custom Illustrations
- Created custom images for the following sections:
  - **About CS:Box**: A simplistic and educational-themed design.
  - **The Evolution from Bit:Box**: A visual transition from Bit:Box to CS:Box.
  - **Educational Impact**: Vibrant and engaging designs showcasing classroom learning.
- Refined visual hierarchy across all pages for better user experience.

### 2. Navigation Revamp
- Redesigned Bootstrap-based dropdown menus for better usability and accessibility.
- Improved menu hierarchy to align with the UK Computing Curriculum elements.

---

## Documentation

### 1. CS:Box Overview
- Added content explaining the project's evolution from Bit:Box and its educational significance.
- Highlighted key features and their relevance to the UK Computing Curriculum.

### 2. GitHub Repository
- Structured repository with concise descriptions of modules, features, and usage instructions.

---

## Bug Fixes and Optimizations
- Addressed issues with sliders not functioning correctly after reset on hexadecimal pages.
- Fixed error with NOT gate toggling state incorrectly upon reset.
- Streamlined JavaScript logic across all simulations to reduce redundancy and improve maintainability.

---

## Future Scope
- Prepare for **Wave 2 Release** with additional simulations (e.g., XOR gates, floating-point representations).
- Enhance accessibility features for a more inclusive user experience.
- Explore collaborative features for classroom settings.

---

*Wave 1 Beta Release is the foundation of CS:Box, setting the stage for engaging, curriculum-aligned computing education tools.*
2024-12-07 22:51:42 +00:00
f428b4a616 Merge branch 'main' of https://github.com/MrDavisCSIT/CS-Box 2024-12-07 22:49:57 +00:00
93b5f11abe Wave 1 Beta Release
# Wave 1 Beta Release

---

## Key Features and Enhancements

### 1. Core Functionality
- Developed and optimized JavaScript functions for binary, hexadecimal, and logic gate simulations, ensuring high performance and compatibility across GCSE and A-Level specifications.
- Introduced dynamic behavior to adapt pages (e.g., GCSE vs A-Level) based on URL or heading context.
- Streamlined reset, toggle, and update functionalities for user inputs and sliders across various simulation pages.

### 2. Hexadecimal Simulator
- Enabled two configurations:
  - 8-bit binary with 2-digit hexadecimal (GCSE).
  - 16-bit binary with 4-digit hexadecimal (A-Level).
- Ensured user input validation for denary and hexadecimal values with robust error handling and feedback.

### 3. Hex Colors Module
- Added dynamic color preview updates for RGB sliders, denary, binary, and hexadecimal values.
- Included an "invert color" feature with corresponding visual updates.

### 4. Logic Gates Module
- Implemented NOT, AND, and OR gates with toggle buttons and live output updates.
- Enhanced reset functionality to initialize states correctly for each gate type.

### 5. Error Handling
- Resolved bugs related to undefined slider properties and invalid binary/hexadecimal inputs.
- Implemented fallback defaults for invalid or canceled inputs.

---

## Visual Enhancements

### 1. Custom Illustrations
- Created custom images for the following sections:
  - **About CS:Box**: A simplistic and educational-themed design.
  - **The Evolution from Bit:Box**: A visual transition from Bit:Box to CS:Box.
  - **Educational Impact**: Vibrant and engaging designs showcasing classroom learning.
- Refined visual hierarchy across all pages for better user experience.

### 2. Navigation Revamp
- Redesigned Bootstrap-based dropdown menus for better usability and accessibility.
- Improved menu hierarchy to align with the UK Computing Curriculum elements.

---

## Documentation

### 1. CS:Box Overview
- Added content explaining the project's evolution from Bit:Box and its educational significance.
- Highlighted key features and their relevance to the UK Computing Curriculum.

### 2. GitHub Repository
- Structured repository with concise descriptions of modules, features, and usage instructions.

---

## Bug Fixes and Optimizations
- Addressed issues with sliders not functioning correctly after reset on hexadecimal pages.
- Fixed error with NOT gate toggling state incorrectly upon reset.
- Streamlined JavaScript logic across all simulations to reduce redundancy and improve maintainability.

---

## Future Scope
- Prepare for **Wave 2 Release** with additional simulations (e.g., XOR gates, floating-point representations).
- Enhance accessibility features for a more inclusive user experience.
- Explore collaborative features for classroom settings.

---

*Wave 1 Beta Release is the foundation of CS:Box, setting the stage for engaging, curriculum-aligned computing education tools.*
2024-12-07 22:49:29 +00:00
Alexander Davis
7ec00b49a8 Update README.md 2024-11-15 20:26:58 +00:00
0f7711fbb5 Changed Hex Spinner
Changed Hex Spinner to Sliders

Hex Colours Spinners to be replaced in next update
2024-11-10 00:23:04 +00:00
a262cad382 Unlinked Nav Bar
Unlinked Nav Bar on all pages so users can see the active page correctly
2024-10-30 17:39:47 +00:00
f85bee2c69 Remove File Extensions
Removed file extensions from links
Updated Nav bar so home link takes users to / instead of /index.html
2024-10-30 17:27:41 +00:00
261b6c79ce Logic Gates Work
Adding Reset Buttons to logic gates
Updating and modifying layout and CSS to ensure responsive design and layout
2024-10-29 11:08:35 +00:00
709a9a5a08 General Tweaking 2024-10-28 20:55:16 +00:00