diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..e43b0f9
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+.DS_Store
diff --git a/conduct-policy.md b/conduct-policy.md
new file mode 100644
index 0000000..b57b14c
--- /dev/null
+++ b/conduct-policy.md
@@ -0,0 +1,8 @@
+# Conduct Policy
+
+The Gerrit Community reserves the right to refuse admittance to, or remove any
+person from the summit premises at any time in its sole discretion.
+This includes but is not limited to attendees behaving in a disorderly manner or
+failing to abide by the Volvo Cars
+[Code of Conduct](https://assets.volvocars.com/~/media/ccs/shared/code-of-conduct/our-code--how-we-act.pdf)
+and [Code of Conduct for Business Partners](https://assets.volvocars.com/~/media/ccs/suppliers/code_of_conduct_business_partner_en.pdf).
\ No newline at end of file
diff --git a/images/gerritusersummit2019.jpg b/images/gerritusersummit2019.jpg
new file mode 100644
index 0000000..9c0872d
--- /dev/null
+++ b/images/gerritusersummit2019.jpg
Binary files differ
diff --git a/index.md b/index.md
new file mode 100644
index 0000000..740527f
--- /dev/null
+++ b/index.md
@@ -0,0 +1,31 @@
+# Gerrit User Summit 2019
+
+## The Gerrit Community gets together
+
+The Gerrit Community is happy to announce the Gerrit User Summit & Hackathon 2019,
+THE event of the year for everything related to Gerrit Code Review and the
+trunk-based development pipeline.
+
+## Where
+
+The Gerrit User Summit & Hackathon is hosted by [Volvo Cars at their HQ in Gothenburg
+(Sweden)](https://goo.gl/maps/rsjB5vsFXE2tQ5i6A) in cooperation with [GerritForge](http://www.gerritforge.com) and the [Gerrit Community](https://groups.google.com/forum/#!topic/repo-discuss/uVQbBOC9IeU).
+
+## When
+
+The event starts with a 5-days Hackathon 24-28th August reserved for the current
+Gerrit contributors and maintainers plus anyone that is willing to start contributing
+to the platform.
+
+It will then follow with a 2-days summit 29-30th August opened to all the members
+of the community or who is willing to learn and adopt Gerrit Code Review in their
+development process.
+
+The registration for the Hackathon and the User Summit is opened to
+everyone, prior registration on [EventBrite](https://gus2019.eventbrite.com).
+
+## Why a Gerrit User Summit is back to Europe?
+
+Starting from 2017, we promised to get in touch with a *wider and more diverse community*,
+and, as promised, we are keen to listen to all Gerrit Users around the world, including
+those located in Europe.
\ No newline at end of file
diff --git a/location.md b/location.md
new file mode 100644
index 0000000..6a8db1a
--- /dev/null
+++ b/location.md
@@ -0,0 +1,69 @@
+# Gerrit User Summit 2019 - Location
+
+## Hosted by Volvo Cars
+
+The User Summit is hosted by Volvo Cars in [Volvohallen](https://goo.gl/maps/HWHd11EkEP6YPAjD7).
+
+See below the full address of the location:
+
+```
+Volvohallen
+Volvo Cars HQ
+Gunnar Engellaus väg 2, 418 78 Gothenburg
+Sweden
+```
+
+If you are coming by car, there is free parking available for the attendees of the Summit.
+
+## Check-in Instructions
+
+When you arrive at Volvohallen, please enter through the southeast entrance, which faces 
+the parking lot.  You will be greeted and can check-in and sign a basic NDA.
+
+You will receive at check-in:
+
+- The Gerrit User Summit conference badge
+- The Gerrit v3.0 celebration T-Shirt
+- Stickers to remember about the event and on Gerrit Code Review
+
+## Hotels and Places to Stay
+
+Volvo Cars has a special rate for this event at the [Gothia Towers](https://goo.gl/maps/rmRoQweSvVrAsPPw6),
+a 4-stars hotel in downtown Gothenburg.
+
+You can reserve directly your rooms using [this link](https://booking.gothiatowers.com/reserve/e/block/vcc230819/avail).
+
+## How to reach Volvo Cars from Gothenburg
+
+__By Car__
+
+From the Gothia Towers, it would take around 20 mins to reach Volvo Cars HQ.
+
+- Take the E6/E20 (Toll) road to E45/Oslo, stay on E6 onto Tingstadstunneln,
+  then keep left at the fork to continue on Lundbyleden, follow signs for
+  Route 155/Öckerö/N Älvstranden/Hamnar.
+- Use the right lane to take the Route 155 slip road to E6/E45/Hamn/Torslanda/Öckerö/Oslo/Karlstad.
+- Keep left to stay on Hisingsleden, follow signs for E45/Angered Volvo/E6.
+- Continue on Hisingsleden and then use the left 2 lanes to turn left onto
+  Assar Gabrielssons väg (signs for Volvo Torslanda).
+- Follow the road through a traffic light, and at the roundabout, take the 
+  first exit.
+- Keep left to Volvohallen.
+
+__By Taxi__
+
+Volvo Cars has a special deal with taxi service PM Logistik (http://www.pmlogistik.se/en/),
+we recommend groups at a hotel go together to share one.
+PM Logisitik can also provide rides from the airport into the city with a special rate
+(typically ~450 SEK, split fares are cheaper).
+
+## Facility Resources
+
+__Food and Drink__
+
+Lunch will be provided in Volvohallen during the Summit.
+Water and coffee will be available outside the main auditorium.
+
+__Internet__
+
+Wifi will be available to all attendees.
diff --git a/navbar.md b/navbar.md
new file mode 100644
index 0000000..4ce60e8
--- /dev/null
+++ b/navbar.md
@@ -0,0 +1,10 @@
+* [**REGISTER**](https://gus2019.eventbrite.com)
+* [Home](/index.md)
+* [Location](/location.md)
+* [Schedule](/schedule.md)
+* [Speakers](/speakers.md)
+* [Overview](/overview.md)
+* [Conduct Policy](/conduct-policy.md)
+
+[home]: /index.md
+[logo]: images/gerritusersummit2019.jpg
diff --git a/overview.md b/overview.md
new file mode 100644
index 0000000..b9489ba
--- /dev/null
+++ b/overview.md
@@ -0,0 +1,35 @@
+# What is Gerrit Code Review?
+
+Gerrit provides web based code review and repository management
+for the Git version control system.
+
+If you are new to Gerrit, you may read a [Quick Introduction](https://gerrit-review.googlesource.com/Documentation/intro-quick.html)
+directly from the Google-hosted documentation Gerrit web-site:
+
+> Gerrit is intended to provide a lightweight framework for reviewing
+> every commit before it is accepted into the code base. Changes are
+> uploaded to Gerrit but don’t actually become a part of the project
+> until they’ve been reviewed and accepted.
+
+# What is Gerrit User Summit?
+
+Gerrit User Summit is THE event for everything related
+to the Gerrit Code Review Community.
+
+The Gerrit User Summit is the place where all of major Gerrit users
+annually meet and exchange experiences and practices that foster the
+community with new and useful ideas.
+
+## Gerrit Community in Numbers
+
+Thanks to the [Gerrit Analytics platform](https://analytics.gerrithub.io)
+contributed by GerritForge to the project, we have from this year some real numbers about the
+project, automatically extracted from the Git commits and reviews on Gerrit.
+
+* 11 years of activity
+* 17 events in USA, UK and Germany
+* 650+ contributors worldwide coming from 170+ organisations
+* 183 releases
+* 180 repositories
+* 140 plugins
+* 41k commits
diff --git a/schedule.md b/schedule.md
new file mode 100644
index 0000000..363a167
--- /dev/null
+++ b/schedule.md
@@ -0,0 +1,50 @@
+# Gerrit User Summit 2019 - Schedule
+
+## Hackathon, 24-28th August
+
+| Time  | Session                                                 |
+|-------|---------------------------------------------------------|
+|  8:30 | Registration Opens, Breakfast                           |
+|  9:30 | Presentation of the hackathon topics, introductions     |
+| 10:30 | Coding                                                  |
+| 12:15 | Lunch & Networking                                      |
+| 14:00 | Coding                                                  |
+| 17:00 | End of the day                                          |
+
+## The User Summit, August 29th (Thu) to 30th (Fri)
+
+Introduction, intermediate and advanced sessions on Gerrit Code Review.
+
+### Thursday 29th August
+
+| Time  | Session                                                                                      |
+|-------|----------------------------------------------------------------------------------------------|
+|  8:30 | Registration Opens, Breakfast, Networking                                                    |
+|  9:00 | Welcome to Volvo Cars - KeyNote introduction                                                 |
+|  9:30 | What's new in Gerrit v3.0                                                                    |
+| 10:30 | Break & Networking                                                                           |
+| 10:45 | First-class Gerrit CI integration with Checks                                                |
+| 11:45 | Gerrit goes multi-site                                                                       |
+| 12:45 | Lunch & Networking                                                                           |
+| 14:00 | Prolog-less submit rules, easy and for everyone                                              |
+| 15:00 | Gerrit at Volvo Cars                                                                         |
+| 16:00 | Break & Networking                                                                           |
+| 16:30 | Using Zuul CI with Gerrit                                                                    |
+| 17:30 | End of Day 1                                                                                 |
+| 19:00 | Dinner - Celebrations for Gerrit v3.0                                                        |
+
+### Friday 30th August
+
+| Time  | Session                                                                                      |
+|-------|----------------------------------------------------------------------------------------------|
+|  9:00 | Breakfast, Networking                                                                        |
+| 10:00 | Gerrit Review Analytics applied to the Android OpenSource Project                            |
+| 11:00 | Community Retrospective - Part 1
+| 11:45 | Break
+| 12:00 | Community Retrospective - Part 2
+| 12:45 | Lunch & Networking                                                                           |
+| 14:00 | Gertty, console-based interface to the Gerrit Code Review system                             |
+| 15:00 | End-to-End Git/Gerrit testing with Gatling                                                   |
+| 16:00 | Break & Networking                                                                           |
+| 16:15 | Wrap-up and proposals for future Summits                                                     |
+| 17:00 | End of the Gerrit User Summit                                                                |
diff --git a/sessions/maintainers-qa.md b/sessions/maintainers-qa.md
new file mode 100644
index 0000000..34e4fb5
--- /dev/null
+++ b/sessions/maintainers-qa.md
@@ -0,0 +1,6 @@
+# Q&A with the Gerrit maintainers
+
+Meet the Gerrit maintainers and ask those questions that
+you've always been wanting to ask.
+
+* *maintainers TBC*
diff --git a/sessions/template.md b/sessions/template.md
new file mode 100644
index 0000000..396ae65
--- /dev/null
+++ b/sessions/template.md
@@ -0,0 +1,14 @@
+# Insert here your session title
+
+Describe your session in a few sentences (max 200 words),
+something like ...
+
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris
+feugiat libero leo, hendrerit interdum elit ornare eu. In sed
+nibh auctor, consectetur turpis in, interdum ligula. Nullam
+enim quam, imperdiet sit amet venenatis vitae, molestie at
+magna. Maecenas in posuere tellus. Morbi ut neque vel ante
+tristique elementum. Phasellus fringilla, turpis nec posuere
+feugiat, risus mi lobortis dolor, at consectetur orci dolor ut nunc.
+
+*[First Last Name, Affiliation / Company](../speakers.md#anchor)*
diff --git a/speakers.md b/speakers.md
new file mode 100644
index 0000000..5412dd9
--- /dev/null
+++ b/speakers.md
@@ -0,0 +1,21 @@
+# Gerrit User Summit 2019 - Speakers
+
+### Luca Milanesio - GerritForge {#lmilanesio}
+
+[LinkedIn](https://www.linkedin.com/in/lucamilanesio/)
+
+Luca is co-founder of GerritForge and has over 20 years of software development
+and application lifecycle management experience.
+He is a Gerrit Contributor for over five years and is the maintainer
+of [GerritHub.io](https://gerrithub.io), the Open Service for Gerrit Code Review
+on top of GitHub repositories.
+
+### Nicholas Mucci - Volvo Cars
+
+[LinkedIn](https://www.linkedin.com/in/nmucci/)
+
+Nicholas is a Technical Expert in Continuous Deployment and a System Architect
+for the Electrical Propulsion Systems group at Volvo Cars.  He has worked on
+modernizing software engineering processes using Gerrit and other CM/CI systems
+previously at Garmin and Apple and has been a member of the Gerrit community
+since 2009.
\ No newline at end of file
