On your marks, get set, hack! The first-ever Magnolia mini-hackathon, Dec 4th at 17:00.
Everyone with a "hack" idea makes a 2 minute pitch describing the project, the goal, and related technologies. Everyone then joins one of the projects to form teams of 2-6 people. You've got 3 hours to hack, eat pizza, and drink beverages. At 9pm, each team presents their results. The esteemed panel of judges chooses the winning project. There are prizes! Coaches from Magnolia will be on hand to help you with your projects.
What you need: A github account. A laptop. And either the Magnolia CLI or a Maven setup, ready to download Magnolia 6.
And bring your awesome idea for a hack. Or consider hacking on one of these proposed topics:
|17:15||Kickoff: describes the theme, timeline & rules.|
|21:30||Go home or Hack on.|
|Next Day at wrapup||Announce the winner - Give the prize.|
Proposed Topics - From Magnolia
Use the new Content Types and Delivery Endpoints to allow Content authors to manage content for interesting frontends - like Vue, Arduino, Alexa, etc.
Hack on the new Find Bar to Implement custom operations like "Create Virtual URI" or "Create website", or add custom search results from an external content source.
or Connect the Find bar to external content sources, to have it return external content in search results.
Periscope docs (contains info about relevant APIs and examples): https://documentation.magnolia-cms.com/display/DOCS60/Periscope+module
Hook up the DAM or other Magnolia content apps to AI-driven content auto-tagging web services.
Implement Auto-suggest and Auto-complete in a code editor by way of a Magnolia REST endpoint which exposes the Magnolia Registered templates, dialogs, apps, etc.
A few possible editors:
|Plugin Language||Getting started|
|IntelliJ||Java (using Gradle)||https://www.jetbrains.org/intellij/sdk/docs/basics/getting_started.html|
Possible Approach for Eclipse
- Checkout the existing Eclipse plugin for Magnolia.
- Using this as a guide we extend the existing YAML editor.
- Create a YAML template editor with property suggest features.
- Try and use the Development Tools module to create intellisense for the dialog property.
Dig into what you learned earlier in the days workshops.
Other topic Ideas
- Problems view
- A web page (or IDE panel) which shows the list of problems from the definitions app.
- XML config sources
- (just need to plug in parser logic and configure)
- Live Reload of Magnolia Admincentral
- Whenever I change a definition YAML file, the Admincentral instantly "reloads" to show the change.
Your Proposed Topics
Share your ideas here. Just edit this Wiki page.
App with Master/Detail View
GraphQL in Magnolia
GUI for Content Types
Use React to build a simple GUI to create and edit Content Type YAML files.
- Christopher Zimmermann
App to list internals of running webapp.
(At the hackathon you will receive necessary credentials for Enterprise version.)
For most ideas, we suggest you use a single-webapp setup based on Magnolia's default EE-pro-demo one. That is, copy this pom.xml and add custom dependencies as needed.
Also, make sure you have your maven configuration ready for pulling EE dependencies: https://documentation.magnolia-cms.com/display/DEV/Maven+setup
We've set up a temporary account with access to EE artifacts on nexus that will be deactivated after the conference.
CLI / Bundle download
Use the CLI to get Magnolia 6
And choose "magnolia-enterprise-pro-demo-webapp".
Use the CLI to start Magnolia
For instructions on installing the CLI, see:
You may use the following license:
- Each team create a wiki page under the public hackathon wiki page.
- Each team creates a github project for their code.
- Each team can create a room on our slack channel for their group. Chat on slack: "Mgnl Community".
Hackathon 2018 - Content types GUI
Hackathon 2018 - Find Bar
Hackathon 2018 - Headless
Hackathon 2018 - Magnolia IDE
We will fork the repos to our new community github account.
|Progress||How far did the team get? Is there something working at all?||15|
|Usefulness.||If completed, is this something people would actually use?||5|
|Technical style points.||It can be hacky, but is it a cool hack?||5|
|Presentation.||Is it convincing? Can you understand the "problem" and the "solution"?||5|
Content to hack on
Magnolia Tech Deck?