Skip to content

TheJoeSmo/Foundry

Repository files navigation

Foundry

Actions Status Actions Status License GPL3 PyPI Downloads Code style: black

Purpose

Foundry is the all-in-one editor for modifying copies of the North American release of SMB3. We seek to streamline the game development processes to ensure that the nostalgic memories of Power Glove, Nintendo Power, and goomba stomping can be accessed and modified by all. We want to put the power into our favorite game and you the super player!

Installation

To install and use Foundry, there are four options:

  1. Download Foundry Executable

    This is the every-person method. Every minor and major release will prepackage the editor into an executable to run painlessly on your native machine. To get started, go to Releases and download the executable specific to your operating system.

  2. Download Foundry from PyPi

    This is the method recommended if you wish to run the project natively with Python. This may required if you use a 32 bit machine or an obscure operating system. It is also required if you wish to use Foundry in some combination with other Python packages. With Python installed, write pip install foundry-smb3 into your console and run foundry or run foundry.main.start from inside Python.

  3. Download Foundry from Github

    This is the developer method. This will provide you easy access to the entire repository. This will require Python. Once installed run the following commands into your terminal:

    $ git clone git@github.com:TheJoeSmo/Foundry.git
    $ cd Foundry
    $ pip install -r requirements-dev.txt
    $ python -m foundry.main
    
  4. Build Foundry in a Docker Container

    This is a secondary developer method. This provides a template to build and run Foundry on any machine. This will require Docker. Once installed run the following commands into your terminal:

    $ git clone git@github.com:TheJoeSmo/Foundry.git
    $ cd Foundry
    $ docker build -t foundry-dev .
    $ docker run -it --name foundry-dev --rm --volume $(pwd):/usr/src/app --net=host foundry-dev:latest sh
    

Documentation

All documentation of the editor can be found at Foundry Documentation.

Call for Contributions

Foundry is a community driven initiative that relies on your help and expertise.

Small improvements or fixes are critical to this repository's success. Issues labeled good first issue are a great place to start. For larger contributions WIP.

You do not need to be literate with programming to aid Foundry on its journey. We also need help with:

  • Developing tutorials
  • Creating graphics for our brand and promotional material
  • Translation
  • Outreach and onboarding new contributors
  • Reviewing issues and suggestions

If you are undecided on where to start, we encourage you to reach out. You can ask on our Discord or privately through email.

If you are new to open source projects and want to be caught up to speed, we recommend this guide

Important Links