Knightlab's StoryMap JS is a fantastic visual editor for interactive maps. One shortcoming, though, is that it doesn't allow for collaborative editing of the map. That's kind of a dealbreaker if you want to use it for team projects in the classroom.
This is a proof-of-concept for collaborative creation of StoryMaps, hosted by Github Pages. Because the StoryMap Javascript module populates its maps with data from a JSON file, you don't need to use the official Knightlab interface. All you need is a JSON file and a few lines of code in an index.html file. Put both in a Github repo and publish to Github pages. Then, teams can collaboratively edit the JSON file using any JSON editor. Each group can push changes to the JSON file to the repo. As soon as they're accepted into the Master branch, they appear on the published StoryMap page.
You can also host the JSON in a Github Gist, which might make it easer for team members to edit. Because JSON is very fussy, you should probably use JSONLint or JSON Blob to verify the validity of the formatting.
- Clone this repo
- Edit index.html with the correct name of your JSON file (or...)
- Start editing the demo.json file with your own StoryMap material
- In the project settings, publish to Github Pages
- Demo StoryMap
- Demo JSON in a Gist