[DEPRECATED THREAD] webCoRE design process

( I hate Mondays) #1

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.

[RELEASE CANDIDATE] CoRE (Community's own Rule Engine)
New User - Should I have gone with VeraPlus?
New to SmartThings, What Do I Need to Know?
Backup/restore pistons?
Simple Notify - Water Valve
CoRE (SE) name
CoRE - Get peer assistance here with setting up Pistons
[RELEASE CANDIDATE] CoRE (Community's own Rule Engine)
[SHARE] CoRE - show & tell all about Pistons
[DEPRECATED Thread: visit community.webcore.co for assistance] webCoRE - Piston Design Help (ask your fellow members for assistance)
CoRE - Get peer assistance here with setting up Pistons
CoRE - Get peer assistance here with setting up Pistons
[DEPRECATED Thread: visit community.webcore.co for assistance] webCoRE - Piston Design Help (ask your fellow members for assistance)
Is there a Text Bot smartapp?
[DEPRECATED Thread: visit community.webcore.co for assistance] webCoRE - Piston Design Help (ask your fellow members for assistance)
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy) #2

Looks super, Adrian! Incredible job!


( I hate Mondays) #3

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

(Steve Jackson) #4

Fantastic. I can hardly wait.


AWESOME! :0 Keep up the good work.

( I hate Mondays) #6

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!

( I hate Mondays) #8

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

(Steve Jackson) #9

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

(Jay) #10

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


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:

( I hate Mondays) #12

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

(Marc) #13

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.

( I hate Mondays) #14

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.

Back up config?
(Kyle ) #15

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:

(Michael Hess) #16

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!

(Robin) #17

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!!

(Robin) #18

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

(Jason "The Enabler" as deemed so by @Smart) #19

Smartthings version 3 hub… The ady624

Great job!

(Kurt Sanders) #20

@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!