Skip to content

Commit

Permalink
Merge pull request projectmesa#484 from tpike3/master
Browse files Browse the repository at this point in the history
Correction to 9 March 18 feedback
  • Loading branch information
jackiekazil authored Mar 10, 2018
2 parents 9a1dcba + 139bf3f commit 7165638
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 206 deletions.
9 changes: 4 additions & 5 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,14 +76,13 @@ If you would like to add a feature, please reach out via `ticket`_ or the `email
.. _`Github` : https://github.com/projectmesa/mesa/
MESA Packages
Mesa Packages
--------------------------------------

`See a list of packages users have shared from their MESA ABMs <https://github.com/projectmesa/mesa/wiki>`_
ABM features users have shared that you may want to use in your model

If you have an agent behavior, landscape feature, analysis tool or other module fellow reserchers can benefit from when building their ABM, please share!

Learn more at :ref:`Mesa-Packages`
* `See the Packages <https://github.com/projectmesa/mesa/wiki>`_
* :ref:`Mesa-Packages`



Expand Down
38 changes: 23 additions & 15 deletions docs/packages/Package Development/package development main.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
Package Development: A "How-to Guide" for Developing Packages for Others to Use
================================================================================

The purpose of this page is to get your mesa package sharing as quickly as possible.
The purpose of this page is help you set up and distribute your Mesa package as quickly as possible.

This "How-to Guide" uses GitHub to walk you through the process. However, other repositories will be able to provide similar services.
This "How-to Guide" uses GitHub to walk you through the process. However, other repositories (e.g. Mecurial, Bitbucket, Beanstalk) will be able to provide similar services.

Package Development Checklist (basic): Sharing your package in seven steps
Package Development Checklist: Sharing your package in seven steps
----------------------------------------------------------------------------

**1. Take your package from your ABM and make sure it is callable from Mesa in a simple, easy to understand way**
Expand All @@ -18,25 +18,26 @@ Package Development Checklist (basic): Sharing your package in seven steps

**3. Using GitHub, create a new repository**

A. Name your repository
B. Select a license (not sure-- click the blue 'i' next to the i for a great run down of licenses)
C. Create a readme.md file (this contains a description of the package) see an example: `Bilateral Shapley <https://github.com/tpike3/bilateralshapley/blob/master/README.md>`_
A. Name your repository
B. Select a license (not sure-- click the blue 'i' next to the i for a great run down of licenses)
C. Create a readme.md file (this contains a description of the package) see an example: `Bilateral Shapley <https://github.com/tpike3/bilateralshapley/blob/master/README.md>`_


**4. COMMIT a requirements.txt to the repository**

- This can be created automatically from your python environment using the command:
- This can be created automatically from your python environment using the command:

.. code:: bash
.. code:: bash
pip freeze > requirements.txt
pip freeze > requirements.txt
- If using Anaconda install pip first

.. code:: bash
conda install pip
#if using Anaconda install pip first
conda install pip
.
- For more information on environments see the user guide: :ref:`user-guide`
- For more information on environments see the user guide: :ref:`user-guide`

**5. COMMIT a setup.py file**

Expand All @@ -49,10 +50,17 @@ Package Development Checklist (basic): Sharing your package in seven steps

**7. Let people know about your package on the MESA wiki page**

- `MESA Wiki Page <https://github.com/projectmesa/mesa/wiki>`_
`MESA Wiki Page <https://github.com/projectmesa/mesa/wiki>`_

Take Your Package to the Next Level
-----------------------------------

You want to do even more. The authoritative guide for python package development is through the `Python Packaging User Guide <https://packaging.python.org/>`_. This will take you through the entire process necessary for getting your package on the Python Package Index.

The `Python Package Index <https://pypi.org>`_ is the main repository of software for Python Packages and following this guide will ensure your code and documentation meets the standards for distribution across the Python community.





.. toctree::
Expand Down
176 changes: 0 additions & 176 deletions docs/packages/Package Development/package template.rst

This file was deleted.

4 changes: 2 additions & 2 deletions docs/packages/User Guide/user guide main.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ This "How-To" Guide is based on packages loaded into GitHub

2. Install the package(s) into your environment via pip and github

.. code:: bash
.. code:: bash
pip install git+https://<enter your clone url from git here>
pip install git+https://<enter your clone url from git here>
Expand Down
15 changes: 7 additions & 8 deletions docs/packages/package_main.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.. _Mesa-Packages:

Mesa Packages
==============
"How To" Mesa Packages
======================

*Bottom up models are virtual laboratories where controlled experiments distinguish noise from signal in the systems organization....
This approach may change our whole notion of scientific theory, which until now has been based on the theories of physics. Theories of
Expand All @@ -13,17 +13,16 @@ Mesa Packages



The Mesa core functionality is just a subset of what we believe researchers creating Agent Based Models (ABMs) will use. We designed Mesa to be extensible, so that individuals from various domains can build and maintain their own Mesa packages in pursuit of "unifying algorithmic theories of the relation between adaptive behavior and system complexity."
The Mesa core functionality is just a subset of what we believe researchers creating Agent Based Models (ABMs) will use. We designed Mesa to be extensible, so that individuals from various domains can build and maintain their own Mesa packages in pursuit of "unifying algorithmic theories of the relation between adaptive behavior and system complexity." (Volker Grimm et al 2005)

The purpose of this guide is to support new programmers by providing detailed guides on "How to" build and share a package. Let's get started!

You want create and share your package but have never done it before -- start here: :ref:`package-development`

You want to incorporate a package from a MESA user but don't know how--- try this: :ref:`user-guide`

`See links to shared Mesa packages <https://github.com/projectmesa/mesa/wiki>`_
Choose your adventure:
----------------------

* Learn how to create and share your package -- :ref:`package-development`

* Learn how to incorporate a package from a Mesa user into your model -- :ref:`user-guide`



Expand Down

0 comments on commit 7165638

Please sign in to comment.