MCPcopy Create free account
hub / github.com/AstroPrint/AstroBox

github.com/AstroPrint/AstroBox @0.21.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.21.3 ↗ · + Follow
3,867 symbols 11,842 edges 320 files 804 documented · 21% updated 4y ago0.21.3 · 2022-01-12★ 18062 open issues

Browse by type

Functions 3,300 Types & classes 419 Endpoints 148
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

AstroBox Software

The AstroBox software provides a responsive web interface for controlling a 3D printer (RepRap, Ultimaker, ...) and connecting to the AstroPrint cloud for easy 3D Printing anywhere. It is Free Software and released under the GNU Affero General Public License V3.

This project started as a fork of OctoPrint. Many thanks to Gina and all the great contributors there that made the AstroBox software possible.

Its website can be found at astroprint.com.

Reporting bugs

Our issue tracker can be found on Github.

Installation instructions

  • Create an bootable image using the images from AstroPrint

  • Download the source code to get a working copy:

    git clone https://github.com/AstroPrint/AstroBox.git
  

Additional (to run from source):

Ubuntu

  sudo apt-get install rubygems oracle-java8-jdk

Mac

  gem install rubygems-update

Download and install oracle-java8-jdk from here.

Ubuntu/Mac

  $ sudo gem install sass 
  $ sudo pip install -r requirements.txt
  • You can run the box from source like this:
    $ sudo service astrobox stop
    $ sudo python ./run --config /etc/astrobox/config.yaml --host 127.0.0.1
  

Setting up the virtual printer

The AstroBox Software comes with a handy virtual printer so that you can test without the need of a real 3D Printer attached. Here's how you can set it up

  • Edit or create, the printer-profile.yaml file in your settings directory (by default [AstroBox Directory]/local). Change or add the line:
  driver: virtual
  • Edit or create the virtual-printer-settings.yaml file in the same directory to guide your printing simulation. All values are in seconds. Here's a sample:
  connection: 3.0
  heatingUp: 5.0
  printJob: 10.0
  promppt:
    message: Your prompt message
    choices:
      - First choice
      - Second choice

Setting up development network driver

If you'd like the astrobox not to automatically connect to a network do the following:

  • Edit or create, the mac-dev-network.yaml file in your settings directory (by default [AstroBox Directory]/local). Change or add the line:
  autoConnect: False
  • Restart AstroBox any time you make changes to these files

Core symbols most depended-on inside this repo

Shape

Method 2,730
Function 570
Class 412
Route 148
Enum 7

Languages

Python94%
TypeScript6%
C++1%

Modules by API surface

src/astroprint/printer/marlin/comm.py128 symbols
src/astroprint/printer/__init__.py124 symbols
src/astroprint/plugin/providers/printer_comms/commands.py111 symbols
src/ext/pynetworkmanager/NetworkManager.py93 symbols
src/ext/makerbot_driver/s3g.py89 symbols
src/astroprint/webrtc/janus.py73 symbols
src/astroprint/static/js/lib/jquery.js73 symbols
src/astroprint/printer/marlin/__init__.py73 symbols
src/astroprint/api/settings.py65 symbols
src/astroprint/users.py64 symbols
src/astroprint/plugin/providers/printer_comms/__init__.py64 symbols
src/ext/makerbot_pyserial/serialutil.py62 symbols

For agents

$ claude mcp add AstroBox \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page