Project Hoverboard is the conference website template that helps you to set up mobile first conference website with blog, speakers and schedule management in a few minutes.
The template is created based on 7 years of GDG Lviv team experience of running conferences and feedback from more than 500 event organizers from all around the world who were using previous Hoverboard versions.
Our goal is to allow event organizers to set up professional conference website with minimum resources. To get started you need only basic knowledge of web technologies and a free Firebase account.
|Fast and optimized||91/100 PWA on Lighthouse|
|Works offline||shitty WiFi on the venue is not a problem anymore|
|Mobile first||layouts optimized for small screens, Hoverboard can be installed as a native app on your phone|
|Push notifications||remind about sessions in My schedule, session feedback or target users with a custom message|
|SEO optimized||index all content and get to the top in search results|
|Speakers and schedule management||keep and update all information in the Firebase|
|My schedule||let attendees save sessions they want to visit|
|Customizable theme||change colors to match your style|
|Blog||post announcements, updates and useful information|
- Fork repository and clone it locally
- Setup Environment
- Install Node.js (v8.9.4 or above)
- Install Firebase CLI:
npm i -g firebase-toolsor
yarn global add firebase-tools
- Install project dependencies:
- Create Firebase account and login into Firebase CLI:
- Update Hoverboard config and Resources
- Import initial data to the Firebase Database
- Go to https://console.firebase.google.com/project/%YOUR_PROJECT_ID%/settings/serviceaccounts/adminsdk
- Ensure that Node.js is selected and press GENERATE NEW PRIVATE KEY
- Save the file as
serviceAccount.jsonand to the root of your hoverboard directory (❗Do NOT commit this file to the public repository)
- [Optional] You can edit
docs/default-firebase-data.json)file using your own data
npm run firestore:initor
- Run locally
npm run serveor
- Build and deploy
npm run deployor
NOTE: By default command using configurations from
To serve locally or deploy the production app use
yarn serve:prod and
yarn deploy:prod respectively.
Docker-based development environment
If you don't want to bother with the dependencies, you can use the docker container for development.
Here is a git workflow for updating your fork (or downloaded copy) to the latest version:
git remote add upstream https://github.com/gdg-x/hoverboard.git git fetch upstream git merge upstream/hoverboard # resolve the merge conflicts in your editor git add . -u git commit -m 'Updated to the latest version'
- Polymer 2
- Service Worker
- CSS Grid
Awesome! Contributions of all kinds are greatly appreciated. To help smoothen the process we have a few non-exhaustive guidelines to follow which should get you going in no time.
Good First Issue
good first issue are a great way to ease into development on this project.
Help Wanted Label
Any other issue labeled
help wanted is ready for a PR.
Using GitHub Issues
- Feel free to use GitHub issues for questions, bug reports, and feature requests
- Use the search feature to check for an existing issue
- Include as much information as possible and provide any relevant resources (Eg. screenshots)
- For bug reports ensure you have a reproducible test case
- A pull request with a breaking test would be super preferable here but isn't required
Submitting a Pull Request
- Squash commits
- Lint your code with eslint (config provided)
- Include relevant test updates/additions
Code of Conduct
Read the full version Code of Conduct.
Most of the core team members, hoverboard contributors and contributors in the ecosystem do this open source work in their free time. If you like this project and it makes your life easier, please donate.
Project is published under the MIT license.
Feel free to clone and modify repo as you want, but don't forget to add reference to authors :)
GDG[x] are not endorsed and/or supported by Google, the corporation.