{"id":13338533,"url":"https://github.com/deadlyfingers/ARStudioAzureFunctions","last_synced_at":"2025-03-11T10:31:18.639Z","repository":{"id":91543514,"uuid":"141724059","full_name":"deadlyfingers/ARStudioAzureFunctions","owner":"deadlyfingers","description":"Azure Functions for AR Studio game","archived":false,"fork":false,"pushed_at":"2018-08-09T09:35:25.000Z","size":76,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-12-06T21:17:28.354Z","etag":null,"topics":["2player","arstudio","azure-functions","cosmos-db","mongodb","mongoose","nodejs","turn-based"],"latest_commit_sha":null,"homepage":"https://github.com/deadlyfingers/ARStudioGame","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deadlyfingers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2018-07-20T14:46:15.000Z","updated_at":"2018-09-26T10:31:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"ea7a42d0-8871-4cbc-b25f-378198bfa789","html_url":"https://github.com/deadlyfingers/ARStudioAzureFunctions","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deadlyfingers%2FARStudioAzureFunctions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deadlyfingers%2FARStudioAzureFunctions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deadlyfingers%2FARStudioAzureFunctions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deadlyfingers%2FARStudioAzureFunctions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deadlyfingers","download_url":"https://codeload.github.com/deadlyfingers/ARStudioAzureFunctions/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243015337,"owners_count":20222070,"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","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":["2player","arstudio","azure-functions","cosmos-db","mongodb","mongoose","nodejs","turn-based"],"created_at":"2024-07-29T19:16:28.912Z","updated_at":"2025-03-11T10:31:18.629Z","avatar_url":"https://github.com/deadlyfingers.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AR Studio game backend with Azure Functions [![Build Status](https://travis-ci.org/deadlyfingers/ARStudioAzureFunctions.svg?branch=master)](https://travis-ci.org/deadlyfingers/ARStudioAzureFunctions)\n\nNote: [AR Studio](https://developers.facebook.com/products/ar-studio) requires a Mac so we everything here is written for Mac user, but everything should run ok on Windows once available.\n\n## Prerequistes for testing and running localhost on Mac\n- [Node 8.5.0 or better](https://nodejs.org/en/)\n- [Azure Functions core tools for Mac](https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local#brew)\n- [MongoDB for running local db on Mac](https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/#install-mongodb-community-edition)\n- [ngrok for serving localhost as https (required for AR Studio)](https://ngrok.com/download)\n\n## Test on device using localhost\n1. Start mongodb  \n  `mongod`\n2. Start Azure Functions locally  \n  `func host start --debug VSCode`\n3. Start ngrok https server  \n  `ngrok http 7071`\n4. Clone the [AR Studio game project](https://github.com/deadlyfingers/ARStudioGame) and add your *ngrok domain* to whitelisted domains. (Refer to the [readme](https://github.com/deadlyfingers/ARStudioGame/blob/master/README.md) for config instuctions.)\n\n## API\nThe API is available as [Postman collection](https://raw.githubusercontent.com/deadlyfingers/ARStudioAzureFunctions/master/postman_collection.json) which can be imported into [Postman app](https://www.getpostman.com/).\n- LobbyCreate\n- LobbyJoin\n- LobbyDelete\n- MatchReady\n- MatchStatus\n- MatchTurn\n- MatchDelete\n\n## Testing \n`npm test`\n\n## Deployment\n1. Fork this repo\n2. Sign in to [Azure portal](https://portal.azure.com)\n2. Create new **Azure Function**\n3. Once your **Azure Function** is provisioned then update your **Function app settings** to use **version 2 (beta)**\n![azurefunctions-v2-beta](https://user-images.githubusercontent.com/1880480/43584718-1b5f9a5a-965b-11e8-8206-2910cefcfc9e.png)\n4. Create new **Azure Cosmos DB** and select MongoDB from the API options. Once it's provisioned then select '**Connection String**' under **Settings** and copy your connection details including *HOST*, *PORT*, *USERNAME*, *PRIMARY PASSWORD* \n5. Back in your **Azure Function** add the following environment variables using your connection details:\n    - **MongoDBHost**\n    - **MongoDBPort**\n    - **MongoDBUser**\n    - **MongoDBPass**\n6. To deploy your Function app select  \n  **Platform Features \u003e Deployment Options \u003e Setup \u003e GitHub**  \n  and choose your forked repo.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeadlyfingers%2FARStudioAzureFunctions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeadlyfingers%2FARStudioAzureFunctions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeadlyfingers%2FARStudioAzureFunctions/lists"}