google / physical-web

The Physical Web: walk up and use anything
http://physical-web.org
Apache License 2.0
5.99k stars 665 forks source link

Simple, lightweight CMS/Platform to make a PW site #722

Closed scottjenson closed 8 years ago

scottjenson commented 8 years ago

Some devs are finding the web side of things actually the harder part of deploying a set of Physical Web beacons. We're brainstorming here in the office on what would be the simplest way for people to whip up a simple site for say 4-20 beacons. Say for example exhibits in museum, or a buildings in a park. Nothing fancy, just some static content that shares a common style layout.

What occurred to us was that a simplified WordPress theme might just do that trick. Bonus points if it supported Progressive Web Apps. That way you could just fire up a blog, type in your content for each area and you'd be done. Nothing too earth shattering but very very simple.

Any one have any suggestions on how this could work? Any other alternatives?

sammdec commented 8 years ago

Yeah I think a simple cms solution would be the best bet, Wordpress is a good shout or any of the other static blog generators.

The mvp basically just needs stable url structures surely?

industrialinternet commented 8 years ago

Scott, been thinking the same thoughts for a while and have been working on a proof concept on Node-RED which uses a lite SCADA like approach base on Datapoints which hold meta, real-time and historic data on Sensors/Things. These can be rendered via widgets using {{Tags}} in HTML template. https://github.com/industrialinternet/ui-RED last two images are old screen shots have added a few more widgets since then but give you a sense of what I'm aiming for. When talking about this concept, I called it "A CMS-For-IoT"

itsMattShull commented 8 years ago

We created BeaconSage just for this reason. You can create quick pages through the CMS and manage your beacons all in one place. The beacon management is done using our redirect service aris.ai.

If anyone wants to try it out I can create a free 30 trail account that will allow you to create 1 page. Here's a demo of all the features that we currently offer when building pages on the platform: https://www.beaconsage.com/test-account-2/pages/fullcasual/. We're working on a number of other features that allow people to quickly create interactive experiences and allow visitors to see those experiences using beacons.

scottjenson commented 8 years ago

@derekshull that sounds ideal! I'll take a test account please... (scott@jenson.org)

@industrialinternet UI-Red sounds very cool for widgets/meters where you'd like to walk up to a device and get some value out of it.

scottjenson commented 8 years ago

@samjbmason yes exactly. We're looking for a range of solutions, from simple (like WP) to professional (like BeaconSage) to Maker-esque (like Node-Red) The motivation of posting this issue is to kick the tires:

itsMattShull commented 8 years ago

@scottjenson An email is headed your way!

sammdec commented 8 years ago

@scottjenson ah I see! I was actually in the process of building a very simple platform that would allow you too hook pages to shortened urls that would allow this. I had a thought of using Jekyll and GitHub pages and some kind of config file that could be used to easily setup new pages

scottjenson commented 8 years ago

@samjbmason Sounds fun! If you get something working, please share so others can try

pide2000 commented 8 years ago

Currently I think about an extension for Neos cms to manage Beacons and pages. (https://www.neos.io) The really great inline editing is a major advantage over wordpress.

kanodia commented 8 years ago

@scottjenson : I think AMP can be a great solution for it. Plus it will give the required performance as well

sammdec commented 8 years ago

I think the hardest part is how to quickly and effortlessly add the new urls to beacons. As most beacons and cms platforms are not partnered

itsMattShull commented 8 years ago

Built right, I don't think a platform or CMS needs to use AMP to get the performance necessary. Our BeaconSage demo, that includes all the features on one page, has a great TTFB, a speed index of around 1.8 seconds, and a page size of 1,300 kb https://www.beaconsage.com/test-account-2/pages/fullcasual/

While we could improve the page size, almost 500 in of it is the JS file from YouTube for the video embed on the page.

scottjenson commented 8 years ago

@samjbmason I agree this can be made easier but setting beacons, especially given the new GATT config service for Eddystone, is much easier. A simple first step would be a content platform that allows simple, short URLS. e.g. s1j.org/v1, s1j.org/v2, etc. BeaconSage has a partnership with BKON to make it very easy as you just have to type in the BKON id into the page creator.

@pide2000 neos looks interesting, but it requires a bit of setup to get going. I realize that's in many ways a trivial concern.

Here is what I'm thinking would be ideal:

I realize this is a long list. I'd settle for something simple to upload and serve through Github pages ;-)

scottjenson commented 8 years ago

@derekshull 1.3MB certainly seems large. I did just run Chrome Dev Tools on your page and you are clearly working hard on performance, even throttling to "Good 3G" your sample page paints in 1.5 seconds which is impressive given your page size. There's just something about a 500kb JS file (that you'd rarely use) that is irksome ;-)

