Hackathon has ended.
SpeakerTools
Not close to finishing, but had a lot of fun! 🎉 Hope everyone had a great weekend!!
What it was supposed to be:
SpeakerTools was supposed to be a collection of a few tools for public speaking (timer, audience polls, etc).
What's working:
What it was supposed to be:
SpeakerTools was supposed to be a collection of a few tools for public speaking (timer, audience polls, etc).
What's working:
- creating / editing a "toolbox" for a presentation
- adding (& editing) audience poll questions to the presentation (be sure to ✓ check the "live polls" checkbox to access this feature)
- generating a separate link for audience
Hotwire features:
- Stimulus "sprinkles" like copy-to-clipboard, toggles, and a couple subtle scroll animations
- Turbo Frames to handle the modal for creating/editing a poll question and listing polls on presentation page
- Turbo Streams to broadcast poll changes to audience page [broken]
Just a heads up:
I didn't get to many of the Hotwire features I had planned 🤦♂️ (so it might not be too interesting), but you might be able to see where it was headed!
A few other warnings:
- the practice/start feature isn't set up, and there's a few other placeholder buttons on the audience page
- didn't start on the desktop layouts, mobile-only so far
- only tested on linux/android (might be a little wonky on different devices)
- lots of spaghetti lol
What went wrong?
This was my first hackathon experience - learned a lot of lessons, but had fun doing it!
What I'll try next time:
- get set on an idea before starting
- build out the core features -> then design -> then bonus features
- and maybe don't attempt while recovering from covid lol
Bread
Eastern Time (US & Canada)
![](https://secure.gravatar.com/avatar/cd3438dc2bfa9f2e3e194aa53568b790.png?default=mp&rating=pg&size=128)
Built with:
Rails / Hotwire
I got carried away trying to do things from scratch (and not doing them well lol)
** the screenshots below are in reverse order **
I got carried away trying to do things from scratch (and not doing them well lol)
** the screenshots below are in reverse order **
Application Screenshots
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZmM9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--fd5a8c953a82a1afa9be2ddf38b61b5add1cbd97/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%208.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZmc9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--aeb04a7853e4ba3a70dd7f978b677a61cfeca607/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%207.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZms9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--dfa05bbc6a677a4ef612c23408510109f5d8cff6/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%206.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZm89IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--ac6683a265fdafd85f8200c9932817d97a8f829b/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%205.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZnM9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--8caa6d60a1c44efe3e749ab9c3016fa0f57212a5/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%204.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZnc9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--469cd115767fcffed817374c3f5078a2e7194583/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%203.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZjA9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--80c8c2795c498d04758b910dd6fc59bf067a35d0/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%202.png)
![](https://railshackathon.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZjQ9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--97671d51ca5bc015fe95d97edc395d202ea2bb10/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RkhKbGMybDZaVjkwYjE5c2FXMXBkRnNIYVFMMEFXa0M5QUU9IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--717a738d23a1e593ae8f6c4c6fd471afd2a62d40/Screenshot%201.png)