Skip to content

docs: Clean-up index.md #2422

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Oct 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed docs/images/Mesa_Screenshot.png
Binary file not shown.
Binary file added docs/images/wolf_scheep.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
84 changes: 31 additions & 53 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,82 +13,60 @@
```

```{image} https://img.shields.io/matrix/project-mesa:matrix.org?label=chat&logo=Matrix
:target: https://matrix.to/#/#project-mesa:matrix.orgs
:target: https://matrix.to/#/#project-mesa:matrix.org
```

[Mesa] is an Apache2 licensed agent-based modeling (or ABM) framework in Python.

The original conference paper is [available here](http://conference.scipy.org.s3-website-us-east-1.amazonaws.com/proceedings/scipy2015/jacqueline_kazil.html).

Mesa allows users to quickly create agent-based models using built-in core components (such as spatial grids and agent schedulers) or customized implementations; visualize them using a browser-based interface; and analyze their results using Python's data analysis tools. Its goal is to be the Python-based counterpart to NetLogo, Repast, or MASON.


![A screenshot of the Schelling Model in Mesa|100%](https://raw.githubusercontent.com/projectmesa/mesa/main/docs/images/Mesa_Screenshot.png)


*Above: A Mesa implementation of the Schelling segregation model,
being visualized in a browser window and analyzed in a Jupyter
notebook.*
![A screenshot of the Wolf Sheep model in Mesa|100%](images/wolf_scheep.png)
*A visualisation of the Wolf Sheep model build with Mesa.*

## Features

- Modular components
- Browser-based visualization
- Built-in tools for analysis
- Built-in core modeling components
- Flexible agent and model management through AgentSet
- Browser-based Solara visualization
- Built-in tools for data collection and analysis
- Example model library

## Using Mesa
### Installation Options

To install our latest stable release (2.4.x), run:

``` bash
```bash
pip install -U mesa
```

Mesa >= 3.0 beta includes several installations options:
To install our latest Mesa 3.0 beta with recommended dependencies:

``` bash
```bash
pip install -U --pre mesa[rec]
```
**mesa[rec]** (recommend install) installs - mesa, [networkx](https://networkx.org/), [matplotlib](https://matplotlib.org/stable/install/index.html)
and [solara](https://solara.dev/)

### Other installation options include:

- **mesa[network]** installs mesa and [networkx](https://networkx.org/)
- **mesa[viz]** installs, mesa, [matplotlib](https://matplotlib.org/stable/install/index.html) and [solara](https://solara.dev/)
- **mesa[dev]** installs mesa[rec], [ruff](https://docs.astral.sh/ruff/), [pytest](https://docs.pytest.org/en/stable/), [pytest-cov](https://pytest-cov.readthedocs.io/en/latest/), [sphinx](https://www.sphinx-doc.org/en/master/man/sphinx-build.html#cmdoption-sphinx-build-e), [pytest-mock](https://pytest-mock.readthedocs.io/en/latest/)
- **mesa[examples]** installs mesa[rec], [pytest](https://docs.pytest.org/en/stable/), and [scipy](https://scipy.org/)
- **mesa[docs]** installs mesa[rec], [sphinx](https://www.sphinx-doc.org/en/master/man/sphinx-build.html#cmdoption-sphinx-build-e), [ipython](https://ipython.readthedocs.io/en/stable/install/kernel_install.html), [pydata_sphinx_theme](https://pydata-sphinx-theme.readthedocs.io/en/stable/),
[seaborn](https://seaborn.pydata.org/), [myst-nb](https://myst-nb.readthedocs.io/en/latest/), [myst-parser](https://myst-parser.readthedocs.io/en/latest/)

Then mesa[all] installs all these sub installation options:
**mesa[all]** = mesa[network,viz,dev,examples,docs]

For more help on using Mesa, check out the following resources:

- [Mesa Overview]
- [Mesa Introductory Tutorial]
- [Mesa Visualization Tutorial]
- [Mesa Examples]
- [GitHub Issue Tracker]
- [Matrix chat room]
- [PyPI]

## Contributing back to Mesa
### Resources

If you run into an issue, please file a [ticket] for us to discuss. If possible, follow up with a pull request.
For help getting started with Mesa, check out these resources:

If you would like to add a feature, please reach out via [ticket] or the [email list] for discussion. A feature is most likely to be added if you build it!
- [Mesa Overview] - Learn about Mesa's core concepts and components
- [Mesa Introductory Tutorial] - Build your first agent-based model
- [Mesa Visualization Tutorial] - Learn how to create interactive visualizations with Solara
- [Migration Guide] - Upgrade to Mesa 3.0
- [Mesa Examples] - Browse user-contributed models and implementations
- [GitHub Discussions] - Ask questions and discuss Mesa
- [Matrix Chat Room] - Real-time chat with the Mesa community

- [Contributors guide]
- [Github]
### Development and Support

## Mesa Packages
Mesa is an open source project and welcomes contributions:

ABM features users have shared that you may want to use in your model
- [GitHub Repository] - Access the source code
- [Issue Tracker] - Report bugs or suggest features
- [Contributors Guide] - Learn how to contribute

- [See the Packages](https://github.com/projectmesa/mesa/wiki)
- {ref}`Mesa-Packages <packages>`
The original Mesa conference paper is [available here](http://conference.scipy.org.s3-website-us-east-1.amazonaws.com/proceedings/scipy2015/jacqueline_kazil.html).

```{toctree}
:hidden: true
Expand All @@ -112,13 +90,13 @@ Mesa Packages <packages>
- {ref}`search`

[contributors guide]: https://github.com/projectmesa/mesa/blob/main/CONTRIBUTING.md
[github]: https://github.com/projectmesa/mesa/
[github issue tracker]: https://github.com/projectmesa/mesa/issues
[github repository]: https://github.com/projectmesa/mesa/
[github discussions]: https://github.com/projectmesa/mesa/discussions
[issue tracker]: https://github.com/projectmesa/mesa/issues
[matrix chat room]: https://matrix.to/#/#project-mesa:matrix.org
[mesa]: https://github.com/projectmesa/mesa/
[mesa overview]: overview
[mesa examples]: https://github.com/projectmesa/mesa-examples
[mesa introductory tutorial]: tutorials/intro_tutorial
[mesa visualization tutorial]: tutorials/visualization_tutorial
[pypi]: https://pypi.python.org/pypi/Mesa/
[ticket]: https://github.com/projectmesa/mesa/issues
[migration guide]: migration_guide
Loading