BeaconSage seems to be starting with all the bells and whistles and moving down. I guess I was hoping for something that was, by default, a bit simpler and working up. If I just have a small image and some text for each building in the zoo, it would be nice to have each page be able to be small and light.

itsMattShull commented 8 years ago

Absolutely, we make small iterations as we go to make things smaller, faster, and easier. Small correction, we do not have a partnership with BKON. We are now using our own redirect service that provides short URLs for your beacon.

sammdec commented 8 years ago

@scottjenson liking your list of ideals, instead of redirection service I guess you could also potentially create a proxy assuming you knew the final url?

scottjenson commented 8 years ago

Not sure I follow. If this service is primarily a hosting service for content, there isn't any need for a proxy. Or am I missing something obvious?

sammdec commented 8 years ago

True but I was thinking if you could lean on another hosting service like GitHub pages or something similar and then create a little service to manage urls that you could upload to a beacon using web Bluetooth and the gatt service.

I feel like there are so many good hosting options out there already creating another one will just create lock-in.

scottjenson commented 8 years ago

I n t e r e s t i n g .......

You're suggesting a simple WebBluetooth page that could manage the URLs, analytics, and setting the beacons and just point to any-ol content out there. Given that WebBluetooth is now running on Mac Desktop (in Chrome Canary) this actually sounds very viable)

There are a lot of content options out there but most of them don't seem to really work well for this (Twitter, Facebook, Tumblr. G+. all have issues) I'm assuming you're talking about indie projects like Ghost or WithKnown? They actually ARE quite good now that I think about it, and flexible. It's just about the setup hassle at that point.

scottjenson commented 8 years ago

I've been scouting over the weekend to find any additional solutions that fit into this category. @tryghost by @erisds and friends is a blogging platform that meets nearly everyone of my listed items above. It's a fairly professional solution, at $29/month, but it is also open source so you're allowed to install it free on your own domain if you'd like to go solo.

In order to get a really short URL, you'd need to add your own domain, but that's included in the price.

sammdec commented 8 years ago

I agree with @scottjenson ghost is a great platform. I backed them on Kickstarter when they launched. Apart from getting your own domain the other hurdle I would potentially see is having very short page slugs after the domain.

It would also mean that the slugs you use would not be very decipherable when indexed by search engines.

scottjenson commented 8 years ago

Well, if you signed up for a short account name, your path w/slug could be https://s1j.ghost.io/p123 which just fits. However, as you said, at some point, you loose anything human, self describing. A short domain could be a bit better but you're not playing with lots of chars here.

With BLE5 coming out next year, this problem goes away but it'll take at least a year for it to roll out to most phones.

sammdec commented 8 years ago

Ah right that's interesting about ble5 I didn't know it would increase the number of chars. Well in that case sounds like we have a winner with ghost.

I guess we don't really need the proxy solution I had in my head. 👍

ErisDS commented 8 years ago

Hey 😬 Great to hear you guys are considering Ghost. Just wanted to clarify a couple of things about the $29 Ghost(Pro) service. It doesn't include the cost of a custom domain, but it does allow you to configure one. A quick email to our support team can also get you a redirect setup, so if you wanted /p123 to redirect to a blog post with a pretty url, that can be done. It's a manual precess for now, but for a handful of beacons that wouldn't be an issue?

sammdec commented 8 years ago

While I think Ghost is a great solution, I do wonder if there is some value in a CMS agnostic service that allows you to do the same thing, without having to make any changes to your CMS/site setup

ferencbrachmann commented 8 years ago

@scottjenson We've developed Beeem to solve this exact problem. You can try for free @ https://beeem.co Things we take care of:

nazimbeltran commented 8 years ago

We have just finished a major client presentation for a Trade Show setting using https://beeem.co and I have to say that for simplicity of use and deployment it is the best solution for creating/deploying to the physical web in a variety of options (info landing pages, coupon/promos, time related content, etc. Weare quite happy (plus the team at Beeem) have been super supportive.

scottjenson commented 8 years ago

Great discussion. As things have quieted down, I'm going to close this issue. Thanks for all your comments.