[DEPRECATED THREAD] webCoRE design process

This thread has been deprecated as a result of webCoRE moving on through the development stages. Please use the latest Beta Milestone thread available here.

Due to limitations that CoRE hit during its development (base size code exceeding certain amounts that caused ST to refactor things left and right), it has become apparent that CoRE is too large. So work has been performed to move most, if not all, of the UI to an HTML5 platform. This brings several benefits, among which, speed (yey!), UI flexibility, the ability to backup pistons, to restore one or all pistons, privately/publicly share a piston, publish a piston as a template. Speed is one of the main gains here, with the HTML5 UI being able to cache all required data at load time, allowing the editing of the piston to be done “offline” from the ST point of view. No more slow UI.

Here are some very early preview screenshots of the UI, namely adding an action and one task. The “advanced options” are an expert mode feature. The execution mode clears up the “I put a wait in an action and a Turn on in the next action, but the wait doesn’t work”, etc. etc. making it simple: synchronous means the start of the next action will be delayed, asynchronous means the action won’t delay subsequent ones. But I digress…

I’ll be adding snapshots here and ask question, polls, etc. as we go. So keep an eye on this page. Wait, not that close, move back a little…

Here’s some snapshots:

And the same UI in a desktop browser:

Device selection in the mobile UI:

Device selection in the desktop UI:

There is no published version yet (well, there is, but it’s really way too early for that), I will add it here when it actually starts working - for now, we’re just learning to stand up.

UPDATE 3/18/2017: webCoRE can be found on my github, settings for github are ady624 / webCoRE / master
Please make sure you select both webCoRE and webCoRE Piston, tick the Publish and then remember to go to the webCoRE app in the IDE and enable OAuth. Then go to your ST app and install webCoRE the way you would any other app, follow through the setup process and then open the dashboard when done. Everything happens in the dashboard these days… :smiley:

NOTE: It is not required, nor necessary to donate to use this SmartApp. This is a free open source software and it is my way to pay my dues to those before me. But if you feel like it, you can donate here.

74 Likes

Looks super, Adrian! Incredible job!

…Terry.

2 Likes

Thank you. Any suggestions are welcome throughout the development process.

1 Like

Fantastic. I can hardly wait.

1 Like

AWESOME! :0 Keep up the good work.

1 Like

It will allow complex logic but I have to find a way to make this human friendly… the conditions below are bogus…

Nice! CoRE Extremely Streamlined!

1 Like

We need more steam for the steamlining. Oh wait, we be stReamlining…

1 Like

The Mockup doesn’t look hard to follow at all.

I love the idea of being able to work on my Linux desktop instead of this phone. My bifocals aren’t even working anymore. I end up having to work with my glasses off and the phone 5" from my nose. LOL

3 Likes

This is going to be amazing Adrian. Thx for everything that you do for our community. It’s truly appreciated.

3 Likes

OK … how about implementing the ‘break’ and ‘fall through’ in the SWITCH-CASE , LOL

I could’ve use ‘fall through’ to shorten some of my piston logic :slight_smile:

2 Likes

You got it. Maybe I’ll have a parameter in the case to enable that.

2 Likes

One feature that would be killer is the ability to backup pistons (or screenshots) to a Google drive, Dropbox, etc. account. I am not sure what the backup pistons process is your working on. Currently, I take a snapshot of her piston using the core dashboard site and upload it to Google Drive. It’s a manual process that would be really cool if it was automated somehow.

So far, backup to/restore from local filesystem, possibly looking into backing up to ST itself (by means of creating a backup smart app for storage purposes only - I will raise the question with ST on an approach here), or integration to GoogleDrive or other similar services. Remember, it’s (mostly) all JS with a JSON backend.

5 Likes

Hello @ady624, im kyle (uk based) i just wanted to say great work on the smartapp, its changed things massively for the community users and become a core essential smartapp (see what i did there :wink: haha) so great work - keep it up !!!

I just wanted to say by day im a graphic designer (by night a superhero) but anywayssss i said in a post on here well before core existed that if any developer ever needed graphic design assistance id offer my services free as my gesture of good will and contribution to the community as im appauling at coding haha

So if you need any icons / logos / ui designs etc to visually improve the new CoRE then feel free to private message me and we can sort something out, ive currently just submitted logos for the new action-tiles and open-dash projects and done tons of other bits and bats prior to this, id love to do more if you have any need for it :slight_smile:

10 Likes

Unfriggin believable! I’ll finally be able to break my pistons into multiple instances! Far too lazy to try it in the slow phone UI, but with web browser support?!?!?! OH YELL HA!

3 Likes

Hi @ady624, I’m a huge CoRE fan and couldn’t imagine how it could get any better… You found a way!!

Would it be possible to include existing piston migration or is that outside of ST possibilities?

Thanks and keep up the awsome work!!

1 Like

Also, the ability to have an action: "using {$currentEventDevice} " would be super useful… As we touched on a few weeks ago:

4 Likes

Smartthings version 3 hub… The ady624

Great job!

3 Likes

@ady624 Just sent a PayPal donation for all your awesome development for the community.

SmartThings should be paying you recurring royalties for all of their users that have benefitted from your “easy to use” application!

I haven’t had to write any new smartApps since CoRE. I have connected and automated so many more areas of my home not having to debug groovy based programs or settle for others coding.

I cannot wait to see the new HTML5 version!

7 Likes