These are chat archives for bespokejs/bespoke

29th
Sep 2015
Dan Allen
@mojavelinux
Sep 29 2015 05:04
Just published a simple little plugin to update the document title to match the slide title when a slide is activated.
That plugin implements behavior found in Shower and Reveal.js
Mark Dalgleish
@markdalgleish
Sep 29 2015 05:05
Oh, nice one
Love your work :smile:
Dan Allen
@mojavelinux
Sep 29 2015 05:06
Thanks!! I really love this modular approach to plugins. It actually helps generate a lot of ideas. I keep thinking of little plugins to add.
Mark Dalgleish
@markdalgleish
Sep 29 2015 05:07
And we never have to debate over what goes in core
That's the big reason I went this way
And i don't have to make my plugins too comprehensive because you can just fork it or write your own replacement
Dan Allen
@mojavelinux
Sep 29 2015 05:09
Exactly, that's the message I keep emphasizing to clients.
You'll have some big users soon. If all goes we'll, Neo4j (and hopefully DataStax) will switch to Bespoke.js for their training instead of deck.js.
Mark Dalgleish
@markdalgleish
Sep 29 2015 05:10
Oh cool!
That's great news
Dan Allen
@mojavelinux
Sep 29 2015 05:11
It's funny, when you see code in Shower that deals with a very specific presentation remote, then it's glaringly obvious that an optional feature like that should have been a plugin. Really helps understand how to recognize monolithic code.
Mark Dalgleish
@markdalgleish
Sep 29 2015 05:11
I learnt the hard way with Fathom.js
That was my first open source project
I realised over time that the core made some faulty assumptions, baked in features i didn't use anymore and didn't care to maintain
Dan Allen
@mojavelinux
Sep 29 2015 05:12
Already quite an impressive start...but just a foreshadow of the talents to come.
Exactly. And this way, you really leverage the "divide and conquer" of a community by having different maintainers for different parts. I think it's the model that builds the strongest communities.
I'm even rethinking the granularity for Asciidoctor now that I see how small core can be
62 non-blank lines is one hell of a small core...and almost guarantees it isn't the bottleneck
Another great example of how small and simple a plugin can be is bespoke-cursor, which just hides the cursor after a timeout. Imagine how much that debate would go on to try to figure out just the right settings for core. This way, take it or leave it.
Mark Dalgleish
@markdalgleish
Sep 29 2015 05:29
Yep :D
Another great thing is it makes it easy for Bespoke to remain useful, even if i stop working on it for a while
Your work is a great example
Dan Allen
@mojavelinux
Sep 29 2015 06:34
Indeed. Happy to carry that torch, then encourage others to follow suit
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:08
We have liftoff :rocket:
This message was deleted
Dan Allen
@mojavelinux
Sep 29 2015 07:16
Yeeha!
And I noticed that the gitter.im channel has automatically updated. :fist:
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:19
Yeah
Travis is giving me a bit of grief
the new repo isn't showing up in Travis yet
Dan Allen
@mojavelinux
Sep 29 2015 07:22
The Travis update jobs run every few hours. You can go into the settings and do a manual sync, which seems to kick off the remapping job.
In other words, it will fix itself eventually, but if you want it to go faster you may need to kick the vending machine.
Look for the "sync" button under your account organizations.
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:25
got it
:+1:
I had to explicitly grant access to the bespokejs org
Dan Allen
@mojavelinux
Sep 29 2015 07:28
Ah! Yes, that's a new permission thing that they added recently I think. That tripped me up too when it changed.
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:29
now coveralls is being a bit finicky
it hasn't picked up the repo move
Dan Allen
@mojavelinux
Sep 29 2015 07:35
Not sure if you've seen this yet. Bespoke emulating Shower. http://opendevise.github.io/bespoke-emulating-shower
I plan to eventually create a Ribbon theme for Bespoke so people can easily make presentations in that style...and to practice making a theme.
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:35
oh wow!!
that is so cool
that is really, really cool
Dan Allen
@mojavelinux
Sep 29 2015 07:36
:) The power of modularity. You're deck that emulates Reveal.js inspired me to make the Shower one :)
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:36
shows exactly why I made bespoke :D
Dan Allen
@mojavelinux
Sep 29 2015 07:36
DYI to the max!
I also have the print styles locally...just need to push them. Because we can easily emulate the print styles that Reveal.js and Shower use (which are basically the same)
I think it produces the best result, even more so than bespoke-pdf which uses a low-level PDF library....but good to have options.
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:37
you could bundle all the plugins and theme into a single plugin called bespoke-shower, bespoke-reveal, etc
Dan Allen
@mojavelinux
Sep 29 2015 07:38
Now that would definitely be an awesome way to get people to switch.
The overview for Bespoke is actually better than what Shower has because we use the screen width evenly.
However, I do need to add an option to fix the size of the slide and calculate the spacing dynamically (similar to flexbox)
I had tried with flexbox originally, but flexbox can't transition, so it turned out to be too limiting. I decided instead to calculate the positions.
The blurriness in scale in WebKit is really a drag, though. I wish they would fix that because calculating stuff for both scale and zoom is really, really a pain.
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:41
flexbox reimplemented in javascript
then it should be able to transition :D
Dan Allen
@mojavelinux
Sep 29 2015 07:42
Wow, that looks really interesting!
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:42
that's what they use in react native
Dan Allen
@mojavelinux
Sep 29 2015 07:43
I'll definitely start playing around with that in slide content and get familiar with it, see how I can put it to use.
I sure did learn a lot about CSS, transitions and transforms when doing bespoke-overview. It also taught me that you could spend a lifetime trying to think of all the ways to use CSS :)
Mark Dalgleish
@markdalgleish
Sep 29 2015 07:45
bespoke has been the primary outlet for letting me practice my CSS transition foo
really pays off when you're trying to make an app-like site
Dan Allen
@mojavelinux
Sep 29 2015 07:48
Definitely. It's the perfect playground to experiment.
One shortcoming I discovered when doing bespoke-overview is that there isn't a clear event as to when CSS transitions are complete.
You can be pretty sure, but not exactly sure.
That's because you get events when each one ends, but you never know if that was the last one or not. And you can't be 100% sure if they will fire at all (given certain timing scenarios)
I have some pretty crazy code in bespoke-overview to deal with this, and except for really strange edge cases, it works every time.
I guess I should say that that problem is, you don't get an event when the transition starts
if that were the case, then you could reference count
Dan Allen
@mojavelinux
Sep 29 2015 07:56
For those interested, Resonate, the book about presentations, is available online. http://resonate.duarte.com/
Naturally, seeing that book gives me ideas of plugins for Bespoke.js :)
@markdalgleish When you get a chance, could you look over the PR for fixing fullscreen in Firefox and give me your thoughts. bespokejs/bespoke-scale#9 I'm keen to steal that 1px back that Firefox is shorting us.
That should also fix any similar problem in other browsers as well, now or in the future. Fullscreen should be pure :)