{"id":13991619,"url":"https://github.com/simon987/Much-Assembly-Required","last_synced_at":"2025-07-22T14:31:24.387Z","repository":{"id":16483740,"uuid":"109339072","full_name":"simon987/Much-Assembly-Required","owner":"simon987","description":"Assembly programming game","archived":false,"fork":false,"pushed_at":"2024-10-24T00:37:03.000Z","size":4719,"stargazers_count":943,"open_issues_count":34,"forks_count":89,"subscribers_count":40,"default_branch":"master","last_synced_at":"2025-05-22T23:09:08.152Z","etag":null,"topics":["assembly","game","mongodb","websocket","x86-16"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simon987.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-03T01:50:01.000Z","updated_at":"2025-05-16T04:51:38.000Z","dependencies_parsed_at":"2022-08-09T09:15:20.449Z","dependency_job_id":"9e5cd4bf-0a08-4559-b039-6ab8e00a513f","html_url":"https://github.com/simon987/Much-Assembly-Required","commit_stats":{"total_commits":335,"total_committers":43,"mean_commits":7.790697674418604,"dds":0.6328358208955224,"last_synced_commit":"ac374f5b525615da3ecb36b08cc5fc53ab73dc96"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/simon987/Much-Assembly-Required","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simon987%2FMuch-Assembly-Required","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simon987%2FMuch-Assembly-Required/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simon987%2FMuch-Assembly-Required/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simon987%2FMuch-Assembly-Required/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simon987","download_url":"https://codeload.github.com/simon987/Much-Assembly-Required/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simon987%2FMuch-Assembly-Required/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266510332,"owners_count":23940639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assembly","game","mongodb","websocket","x86-16"],"created_at":"2024-08-09T14:01:29.483Z","updated_at":"2025-07-22T14:31:23.648Z","avatar_url":"https://github.com/simon987.png","language":"Java","funding_links":[],"categories":["Java"],"sub_categories":[],"readme":"# Much-Assembly-Required\n\n[![CodeFactor](https://www.codefactor.io/repository/github/simon987/much-assembly-required/badge)](https://www.codefactor.io/repository/github/simon987/much-assembly-required)\n[![Build Status](https://ci.simon987.net/buildStatus/icon?job=Much-Assembly-Required)](https://ci.simon987.net/job/Much-Assembly-Required/)\n\n**Much Assembly Required** allows you to program the 8086-like microprocessor of a robot in a grid-based multiplayer world. The game is web based so no installation is required. In its current state, players can walk around the game universe and collect Biomass blobs and Iron/copper ore using the online code editor.\n\n![screenshot from 2017-11-12 13-01-43](https://user-images.githubusercontent.com/7120851/32701793-e5d07e98-c7a9-11e7-9931-f8db7b287994.png)\n\nWiki: [GitHub](https://github.com/simon987/Much-Assembly-Required/wiki)\nChat: [Slack](https://join.slack.com/t/muchassemblyrequired/shared_invite/enQtMjY3Mjc1OTUwNjEwLWRjMjRkZTg2N2EyNWRjN2YyMDc0YzIyMTUyYzFiNTBmMTU3OGQ1ZjA0MWY0M2IyYjUxZTA4NjRkMWVkNDk2NzY)\n\n# Deploying the server\n\n## Linux\n\n**Installing tools**\n\nOn Ubuntu 16.04:\n```bash\nsudo apt install git maven openjdk-8-jdk mongodb\n```\n\nOn Arch:\n``` bash\nsudo pacman -S git maven jdk8-opendjk\nyay -S mongodb-bin\n\n# Don't forget to start mongodb\nsudo systemctl start mongodb.service\n```\n\n*If needed, visit [yay installation](https://github.com/Jguer/yay#installation) and [troubleshooting mongodb](https://wiki.archlinux.org/index.php/MongoDB#Troubleshooting).*\n\n**Deploying server**\n\n``` bash\n# Obtain source files\ngit clone https://github.com/simon987/Much-Assembly-Required.git\n\n# Build\ncd Much-Assembly-Required\nmvn package\n\n# Run\ncd target\njava -jar server-1.4a.jar\n```\n\n## Windows (tested on Windows 10)\n\nInstallation instructions:\n1. Download the JDK from [here](http://www.oracle.com/technetwork/java/javase/downloads/index.html).\nInstall the JDK and update your PATH and JAVA_HOME environment variables.\n2. Download Maven from [here](https://maven.apache.org/).\nInstall Maven (following the README) and update your PATH environment variable.\n3. Download Mongo DB Community from [here](https://www.mongodb.com/download-center#community).\nInstall Mongo DB following the instructions [here](https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/).\nUpdate your PATH environment variable.\n\nBuilding instructions:\n```batch\n:: Builds the server\ncd Much-Assembly-Required\nmvn package\n```\n\nRunning instructions:\n1. In one Command Prompt window, run Mongo DB:\n```batch\n:: Runs Mongo DB\nmongod\n```\n2. In a second Command Prompt window, run the MAR server:\n```batch\n:: Runs the MAR server\ncd Much-Assembly-Required\\target\njava -jar server-1.4a.jar\n```\n\n## macOS (tested on Sierra 10.12.6)\n\n**Installation**\n\n1. Install [Maven3](https://maven.apache.org/)\n   -Add Maven bin to your path\n   ```bash\n   export PATH=/path/to/maven/bin.:$PATH\n   ```\n2. Install [MongoDB](https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/?_ga=2.201359831.774868398.1539369140-197602459.1539369140).\n   -Via Brew:\n   ```bash\n   #Update brew\n   brew update\n\n   #Install mongodb\n   brew install mongodb\n\n   #Install latest development release\n   brew install mongodb --devel\n   ```\n   -Via .tar.gz\n   ```bash\n   #Extract files:\n   tar -zxvf mongodb-osx-ssl-x86_64-4.0.3.tgz\n   \n   #Ensure binaries are in your path\n   export PATH=\u003cmongodb-install-directory\u003e/bin:$PATH\n   ```\nIf you do not wish to use the default data directory (/data/db), follow the steps for running MongoDB in the install doc.\n\n**Deploying Server**\n\n1. Begin MongoDB service\n   ```bash\n   #If brew:\n   #Launch on login\n   brew services start mongodb\n   #Or, if you don't want/need a background service you can just run:\n   mongod --config /usr/local/etc/mongod.conf\n   \n   #If binary:\n   mongod\n   #Optional, set data directory path:\n   mongod --dbpath \u003cpath to data directory\u003e\n   ```\n\n2. Deploy server:\n   ```bash\n   # Obtain source files\n   git clone https://github.com/simon987/Much-Assembly-Required.git\n\n   # Build\n   cd Much-Assembly-Required\n   mvn package\n\n   # Run\n   cd target\n   java -jar server-1.4a.jar\n   ```\n\n## Docker\n### Requirements\n\n1. [Docker Compose](https://docs.docker.com/compose/install/#install-compose) (and dependencies)\n\n### Installation\n\nOnce Docker and Docker Compose are installed, you can build and start\nthis application by running the following command inside this\napplication's directory:\n\n`docker-compose up`\n\nMake sure to change `mongo_address` in `config.properties` to `mongodb`.\n\n\n## Vagrant\n### Requirements\n1. [Vagrant](https://www.vagrantup.com/downloads.html)\n2. [VirtualBox](https://www.virtualbox.org/wiki/Downloads)\n\n### Installation\n\nWhen vagrant is installed, you can build and start this application by running the following\ncommand inside this application's directory:\n\n`vagrant up`\n\n# Running\n\nOnce the server is running, you should be able to connect to `http://localhost:4567` with your browser\n\n## VS Code Extensions\n- [Much Assembly Required (Upload on Save)](https://marketplace.visualstudio.com/items?itemName=tomhodder.much-assembly-required-upload-on-save) by tomhodder\n- [Much Assembly Required Language Support](https://marketplace.visualstudio.com/items?itemName=PJB3005.much-assembly-required-language-support) by PJB3005\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimon987%2FMuch-Assembly-Required","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimon987%2FMuch-Assembly-Required","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimon987%2FMuch-Assembly-Required/lists"}