Skip to content

Commit

Permalink
docs: fix typo + better installing page
Browse files Browse the repository at this point in the history
  • Loading branch information
maximelucas committed Sep 1, 2024
1 parent c188cb1 commit 1d38d71
Show file tree
Hide file tree
Showing 4 changed files with 84 additions and 11 deletions.
7 changes: 7 additions & 0 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -172,10 +172,17 @@
"url": "https://twitter.com/xginets",
"icon": "fab fa-twitter-square", # Font Awesome icon
},
{
"name": "Mastodon",
"url": "https://mathstodon.xyz/@xginets",
"icon": "fa-brands fa-mastodon", # Font Awesome icon
},
],
}




html_sidebars = {
"**": ["sidebar-nav-bs", "sidebar-ethical-ads"],
"index": [],
Expand Down
14 changes: 7 additions & 7 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,23 +22,23 @@ The Comple\ **X** **G**\ roup **I**\ nteractions `(XGI) <https://github.com/xgi-
library provides data structures and algorithms for modeling, analyzing, and visualizing complex systems
with group (higher-order) interactions. It provides tools to:

* easily load and store higher-order networks in standard formats
* load and store higher-order networks in standard formats
* generate many random and non-random higher-order networks from models
* analyze the structure of higher-order networks with classic and state-of-the-art algorithms
* compute nodes and edge statistics in unified interface
* draw higher-order networks with intuitive customizations
* analyze the structure of higher-order networks with metrics and algorithms
* compute nodes and edge statistics in a unified interface
* draw higher-order networks


Higher-order networks generalize standard (pairwise) networks by allowing to encore higher-order interactions,
that is interactions between any number of entities. Collaborations or contagion processes are typical
Higher-order networks generalize standard (pairwise) networks by allowing to encode higher-order interactions,
that is, interactions between any number of entities. Collaborations and contagion processes are typical
examples where these higher-order interactions are crucial.
For more information about what higher-order
interactions are, see a `brief overview <higher-order.html>`_.

XGI is implemented in pure Python and is designed to seamlessly interoperate with the
rest of the Python scientific stack (numpy, scipy, pandas, matplotlib, etc). XGI is
designed and developed by network scientists with the needs of network scientists in
mind. Browse the `list of projects Using XGI <using-xgi.html>`_ to get an idea of what XGI can do.
mind. Browse the `list of projects using XGI <using-xgi.html>`_ to get an idea of what XGI can do.

Get started immediately by `installing XGI <installing.html>`_ and checking the `XGI in 1 minute <api/tutorials/getting_started_1.html>`_ tutorial.

Expand Down
23 changes: 19 additions & 4 deletions docs/source/installing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,42 @@
Installing
***************

To install and use XGI as an end user, execute

Installing the released version
===============================

To install XGI, execute the following in the command line:

.. code:: bash
pip install xgi
XGI was developed and tested for Python 3.8-3.12 on Mac OS, Windows, and Ubuntu.

Once installed, go directly to the `User Guides <user_guides.html>`_ to get started!

Installing the development version
==================================


To install for development purposes, first clone the repository and then execute
You can also install the development version, either to contribute or to get the latest (potentially unstable) upgrades without having to wait for a new release.
To do this, you need to first clone the repository and then pip install locally:

.. code:: bash
git clone https://github.com/xgi-org/xgi.git
cd xgi
pip install -e .['all']
If that command does not work, you may try the following instead
If the last line does not work, you may try the following instead

.. code:: zsh
pip install -e .\[all\]
XGI was developed and tested for Python 3.8-3.12 on Mac OS, Windows, and Ubuntu.
.. seealso::

For more installation options, see our `guide <installing_more.html>`_.

51 changes: 51 additions & 0 deletions docs/source/installing_more.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
.. _installing_more:

***************************
Installation instructions
***************************

pip installing with options
============================

You may wish to selectively install dependencies required for testing, developing, or building certain parts of the project.
The options are the following:

- ``benchmark``: Requirements needed to run the benchmarking notebooks
- ``tutorial``: Requirements needed to run the Jupyter Notebooks with the examples
- ``test``: Requirements needed to run the test suite
- ``docs``: Requirements needed to build the documentation (see the [docs](https://github.com/xgi-org/xgi/tree/main/docs))
- ``developer``: Requirements needed to format the codebase
- ``release``: Requirements needed to release new versions of XGI

You can install XGI with one or more of these options by running the following:

.. code:: bash
pip install xgi[option]
pip install xgi[option1,option2]
pip installing dependencies (without installing XGI)
====================================================

You may wish to install the dependencies without actually installing XGI itself. The following are the requirements files to do that:

- ``benchmark.txt``: Requirements to run the benchmarking notebooks
- ``default.txt``: Default requirements
- ``tutorial.txt``: Requirements for running the Jupyter Notebooks with the examples
- ``test.txt``: Requirements for running test suite
- ```docs.txt``: Requirements for building the documentation (see `../docs/`)
- ``developer.txt``: Requirements for developers
- ``release.txt``: Requirements for making releases

To install these dependencies, simply run

.. code:: bash
pip install -U -r requirements/{filename}
where the filename is one of the ones listed above. For example, to install the requirements necessary to run the test suite, run

.. code:: bash
pip install -U -r requirements/default.txt
pip install -U -r requirements/test.txt

0 comments on commit 1d38d71

Please sign in to comment.