Action Bar
- 23 Devlogs
- 63 Total hours
An application that lets the user quickly run extensions and open apps with as few button presses as necessary.
An application that lets the user quickly run extensions and open apps with as few button presses as necessary.
Added an Icon to the app, fixed a hundred different bugs, added a fallback for the duckduckgo extension, and added the extension descriptions to the help menu
I added an icon its very simple, and definitely subject to change, but now it does not have the default electron icon in the task bar.
The duckduckgo extension uses their quick search API, which returns a JSON, in which the answer sometimes is in JSON.abstract and sometimes JSON.relatedTopics[0].text Now the extension looks in both places and returns the most relevant answer.
I recently added descriptions of the extensions in their metadata so now on the help tab you can get small descriptions of each one.
Sorry about how their have been no videos but it has all been fixing a lot of small bugs most of which don’t even make it into the dev-log.
Added start on boot and safer extension marketplace.
The app will now set itself up so if in settings you enabled start on boot the app will automatically start itself when you boot up your computer.
The way extensions work is all the extensions listed have a GitHub repository linked so when the user downloads the extension they download it off the repository, but the developer can change the GitHub repo so after it is accepted as safe the developer can change that without any warning. So now we grab from a specific point on the git tree. However even still the Dev can change the history so we check that the commit hash matches the stored hash meaning the developer cannot change their extension after approval
Sorry for the lack of videos again its really a backend change
I added an auto update code and added metadata to extensions
Before I added this code a user would have to delete the current code, and reinstall the application from GitHub. However this code will automatically detect and update the app on the users machine.
This allows for extensions to give data about them to the extension marketplace giving users a better idea of what they are downloading.
Sorry for the lack of videos, it was really a backend change
I added aliases and Improved the search.
Aliases are a user configurable feature that allows the user to type /<Shorthand> which will immediately be turned into some text. For example instead of writing “Google chrome” I can type /google which will be converted to Google Chrome Users can configure as many of these as they want.
On the first ship I got complaints that the search did not always return an answer when asked questions. For example Where is Canada would return an invalid answer whilst Canada returned a valid answer. I added a fallback to make these scenarios less common.
Improved fonts and spacing, improved opening apps, shows the icon of the app. I also improved the calculator
I was just using the default fonts earlier because I am not very creative, but I decided to change it to Inter and Consolas.
Earlier to determine the apps the user has installed as a temporary solution I just scrapped their desktop. But that did not return everything, and I finally fixed it I tried a bunch but the that worked for me was using some commands through power shell. That gets all the apps that windows knows about.
Now the program will show the user the icon of the app they want to open. there are three different kinds of app Id’s in windows and I have to assess their photos differently for each, which added alot of complexity and is the whole reason this devlog took so long.
The calculator has a few improvements the first being it now has the constants pi and e baked into it. It can also now do square roots and trigonometric functions. The trigonometric functions are interesting because they can be done with radians or degrees if the user types sin(90deg). It will use 90 degrees instead of the default being radians.
I added a list extensions feature, added extension specific settings, and removed a few nasty bugs.
All it does is when you press ? it will list all the extensions and you can just select the one you want from there.
The settings page used to just have settings for the app now under the extensions tab will have extension specific settings that the dev of the extension can use.
I made a far better readme.md file, and I added documentation for making your own extensions and pipelines
I added very specific documentation for making your own extensions and pipelines. I don’t recommend making your own pipeline, because that is still in early development, but if you don’t have a stardance project yet I would absolutely recommend trying to make your own extension. It is difficult the first time but pretty easy afterwards.
I finalized details for easy install and using it for the first time. Simple things like improving the functionality with the tray (the bottom right icons).
Whenever you want to open it you can either press Alt + Z or open the tray and press the icon see the image below for an example.
I did a lot and forgot to make Dev logs. I allow for the user to download extensions made by anyone to add to the website. And added a feature called pipelines.
Anyone can make an extension and post it on Github, following the correct format if their extension is not listed you can put the username/extension_name in the text box above. When you restart the app the extension should be downloaded.
Pipelines let users without any code pipe extensions together so If I have a google translate and a search extension I can pipe them together. so that the result of the search is then translated.
Improved several answers a lot. Added selector for which answer the user wants to interact with. And added a simple settings screen.
The settings screen is temporary, but allows users to quickly change and save app settings.
When multiple answers are present one of the answers will be highlighted the user can change which one is highlighted simply using the arrow keys. And when pressing Enter or Tab. They will call that extension.
The new implementations allows for extensions to better manipulate their specific answer. And gives users a better amount of control through settings over the apps functionality.
I added a color picker and allowed for several tools to output at once.
Can use an eyedropper of the screen behind the interface or select from the color wheel.
You can also just write out hex codes or RGB
The main process can now handle and may call several extensions at once. The output order is determined by the order the main process calls the extensions, with an exception for asynchronous functions which get resolved upon completion. Still fixing small errors here and there in the system and may make a more intelligent main process
Added an image viewer into the file explorer, added a copy button and improved file explorer functionality
The file explorer now will show a preview image if it the target file is an image.
The file explorer can also now take in a folder in which the target file is in and uses a search that allows for skipping folder in case the user forgets a folder inbetween.
It just copies the result text into the users clipboard
Added autocomplete for which action should be completed and added a music player. All extensions are now properly formatted, and no exceptions are given out.
I found it a little difficult to quickly remember and spell out the extensions names but now I only have to type the first few letters and the app will give options for what the extension could be.
Just opens the requested song in YouTube music.
Added a GitHub and Duckduckgo extension so search does not have to be based on Wikipedia. The GitHub extension is made to quickly search for repos and users, however the API used has somewhat strict rate limits, but for occasional searches it should work fine. The DuckDuckGo or the dgg extention is just a search feature
Added more settings, added an app opener and added a file explorer. The
file explorer and app opener used to be separate but I made them the
same to simplify the users experience because I think that is what the
application will be used for the most. They both work pretty well the file explorer can only fetch files a limited range of files it can use files in downloads, desktop, documents, music, videos, etc, can’t look for system level files and whatnot though. Added way more settings so you can change what the default tool it should use is if it can’t find a good one to use. Updated the readme for proper credit, and a bunch of other small things. I also made it compatible with several screens.
I switched to an extension based thing. So anyone can make their own extensions for the app. The picture is of a JSON that has the data for all the extensions at the moment. I tried making the frosted glass look by adding random noise but I was not able to make it work.
Added settings.json, the ability to open apps, and continued to attempt a frosted glass look. Settings.json will now allow for more customization. The ability to open apps is kind of the whole point its to avoid windows weird search bar thing that’s slow and not great to use. And after doing more looking into the blur effect it looks like the only way to do it is to have some js take screenshots of whats behind the page and then save that png and load it under the transparent thing than use the blur filter but, it seems slow, complicated, and not great for cross platform, so I am still looking for other solutions
Added a search feature. The feature just looks up what is currently in the search bar. Unfortunately the search feature uses Wikipedia’s API, which does make it much faster, than a bot crawling through google. But is susceptible to misinformation. I don’t think this is a massive problem because I am only taking the first sentence of the article. But I may look into alternatives in the future.
added a timer to the thing, you also can instead of relying on autodetect to figure out what action you want to take you can say @tool_name instead where tool_name is the tool you are calling
added conversions to the app and a global shortcut to open the app I decided on Alt+Z for the shortcut because I don’t have that mapped to anything right now and the two keys are physically close to each other. The conversion thing was interesting because there are a lot of different units for the same stuff, miles, inches, cm, km, etc. all measure length. I really did not want to make a table for every possible conversion, so I wrote a function that takes a table with enough conversions and uses that to fill out the blanks. For example if I know the conversion between ft and in and in and cm. I can solve for the conversion between ft and cm.
I improved the looks slightly improved the functionality of the calculator. I tried for more than half this time to make the blur working unfortunately it does not appear to be possible maybe doing something with JS canvases. But if I have to use something like that the amount of compute time won’t be worth it. So I decided against doing it until there is an easy way to do that.
Added glassy look and made a calculator app for the program. In the end I want an app that is completely transparent except for the results and search bar. Those should be tinted and blurred, but in electron the app I am using it is impossible to make a single element transparent through the apps behind it and blurred. I can do that for elements in my own app. Or the background for the entire app. So the search bar and results bar’s backgrounds are not blurred, which makes them hard to read over text.
Made a basic looking search bar that opens when you click a little icon in the corner of the screen, doesn’t do anything besides sit there yet. I am using electron and node JS for it.