Challenge Overview
Please note the submission, review, appeals timelines - this is a short challenge with strict deadlines.
Welcome back! This is the a repost of our second challenge in our series of Drupal challenges. This Drupal challenge focuses on building a Drupal module that allows importing GeoJSON data into a Google Mapping Layer.
Using GeoJSON data is a common use case in Drupal applications. There are several modules which allow viewing and creating maps on GeoJSON data such as:
View GeoJSON
Leaflet GeoJSON
Requirements
- The module will need to check that the imported data lays within a set of boundary coordinates (i.e.. Within the borders of a given county). The boundary coordinates must be configurable within the Drupal Admin.
- All data will have to be verified as legal GeoJSON. Any data which is not valid GeoJSON data must be logged and reported.
- Once imported, the admin user should be able to edit the Geo data.
- The module will need a standard Drupal module admin interface for reading a file with source data from the file system. The file must be stored on the local file system.
- Note: The purpose of the module is to let the client trigger periodic imports of updated mapping data and update the maps being used for various purposes such as borders for planning areas, private lots (exempt from various reporting systems), and so on..
Key Considerations
- The extension needs to be developed for Drupal 7
- The implementation must follow Drupal best practices
- All code must be well commented and must follow Drupal coding standards
- Ensure that admin privileges are respected and the implementation does not have any security loopholes.
- The extension should be scalable, so it works with a large GeoJSON files
Hosting
- Use the Acquia Cloud Free Tier for hosting/ testing
- We need to be able to see/demo from your link/submission!
Note for Submitters & Participants
Please note that all submissions should be judged based on the following criteria provided by the client:
- Adherence to Drupal coding standards
- Adherence to PHP coding standards
- The use of unit testing
- Use of Drupal’s standard administration functionality for configuration
- Innovative use of functionality including functionality beyond what is asked for
- Acquia Cloud link for testing
- Ease of installation using Drupal standards for module installation.
Final Submission Guidelines
- Submit the Drupal extension zip
- Submit a detailed Deployment and Verification Guide with screenshots explaining how to deploy your extension and how to verify the export, import features
- Submit a demo video (hosted on YouTube as unlisted video)
- Provide access to your demo Acquia Cloud account for verification