Add Drupal.org API talk
This commit is contained in:
parent
071c4bc963
commit
d8cb50130e
having-fun-drupal-8-drupalorg-api
Binary file not shown.
62
having-fun-drupal-8-drupalorg-api/notes.md
Normal file
62
having-fun-drupal-8-drupalorg-api/notes.md
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
# Having fun with Drupal 8, PHP libraries Drupal.org API
|
||||||
|
|
||||||
|
- Open slides
|
||||||
|
- Open Chrome tabs
|
||||||
|
- Open PhpStorm for all projects
|
||||||
|
- Open Sequel Pro for both DBs
|
||||||
|
+ Clear cache tables
|
||||||
|
- Start PHP server for each site
|
||||||
|
- Start recording
|
||||||
|
|
||||||
|
## PHP library
|
||||||
|
|
||||||
|
- Show in PhpStorm
|
||||||
|
- Show readme with examples
|
||||||
|
+ Run test.php
|
||||||
|
- Show query classes
|
||||||
|
+ Not drupal coding standards (PSR-2)
|
||||||
|
+ Explain laravel collections
|
||||||
|
- Show entity classes
|
||||||
|
- Show tests
|
||||||
|
+ Show fake query classes
|
||||||
|
- Run tests
|
||||||
|
|
||||||
|
## Project statistics
|
||||||
|
|
||||||
|
- Show /projects page
|
||||||
|
- Show routing
|
||||||
|
- Show ProjectController
|
||||||
|
+ Using PHP 7 return types
|
||||||
|
+ Explain dependency injection
|
||||||
|
+ Explain about collection
|
||||||
|
+ Explain render array
|
||||||
|
+ Show how to change ordering
|
||||||
|
- Show ProjectRetriever
|
||||||
|
+ More dependency injection
|
||||||
|
+ Show services file
|
||||||
|
- Show settings form
|
||||||
|
- Add another module (Sophie's simple integrations?)
|
||||||
|
+ See it loading on projects page
|
||||||
|
+ See it cached
|
||||||
|
|
||||||
|
## Drupalversary
|
||||||
|
|
||||||
|
- Show front page
|
||||||
|
- Show block
|
||||||
|
- Show block form
|
||||||
|
- Show accountretriever
|
||||||
|
+ Highlight caching
|
||||||
|
+ Services file
|
||||||
|
+ Show cached items in the DB
|
||||||
|
- Show routing
|
||||||
|
- Show UserController
|
||||||
|
+ More dependency injection
|
||||||
|
+ Services file
|
||||||
|
- Show date parser
|
||||||
|
+ Show drupalversary model
|
||||||
|
- Show adding own username via form
|
||||||
|
+ See it cached
|
||||||
|
+ Show adding uid via form
|
||||||
|
+ See it cached
|
||||||
|
- Show Dries' because this year drupalversary has passed
|
||||||
|
- Try with attendee ID
|
149
having-fun-drupal-8-drupalorg-api/slides.txt
Normal file
149
having-fun-drupal-8-drupalorg-api/slides.txt
Normal file
|
@ -0,0 +1,149 @@
|
||||||
|
autoscale: true
|
||||||
|
build-lists: true
|
||||||
|
footer-style: alignment(left)
|
||||||
|
footer: @opdavies | oliverdavi.es
|
||||||
|
header-emphasis: #53B0EB
|
||||||
|
header: alignment(left)
|
||||||
|
text: alignment(left)
|
||||||
|
text-emphasis: #53B0EB
|
||||||
|
theme: poster, 8
|
||||||
|
|
||||||
|
[.header: alignment(center)]
|
||||||
|
|
||||||
|
## Having fun with
|
||||||
|
## _Drupal 8_, _PHP libraries_
|
||||||
|
## and the _Drupal.org API_
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.background-color: #FFFFFF]
|
||||||
|
[.build-lists: false]
|
||||||
|
[.header: #111111]
|
||||||
|
[.text: #111111, alignment(left)]
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
- Full stack Web Developer & System Administrator
|
||||||
|
- Senior Developer at Microserve
|
||||||
|
- Part-time freelancer
|
||||||
|
- Acquia certified Drupal 8 Grand Master
|
||||||
|
- Drupal 7 & 8 core contributor
|
||||||
|
- Open source project maintainer
|
||||||
|
- Drupal Bristol and PHPSW co-organiser
|
||||||
|
- opdavies (Drupal.org, GitHub, Twitter)
|
||||||
|
- www.oliverdavi.es
|
||||||
|
|
||||||
|
^ Work at Microserve.
|
||||||
|
Maintain Drupal modules, PHP CLI tools and libraries
|
||||||
|
Talking about some open source project that I've written or in the process of writing.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.header: alignment(center)]
|
||||||
|
|
||||||
|
## _Drupal 8 crash course_
|
||||||
|
|
||||||
|
### PHP libraries, Unit testing,
|
||||||
|
### Composer, Routing, Services,
|
||||||
|
### Dependency injection, caching
|
||||||
|
|
||||||
|
^ Please feel free to ask questions as we go along!
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.header: alignment(center)]
|
||||||
|
|
||||||
|
## _Live Demo_ alert!
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### _Did you know that_
|
||||||
|
## Drupal.org has an API?
|
||||||
|
|
||||||
|
^ We're all familiar with Drupal.org (it's where everyone registered for this event), but did you know D.o has a public API?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### _A PHP library for the_
|
||||||
|
## Drupal.org API
|
||||||
|
|
||||||
|
^ The first thing I built was...
|
||||||
|
It's what the Drupal examples are built on top of.
|
||||||
|
Does everyone understand what I mean by a PHP library?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
- Retrieve _node_ and _user_ data
|
||||||
|
- Filter by properties
|
||||||
|
- Provides own entity classes
|
||||||
|
- Methods for retrieving common properties
|
||||||
|
- Reusable
|
||||||
|
- Unit tested
|
||||||
|
|
||||||
|
^ Re-usable by Drupal 7, Drupal 8, Symfony, Laravel etc
|
||||||
|
Testing already covered.
|
||||||
|
Demo
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ composer require opdavies/drupalorg-api-php
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### _Displaying Drupal.org_
|
||||||
|
## project statistics
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.text: alignment(left)]
|
||||||
|
|
||||||
|
- Inspired by _spatie.be/en/opensource_
|
||||||
|
- Displays _downloads_ and _stars_
|
||||||
|
- Drupal 8 module
|
||||||
|
+ Configuration form to enter project IDs
|
||||||
|
+ Queries the API
|
||||||
|
+ Displays project information
|
||||||
|
+ Retrieved data cached locally
|
||||||
|
|
||||||
|
^ Demo
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### _When is your_
|
||||||
|
## Drupalversary?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.text: alignment(left)]
|
||||||
|
|
||||||
|
- When did you register on Drupal.org?
|
||||||
|
- Drupal 8 module
|
||||||
|
+ Enter a username
|
||||||
|
+ Queries the API
|
||||||
|
+ Displays information - next Drupalversary _date_ and _number of days_ until, _number of years_ on Drupal.org
|
||||||
|
+ Retrieved data cached locally
|
||||||
|
|
||||||
|
^ Stored in cache tables, but could use a custom entity?
|
||||||
|
Demo
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
- oliverdavi.es/_talks_
|
||||||
|
- oliverdavi.es/_youtube_
|
||||||
|
- oliverdavi.es/_github_
|
||||||
|
- oliverdavi.es/_packagist_
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.header: alignment(center)]
|
||||||
|
|
||||||
|
## Questions?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[.header: alignment(center)]
|
||||||
|
|
||||||
|
# Thanks
|
||||||
|
### joind.in/_24044_
|
Loading…
Reference in a new issue