Kanopi Code Test for Drupal 8 Developers

Welcome! Thank you so much for your interest in Kanopi Studios. This project is designed to showcase your plugin design approach and your knowledge of a few core features of Drupal 8.

The rules

  1. Please spend no more than three hours on this project. It's okay if you do not finish in that time; just make sure you provide a clear outline of what you have done, what is still to do, and any known issues.
  2. Please do your work in a fork of this repository.
  3. The timestamp of your last commit will be the cutoff time used. Any commits after the three-hour mark will not be considered as part of your submission.
  4. Please use Drupal 8 coding and documentation standards as defined in PHPCS.
  5. All files must be managed in a module.
  6. Your solution may not rely on a third-party module.
  7. Your work will be tested on a default Drupal 8 installation running the Bartik theme and using the standard Basic Page content type.
  8. Note that the API in the task has a rate limit of 10 requests per hour, so part of the challenge of the task is to store this in some fashion in order to complete the task.

The task

  1. Get the quote of the day using the public API from They Said So.
  2. Output the quote of the day at the bottom of all basic pages, below the main content. Use semantic markup.
  3. Display the meta information like tags, links, etc, in a semantically appropriate way.
  4. Use a standalone CSS file that is injected into the theme to format your output. Create a polished final product that works harmoniously with any standard theme.
  5. Ensure your solution meets the attribution and usage requirements for public consumption of this API.

Ideas for extra fun stuff 🎉

If you have extra time and want to show off, here are some ideas!

  • Quote category selection
  • Additional module configuration
  • Performance enhancements
  • Rate limit considerations
  • Unit testing
  • Build processes
  • Pre-compliers
  • Animations

Submitting your work

When you are ready to submit your work, please send a link to your fork repository to hr@kanopi.com, katherine@kanopi.com, and matthew@kanopi.com. Good luck! We are cheering for you! Ready... set... go! 🏁