Planned Features
  • Widgets as mentioned further down.
  • Use some kind of database or json file to keep track of running widgets and their order.
  • Widgets can contain HTML, CSS, and JSON files (if it's more optimized)
  • Link lists use JSON objects that include the link, the icon, and the text to be displayed and correspond to href, src, and the actual string of text, respectively
  • Make widgets "draggable" by clicking and draging on each widget just like how you would do with a window on... Windows, or Mac and Linux and stuff
  • Customize widget window with color or backgrounds (or set by widget creator, always able to be overidden by user)
  • Launch or close widgets via some kind of launcher (probably toolbar/taskbar at the bottom like the macOS dock or other OS' "taskbars".
  • Skin scroll bars to work with the UI design.
  • If doing the above, make tile sizes from .25 up to 3. .25 and .5 is intended as icon/shortcuts on the grid, while 1-3 are for tile sizes of any dimension (3x1, 1x2, 2x3, etc...) and widgets would be designed to be responsive, similarly to how tiles display more info the larger it is.
  • Add the time to the top bar
  • Make the search bar function similar to Google Chrome's omnibox - if it detects website text, go to a website, otherwise go to a search engine (google at first, but customizeable afterwards)
  • Perhaps through electron, allow launching of programs through widgets/icons.
  • Add personal links: my personal user pages
  • Add links: communication (discord, telegram, gmail, etc - anything that is available through the web)
  • Search/url includes real-time results more expansive than what the omni-bar currently offers (unit conversions like now, but shortcuts similar to how google lists sub-pages.
DEBUG AND TESTING
Social/Communication
Financial
Entertainment
Minecraft
Health & Fitness
Food & Drink
My Personal Links
Changelogs
  • v0.0.9:
  • - Tested the process of working with JSON.
  • - Added more sites and stuff
  • -
  • v0.0.8:
  • - Created a debug app for initial JSON testing.
  • - Fixed a glitch where I never fully fixed the closing tag of the header - initially it was a form, and when I switched to a DIV, I forgot to change the closing tag. Because I'm inteilligent.
  • - Adjusted spacing for the newly-fixed divs.
  • - "Gracefully" fails when the user searches with nothing in the search box. lol.
  • - Added more links manually. One day it'll be actually functional and not just a "web page"
  • - I haven't gone insane. Yet.
  • - Removed Herobrine for the millionth time. Oh wait, this isn't Minecraft!
  • - Added icons for module titles.
  • - Added a rudimentary toolbar that shows up when hovering over a specific widget.
  • v0.0.7:
  • - Experimented with and removed the option for "mosaic" grid layout. Not going to work with this
  • - Added scroll bar to each widget!
  • v0.0.6:
  • - Made each "module" a fixed size for potential "app" or "widget" development.
  • - Added scroll bar to each widget!
  • v0.0.5:
  • - Added rudimentary Google Search Feature.
  • - Renamed service to "MyPortal".
  • v0.0.1:
  • - Initial creation of "MyLinks".
Clocks (DST On)
  • Eastern Time
  • Central Time
  • Mountain Time
  • Pacific Time
  • Hawaii Time
  • Alaska Time
Weather
Using the OpenWeather API, this widget will present the location and possibly time, independent of the "Clocks" widget, alongside the main feature: the current temperature/weather conditions. This would be an experiment with full-image backgrounds that may be able to be generated dynamically. This would mean transparent PNGs being layered to show the time of day, sky clarity (fog/overcast/clear/etc), sun/moon, clouds, rain, etc and may include animated image as well, if possible. May use clip art/real photos, or art for this. Another feature could allow the app to dock to certain parts of the UI, such as appearing in the topmost bar.
Twitter
Using the Twitter API, this widget will allow the user to run a simplified version of twitter in a small window. The intent is to allow a user to compose a tweet, access their settings, and view notifications, recent posts, and view their DMs. Initially this is all visual, and when clicked on would link to the appropriate page (DM page, timeline, profiles, etc), but soon the widget/app would be more self-contained to imitate these features.
YouTube
The YouTube API will be used to provide a mini youtube experience. Possibly drawing inspiration from the TV and Nintendo switch app designs, provide a simple UI that can still be feature-rich in all of the right ways (may be actually impossible). At it's core, the user can search, view notifications (if signed in), and watch videos within the widget, but easily open go fullscreen or jump to YouTube (this feature is best compared to how Discord allows people to watch YouTube videos inline).
Health
Using both the Garmin Connect API and MyFitnessPal Link APIs (and other potential APIs in the future), this app will allow an "at-a-glance" experience for the user. Initially, design this around my needs which at this time include calories burned, how many steps taken, how much water drank out of how much is needed for that day (MUST CONFIRM WITH DOCTOR, but possibly using the formula of [oz=(67%)w+12(e)] where oz is ounces of water, w is your weight, and e is 1 for every 30 minutes of exercise. May include other functions including quickly adding food through MyFitnessPal or other APIs, logging exercises, or even links to exercise tips/instructions/etc.
To-Do List
A simplified To-Do list, no integrations planned at this time, but simply lets the user add, re-order, cross off, and remove list items. Add features for icons to show priorities (may use a shortcut and just modify a "links" widget for this list for the base functionality of a list and icons).