diff --git a/.gitignore b/.gitignore index b6e4761..7f6b817 100644 --- a/.gitignore +++ b/.gitignore @@ -127,3 +127,5 @@ dmypy.json # Pyre type checker .pyre/ + +.DS_Store diff --git a/README.md b/README.md index 90182f5..cb687d2 100644 --- a/README.md +++ b/README.md @@ -141,7 +141,7 @@ The websat web UI reads in the following items from `neon_iris/static/custom`: - `error.mp3` - Used for error responses - `wake.mp3` - Used for wake word responses - `favicon.ico` - The favicon for the web UI -- `logo.webp` - The logo for the web UI +- `logo.svg` - The logo for the web UI To customize these items, you can replace them in the `neon_iris/static/custom` folder and rebuild the image. diff --git a/neon_iris/static/custom/favicon.ico b/neon_iris/static/custom/favicon.ico index 844ecce..b49b0fb 100644 Binary files a/neon_iris/static/custom/favicon.ico and b/neon_iris/static/custom/favicon.ico differ diff --git a/neon_iris/static/custom/logo.svg b/neon_iris/static/custom/logo.svg new file mode 100644 index 0000000..1b21556 --- /dev/null +++ b/neon_iris/static/custom/logo.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/neon_iris/static/custom/logo.webp b/neon_iris/static/custom/logo.webp deleted file mode 100644 index 844ecce..0000000 Binary files a/neon_iris/static/custom/logo.webp and /dev/null differ diff --git a/neon_iris/static/scripts/audio.js b/neon_iris/static/scripts/audio.js index d573217..4b71ee3 100644 --- a/neon_iris/static/scripts/audio.js +++ b/neon_iris/static/scripts/audio.js @@ -102,8 +102,10 @@ startButton.addEventListener("click", function () { // Update the button's text and class based on the recording state if (AudioHandler.isRecording()) { startButton.classList.add("listening"); + startButton.classList.toggle("bg-blue-500"); startButton.textContent = "Listening..."; } else { + startButton.classList.toggle("bg-blue-500"); startButton.classList.remove("listening"); startButton.textContent = "Start Listening"; } diff --git a/neon_iris/static/styles.css b/neon_iris/static/styles.css index a048b26..802a215 100644 --- a/neon_iris/static/styles.css +++ b/neon_iris/static/styles.css @@ -1,135 +1,5 @@ -body, -html { - text-align: center; - font-family: "Roboto", sans-serif; - background-color: #f4f4f4; - height: 100%; - margin: 0; - padding: 0; -} -img.logo { - width: 40px; - height: 40px; -} -a { - text-decoration: none; -} -a:link { - color: #fff; - border-bottom: 1px solid #ff0000; -} -a:visited { - color: #e600e6; - border-bottom: 1px solid #b3b3b3; -} -a:hover { - color: black; - border-bottom: 1px solid #000099; -} -.button-container { - display: flex; - justify-content: center; /* This centers the button in the container */ - padding: 20px; - background-color: #333; /* Match the header background */ -} -#startButton { - padding: 15px 30px; - font-size: 18px; - border: none; - border-radius: 4px; - color: white; - cursor: pointer; - outline: none; - margin-bottom: 10px; - margin-top: 10px; - transition: background-color 0.3s; - background-color: #4caf50; - max-width: 50%; - align-content: center; - align-self: center; -} #startButton.listening { - background-color: #03a9f4; -} -.content { - display: flex; - align-items: center; - justify-content: space-between; - padding: 20px; - background-color: #333; - margin: 0; -} -.chat-header { - padding: 20px; - background-color: #333; - color: #fff; - text-align: center; - font-size: 2em; - text-shadow: 2px 2px 4px #000000; - transition: transform 0.3s ease; -} -.chat-header:hover { - transform: scale( - 1.05 - ); /* Slight increase in size on hover for dynamic effect */ -} -.chat-window { - display: flex; - flex-direction: column; - padding: 20px; - overflow: auto; -} -#chatHistory { - display: flex; - flex-direction: column; - align-items: flex-start; /* Align items to the start by default */ - height: 100%; - overflow-y: auto; /* Allows scrolling if content overflows */ - background-color: #1a1a1a; /* Dark background for the chat container */ -} -.input-area { - display: flex; - padding: 20px; -} -.input-area input { - flex: 1; - padding: 10px; - margin-right: 10px; - font-size: 16px; -} -.input-area button { - padding: 10px 20px; - background-color: #f90; - border: none; - font-size: 16px; - cursor: pointer; -} -.input-area button:hover { - background-color: #e80; -} -.input-field { - flex-grow: 1; - padding: 10px; - font-size: 16px; - margin-right: 10px; /* Spacing between input field and submit button */ -} -#download-area { - padding: 20px; - background-color: #333; - color: #fff; - text-align: center; - font-size: 1.5em; -} -.download-button { - display: inline-block; - padding: 10px 20px; - margin: 10px 0; - background-color: #03a9f4; - color: #ffffff; - text-align: center; - text-decoration: none; - border-radius: 5px; - transition: background-color 0.3s; + background-color: var(--color-neon-green); } /* Style for user messages */ @@ -161,36 +31,6 @@ a:hover { flex-direction: column; height: 100%; background-color: #1a1a1a; -} - -/* Responsive design adjustments */ -@media (max-width: 768px) { - .content { - flex-direction: column; - align-items: center; - } - - .button-container, - .input-area { - flex-direction: column; - align-items: center; - } - - .input-field, - .submit-button, - #startButton { - width: 100%; /* Full width on smaller screens */ - margin: 10px 0; /* Add vertical spacing */ - } - - .chat-header { - font-size: 1.5em; /* Smaller text size for smaller screens */ - } -} - -/* Further responsive adjustments for even smaller screens */ -@media (max-width: 480px) { - .chat-header { - font-size: 1.2em; - } + overflow: auto; + max-height: calc(100vh - 20vh); } diff --git a/neon_iris/templates/index.html b/neon_iris/templates/index.html index 3d008f7..de9fee5 100644 --- a/neon_iris/templates/index.html +++ b/neon_iris/templates/index.html @@ -1,42 +1,84 @@ - + - + {{ title }} - - + + + + - -
-
- {{ description }} + + +
+
+ {{ description }} +
- -
-
+ +
+
-
-
- - + +
+ +
+ + + + + + + + + + - - - - - - - - - - diff --git a/neon_iris/version.py b/neon_iris/version.py index d495d3e..f67d04b 100644 --- a/neon_iris/version.py +++ b/neon_iris/version.py @@ -27,4 +27,4 @@ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -__version__ = "0.1.1a2" +__version__ = "0.1.1a3"