  
  [1X1 [33X[0;0YIntroduction[133X[101X
  
  
  [1X1.1 [33X[0;0YFrancy[133X[101X
  
  [33X[0;0Y[5XFrancy[105X  arose  from  the  necessity  of  having  a lightweight framework for
  building  interactive graphics, generated from GAP, running primarily on the
  web,  specially  in  Jupyter  ([7Xhttps://jupyter.org[107X) environments. An initial
  attempt  to re-use XGAP and port it was made, but the lack of a standardized
  data  exchange  format  between  GAP  and  the  graphics  renderer,  and the
  simplistic  initial  requirements  of  the  project  were  the basis for the
  creation  of a new GAP package. Take a look at [5XFrancy[105X functionality on these
  Jupyter Notebooks ([7Xhttps://mybinder.org/v2/gh/gap-packages/francy/master[107X).[133X
  
  
  [1X1.2 [33X[0;0YApplications[133X[101X
  
  [33X[0;0Y[5XFrancy[105X  has  potentially  many  applications  and  can  be used to provide a
  graphical  representation  of  data  structures,  allowing  one  to navigate
  through  and  explore  properties  or relations of these structures. In this
  way,  [5XFrancy[105X can be used to enrich a learning environment where GAP provides
  a  library  of  thousands  of functions implementing algebraic algorithms as
  well   as   large   data   libraries  of  algebraic  objects.  FrancyMonoids
  ([7Xhttps://github.com/gap-packages/FrancyMonoids[107X)      and     SubgroupLattice
  ([7Xhttps://github.com/mcmartins/subgroup-lattice[107X)  are  some  example packages
  using [5XFrancy[105X.[133X
  
  
  [1X1.3 [33X[0;0YFunctionality[133X[101X
  
  [33X[0;0Y[5XFrancy[105X  provides an interface to draw graphics using objects. This interface
  is  based  on  simple  concepts  of  drawing  and graph theory, allowing the
  creation  of  directed and undirected graphs, trees, line charts, bar charts
  and  scatter  charts. These graphical objects are drawn inside a canvas that
  includes  a  space for menus and to display informative messages. Within the
  canvas  it  is  possible to interact with the graphical objects by clicking,
  selecting, dragging and zooming.[133X
  
  
  [1X1.4 [33X[0;0YInstallation[133X[101X
  
  [33X[0;0YThis  package requires the [5XGAP[105X packages [5XJupyterKernel[105X, [5Xjson[105X and [5Xuuid[105X, all of
  which   are  distributed  with  [5XGAP[105X  by  default.  [5XFrancy[105X  requires  Jupyter
  ([7Xhttps://jupyter.org[107X)  to  be installed on your system. Please note that you
  need  to  run the installation commands from the same python version Jupyter
  ([7Xhttps://jupyter.org[107X)  is  installed on. Currently, [5XFrancy[105X is supported only
  on  Jupyter  ([7Xhttps://jupyter.org[107X)  Lab,  if  you  want to use it on the old
  Jupyter ([7Xhttps://jupyter.org[107X) Notebooks, please install the latest supported
  version:  v1.2.4.  In  order  to  install  or  update [5XFrancy[105X, please run the
  following   command   to   download   the   latest  version  available  from
  [7Xhttps://pypi.org/[107X:[133X
  
  [4X[32X  Example  [32X[104X
    [4X[28X      mcmartins@local:~$ pip install -U jupyterlab-francy[128X[104X
    [4X[28X    [128X[104X
  [4X[32X[104X
  
  
  [1X1.5 [33X[0;0YHow it works[133X[101X
  
  [33X[0;0Y[5XFrancy[105X  requires a rendering package to display graphics. [5XFrancy[105X provides by
  default  3  Renderers based on D3.js, Vis.js and Graphviz, for rendering the
  semantic  model  representations  produced by the GAP package. The renderers
  can be switched at any time using the user interface, by selecting 'Settings
  > Renderers' in the main menu. This library is distributed both as a browser
  module  and  as  a Jupyter ([7Xhttps://jupyter.org[107X) Lab extension. This library
  can  be  used  in Jupyter ([7Xhttps://jupyter.org[107X) Lab, using the [5XJupyterKernel[105X
  and  the  MIME  type  'application/vnd.francy+json'  to render the document.
  Please          check          the          JavaScript         Documentation
  ([7Xhttps://gap-packages.github.io/francy/doc/js/doc/index.html[107X)    for    more
  information.[133X
  
  
  [1X1.6 [33X[0;0YPublications[133X[101X
  
  [33X[0;0YICMS 2018 ([7Xhttps://doi.org/10.1007/978-3-319-96418-8_42[107X)[133X
  
