Main repository for developing the 2025+ versions of GAMA https://gama-platform.org
  • Java 86.2%
  • GAML 7.4%
  • AGS Script 3.3%
  • GAP 1.8%
  • XSLT 0.6%
  • Other 0.5%
Find a file
Baptiste Lesquoy 0b8cf07ecd
Merge pull request #1071 from gama-platform/fixing-dataframes
Various dataframe improvements
fixes the compilation/verification errors caused by dataframe unit tests
fixes runtime errors caused by missing libraries in some cases
unifies the syntax with the rest of gama:
 - gets rid of the df_ suffix 
 - merges operators/statements with the ones already present in gama: save, file for loading, makes them usable with container operators like collect etc.
merges the example models into the new library structure
adds avro file support
extends the example models to cover all files and operators
uses dataframe as a return type of SPARQL operations
uses dataframe as a return type of database operations
adds the missing libs for some operations and fixes their export
2026-07-09 12:14:15 +07:00
.github bump(spotbug): Bump from 4.9.3.0 to 4.10.2.0 2026-07-08 09:21:41 +07:00
gama.annotations bump(spotbug): Bump from 4.9.3.0 to 4.10.2.0 2026-07-08 09:21:41 +07:00
gama.api [DF] better typing of column access 2026-07-09 11:49:14 +07:00
gama.core Merge pull request #1071 from gama-platform/fixing-dataframes 2026-07-09 12:14:15 +07:00
gama.dependencies fix(mvn): Add missing library for DF execution in compiled GAMA 2026-07-08 15:54:24 +07:00
gama.dev
gama.documentation
gama.extension.batch
gama.extension.bdi
gama.extension.database Merge branch 'main' into fixing-dataframes 2026-07-05 22:50:10 +07:00
gama.extension.fipa
gama.extension.image Revert "Fix Eclipse compile regressions in matrix operators" 2026-07-06 13:59:19 +07:00
gama.extension.maths
gama.extension.network fix issue #1124 2026-07-03 16:27:46 +07:00
gama.extension.pedestrian
gama.extension.physics
gama.extension.serialize refactor: clean up unused compiler settings and remove obsolete repository from POM 2026-07-06 09:54:34 +07:00
gama.extension.sound
gama.extension.stats update name 2026-07-07 08:24:28 -04:00
gama.extension.traffic
gama.feature.copilot
gama.feature.core
gama.feature.dependencies
gama.feature.devtools
gama.feature.extension.image
gama.feature.extension.sound
gama.feature.extension.stats
gama.feature.extensions
gama.feature.library
gama.feature.ui
gama.feature.ui.dependencies
gama.feature.ui.editor
gama.feature.ui.experiment
gama.headless fix(headless): extract full test folder tree so non-model resources resolve 2026-07-08 16:55:34 +07:00
gama.library Merge branch 'main' into fixing-dataframes 2026-07-06 14:42:25 +07:00
gama.p2site
gama.parent bump(spotbug): Bump from 4.9.3.0 to 4.10.2.0 2026-07-08 09:21:41 +07:00
gama.processor bump(spotbug): Bump from 4.9.3.0 to 4.10.2.0 2026-07-08 09:21:41 +07:00
gama.product
gama.ui.application
gama.ui.devtools
gama.ui.display.java2d
gama.ui.display.opengl fix issue #1124 2026-07-03 16:27:46 +07:00
gama.ui.display.opengl4 fix issue #1124 2026-07-03 16:27:46 +07:00
gama.ui.editor
gama.ui.experiment
gama.ui.navigator
gama.ui.shared
gama.ui.viewers
gama.workspace [FILES] changes the way of caching files to invalidate cache of files updated outside of gama 2026-07-07 10:04:39 +07:00
gaml.compiler Propagate test experiment state in descriptions 2026-06-30 21:02:35 +07:00
gaml.grammar
travis
.gitignore
CHANGELOG_2026.md
CODE_OF_CONDUCT.md
CONTINUITY.md
LICENSE
MIGRATION_GUIDE_2026.md
README.md
removing.gitattributes
ROSETTA.md

Official repository of the GAMA modeling platform

Continuous project validation Language GitHub issues Github Releases Documentation

CodeScene general CodeScene Average Code Health

This is the official repository of the GAMA platform, an open-source modeling and simulation environment for creating spatially explicit agent-based simulations.

See the changelog on the website for a detailed list of changes since version 1.9.0

Installing GAMA

Install a release

There's a detailed tutorial that covers all cases in the documentation, but for most user you can just go straight to the releases section of this repository and download the version that corresponds to your needs, we recommend you take a version bundled with a JDK.

Run it from the source code

To run it from the source code you can either use maven to build the program yourself, or run it from eclipse in case you want to inspect the code and/or modify it. In both cases you will first need to clone this repository and to get the Temurin distribution of JDK21.

Using eclipse

There is a more detailled explanation on the website about how to do so, here we will only give a fast and easy approach.

The highly recommended configuration for working on this branch is Eclipse for Java and DSL 2025-03, using a different version may expose you to some bugs.

Once you have imported the code base into your workspace, simply open the gama.product project and open either gama.headless.product or gama.product depending if you want to run gama with or without GUI. In the Overview pane of the file, click on Synchronize and then Launch an Eclipse application and GAMA should start.

Using maven

First install maven on your computer, then open a terminal at the root of project and follow those steps:

  1. go to the project gama.annotations
  2. run the command:
mvn clean install
  1. go to the project gama.processor
  2. run the same mvn command
  3. go to the project gama.parent
  4. run the same mvn command one last time

The produced release should be stored in the project gama.product under the target folder.

Reporting problems, bugs and issues

If you spot a bug or want to suggest an improvement to GAMA, please do so by posting an issue here: https://github.com/gama-platform/gama/issues.

If you noticed something wrong/not up-to-date or a lack of information on something on the website and the documentation you could create an issue on the website's dedicated repository here: https://github.com/gama-platform/gama-platform.github.io/issues

For general questions about modelling/development on GAMA you can either ask them in the discussions of this repository or on the mailing list

Contributing

There are a few tutorials explaining how to create new functionalities in gama that you can find in the developing extensions section of the website, and one general explanation of the architecture of the software and important types used in the section Introduction to GAMA Java API.

To contribute to the code you just have to submit a pull-request to this repository, if you encounter any problem to do so, feel free to ask about it either on the github discussions or the mailing list.

Acknowledgments

YourKit logo GAMA is actively supported by YourKit LLC, with its full-featured Java Profiler.