Following the recent release of Gephi Lite, an open-source web-based visual network exploration tool, we interviewed its developers about the background of the project, what they’ve done and future plans…
What is Gephi Lite?
Gephi Lite can actually be defined in two ways. The first definition follows the name we chose: Gephi Lite is a lighter version of the Gephi desktop software, targeting users who need to work on smaller networks with less complex operations in mind.
The second definition is more focused on the technical context: Gephi Lite is a serverless web application to drive visual network analysis. There are no more requirements than an internet connection and a modern web browser.
How did it come about? We understand that this is the culmination and coming together of several different projects and experiments in this direction. Can you tell us a bit about the background behind it?
People in and around the Gephi community have been developing ways to visualise and analyse networks on the web using one very efficient node-link visualisation JavaScript library: sigma.js. A few projects were developed to address different aspects of network analysis on the web:
- MiniVan: advanced exploration interface of an edited network
- ManyLines: a deprecated tool to storify a network exploration
- Nansi: a Gephi on the web proof of concept
- Retina: a edited-network publication tool
- Graph recipes: a network renderer scripting tool
While developing more and more web-based network tools, a set of TypeScript libraries were developed by Sciences-Po médialab to gain much better performance in memory management and ease reusability of common algorithms and renderers: Graphology.
Little by little the technical context of analysing networks on the web grew stronger and stronger. In 2022, we (the OuestWare team) thought that we reached a point where developing a web version of Gephi was now possible without too much of a hassle reusing bricks and experiences. So we joined the Gephi coding retreat to discuss this opportunity with the community and we all together agreed on the creation of Gephi Lite.
Who and what is it for? How do you envisage social, cultural and media researchers and students might use it?
Gephi Lite shines where users need to engage with a visual network analysis work without having arduous requirements either regarding network scales or regarding more advanced analysis/data manipulation features.
Thus it may be well aligned with the use cases of many social researchers and humanities scholars.
First as a teaching tool, as it lowers use barriers through minimal requirements (web browser, no desktop app to install) and a classical web user experience more common for lots of people than a specialised desktop app.
Second as a research tool, for many users and use scenarios this lighter version will suffice. It can handle many smaller scale studies at least as a preview before starting deeper analysis into Gephi.
Finally, as Gephi Lite is an open source serverless web application, it can be easily embedded into existing web based research tools to bring Gephi right in the research context with seamless file exchanges. Indeed Gephi Lite can open a Gexf file which is hosted somewhere on the web. So it’s technically feasible to add a “Open in Gephi Lite” button to an existing tool which can then load Gephi Lite with a custom Gexf file (e.g. in an iFrame or new web browser tab). That’s exactly what the Digital Methods Initiative in Amsterdam is working on with their 4CAT tool for social media research.
How can one learn to use it?
By using it!
Our ambition is to work more and more on the User Experience to make Gephi Lite usage as seamless as possible. Yet it might need some tutorials and guidelines at some point as it also targets users who are completely new to network visualisation.
This kind of documentation is something we (the Gephi community) need to work on.
How does it compare with other network visualisation tools out there?
We think Gephi Lite is quite unique in combining the following features:
- Works on the web
- Scales to thousands of nodes
- Has all necessary features for visual network analysis
- Free/Libre/Open Source
What has been involved in making network visualisation work on the web?
Lots of headaches!
But those were addressed before Gephi Lite development started. It’s precisely because we knew those issues were solved that we thought that we were ready to develop Gephi Lite.
But in a nutshell, the complexity of porting visual network analysis on the web is mainly due to the context of the web browser. Web applications are executed by users’ web browsers. If a desktop application needs to be compatible with users’ operating systems (Linux, MacOS, Windows…), web applications need to be compatible with web browsers (Firefox, Google Chrome, Safari…).
This brings lots of constraints to what can be done and what can be controlled by the code we write. We deeply rely on the standardisation of web technologies which ensure that the code will work with whatever web browser is used.
The key which opened scalable network visualisation on the web was the rise of the WebGL technology which brought GPU-accelerated frame calculation into web browsers. Thanks to WebGL (which is a nightmare to code), sigma.js could advance a renderer to depict graphs as node-link animations.
Another example is web-worker technology. Web workers are a way for web browsers to open new threads of computation in parallel to the main application. This is very important as it allows the running of long-lasting algorithms such as network layouts at the same time as updating network visualisations. Thanks to web workers we can depict how the layout evolves through time by animating the visualisation. But making layout algorithms work efficiently in a web worker is also a complicated story.
These topics have actually been discussed in more detail at FOSDEM 2019.
The team of people involved in Gephi Lite have been involved in various different projects to explore networks on the web – including in digital research, digital journalism, campaign groups, cultural projects and beyond. How have these experiences informed the project’s development?
Those past experiences were key to shaping Gephi Lite’s ambitions.
For instance one of the main ambitions behind Gephi Lite, on top of having a web version of Gephi, was to be able to draw a caption of the network visualisation one can produce. Indeed we know visual network analysis can be seen as a process of editing and reading maps from data. And we know that those maps need captions to be interpretable. That’s why we designed Gephi Lite to be data driven, i.e. the visualisation must be explicable by data attributes. This model is what makes Gephi Lite a little less like Gephi whose model is closer to pixel drawing software. That’s an important move and we hope the community will like it. Time will tell.
A related example: we know that when working with data we often stumble upon complex datasets which are not always as tidy as those using them would like them to be. In Gephi Lite we made sure that the user can decide how to handle missing or inappropriate values when mapping data to nodes/edges colours or sizes. This feature is very important to make sure people are not held back by messy data. It’s also key to supporting the “draw caption” objective we had, even when nodes have badly formatted data fields. We might still want to keep it and label it as “weird” cause those cases might provide directions for future inquiries.
What is the current status of the project? Who is behind it?
Gephi Lite is GPL-3 software controlled by the Gephi community. The current developer team is composed of the OuestWare company team Paul, Alexis and Benoît. We decided to develop Gephi Lite as part of our business time for free and as an open source contribution. We plan regular one-week development sprints to work on the project (every one or two months). So far our team of three has dedicated around 4-5 weeks to Gephi Lite development. We are committed to go on with the project for the coming months. We still have a long road ahead before reaching version 1.0.
What are you planning to do next?
- Handle rendering captions, and saving them in GEXF files
- Implement the partitioning system (to handle colours and sizes differently for different types of nodes, for bipartite networks for instance)
- Add a translation system, to allow translating and publishing Gephi Lite in multiple languages
- Improve Gephi Lite for mobiles and tablets
- Write more automated tests, fix more bugs
- Transform Retina into a Gephi Web Viewer…
What can we do to support the project?
- Test it! Use it! https://gephi.org/gephi-lite/
- Help on the translations as soon as we have enabled these
- Tell us about your experiences by publishing blog posts and reporting issues if you encounter troubles or have ideas for features: https://github.com/gephi/gephi-lite/issues
- Write and publish tutorials