Giter Club home page Giter Club logo

arbre-integral's Introduction

L'Arbre Intégral

This repository hosts the source code of L'Arbre Intégral website, a digital poem by Donatien Garnier.

Made with Cycle.js with a Wordpress backend.

Note: The text of the poem is not available in this repository and has been replaced by random Shakespeare verses.

Poem architecture

Navigation in the poem

The poem is composed of 127 fragments and follows a binary tree structure. The reader starts at the poem root and choose one of its two childrens. At each node, he can navigate to one of its neighbors until there is no more fragment to read. A fragment already red is not available anymore as a possible navigation choice, it is replaced by the next neighbor in the same direction. Neighbors can be childrens, "brothers" (nodes at the same level), or a "parent" node (a parent, could in fact be a node on the opposite side if all ancestors of the current node have already been visited). The final node is fixed and cannot be visited unless all other nodes have been visited.

Map of the path

The path followed by the reader is graphically rendered on a map of the poem tree. A small version is always visible on the top right of the screen and is updated live. Clicking on this mini-map opens a panel with a larger map on wich is replayed the path evolution since the panel was last open.

When the reader is on a node of the third level, the map may rotate so that the current node is displayed on the upper half of the tree.

Code structure

  • src javascript sources of the main app, a Cycle.js single page application for exploring the poem and its visualizations.
  • www wordpress site
  • www/wp-content/themes/arbre-integral/ custom theme where the Cycle.js single page application build is copied
  • www/wp-content/plugins/arbre-integral/ custom plugin wich allows management of the poem contents and the generation of the final PDF documents.

Poem contents are stored in the www/arbreintegral.json JSON file (shakespeare.json on the gh-pages branch). The file name is defined in the src/setting.xxx.js file.

For a stripped down version containing only the Cycle.js app, whithout the worpress backend administration, please look at https://github.com/mmai/poemaze/ (demo: https://mmai.github.io/poemaze/ )

Credits

arbre-integral's People

Contributors

mmai avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.