{
    "componentChunkName": "component---src-templates-article-page-template-js",
    "path": "/tutorial/deploy-to-render/",
    "result": {"data":{"markdownRemark":{"frontmatter":{"title":"Create a test environment","slug":"deploy-to-render","updated":"2022-09-12T00:00:00.000Z","category":"tutorial-branding","ingress":"Deploy your marketplace to a cloud hosting platform to share it with other people.","skills":null},"htmlAst":{"type":"root","children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Now that you have customised your marketplace's styling, it is time to\ndeploy the web application to a public web server. After all, you want\nyour marketplace to be accessed by your colleagues and friends over the\nInternet. This tutorial will provide an overview of how to deploy a test\nenvironment to a public server, such as "},{"type":"element","tagName":"a","properties":{"href":"https://www.render.com","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Render"}]},{"type":"text","value":"\nor "},{"type":"element","tagName":"a","properties":{"href":"https://www.heroku.com/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Heroku"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If you do not need to develop any advanced functionality for your\nmarketplace and are ready to deploy, you should consider launching\ndirectly to production. Read our Marketplace Academy article on\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/academy/why-you-should-launch-your-marketplace-early/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"why you should launch your marketplace early"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"what-is-a-test-environment","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#what-is-a-test-environment","ariaLabel":"what is a test environment permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"What is a test environment?"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"So far, you have been developing your marketplace in a development\nenvironment on your local machine. At some point during the development\nprocess, you will want to start testing features in an environment where\na server exposes your website to the public Internet. Using a cloud\nhosting service like "},{"type":"element","tagName":"a","properties":{"href":"https://www.render.com","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Render"}]},{"type":"text","value":" or\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.heroku.com/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Heroku"}]},{"type":"text","value":" you can deploy your application to a\nserver, after which your marketplace will be accessible through a public\nURL."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"prepare-to-publish-your-marketplace","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#prepare-to-publish-your-marketplace","ariaLabel":"prepare to publish your marketplace permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Prepare to publish your marketplace"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Before deploying your test environment, you want to make sure\nServer-Side Rendering (SSR) works. In addition, password-protecting your\ntest environment is a good idea to prevent it from being accessed by\nunauthorized users."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"test-server-side-rendering-locally","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#test-server-side-rendering-locally","ariaLabel":"test server side rendering locally permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Test server-side rendering locally"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Before you deploy your marketplace to Render or another hosting service,\nyou should first ensure that your client application runs without error\nwhen using SSR."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The FTW templates have a small "},{"type":"element","tagName":"a","properties":{"href":"https://expressjs.com/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Node/Express"}]},{"type":"text","value":"\nserver that enables SSR. It allows pages to be rendered faster than on\nthe client, but even more importantly, it makes it easier for search\nengines to index your website (in case they don't execute JavaScript)."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"To start up the server locally, you will need to run the command:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"shell"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-shell"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-shell"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","function"]},"children":[{"type":"text","value":"yarn"}]},{"type":"text","value":" run dev-server"}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"This command will use\n"},{"type":"element","tagName":"a","properties":{"href":"https://webpack.js.org/configuration/dev-server/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Webpack's dev-server"}]},{"type":"text","value":"\nwith\n"},{"type":"element","tagName":"a","properties":{"href":"https://webpack.js.org/concepts/hot-module-replacement/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Hot Module Replacement"}]},{"type":"text","value":"\nto run a development server, which simulates how the client application\nwould run in a production environment."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"blockquote","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" If you have issues with SSR, you have likely called\nfunctions that belong to the "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"window"}]},{"type":"text","value":" object/scope. In the server\nenvironment, the "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"window"}]},{"type":"text","value":" object is not available."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"enable-http-basic-access-authentication","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#enable-http-basic-access-authentication","ariaLabel":"enable http basic access authentication permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Enable HTTP basic access authentication"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"You can enforce access control in your web application by enabling HTTP\nbasic access authentication. It's a good idea to restrict access to your\nweb application while still testing your marketplace: it prevents your\nsite from being indexed in search engines and users from accidentally\nsigning up in a marketplace still under development."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"FTW exposes two environment variables with which you can set a username\nand password that limit access to your web application. When you deploy\nyour application to Render, remember to define the following environment\nvariables:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"BASIC_AUTH_USERNAME"}]},{"type":"text","value":" and "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"BASIC_AUTH_PASSWORD"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"This will prevent anybody without the correct password and username from\naccessing your test marketplace."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"deploy-to-render","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#deploy-to-render","ariaLabel":"deploy to render permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Deploy to Render"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"This section provides a step-by-step guide on how to deploy your\nmarketplace to Render. You can also deploy your marketplace on another\ncloud hosting platform, but we suggest using Render as it provides a\n"},{"type":"element","tagName":"a","properties":{"href":"https://render.com/pricing","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"free tier"}]},{"type":"text","value":" and is quick and easy to set up."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"blockquote","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" Make sure you have completed the\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/docs/tutorial/introduction/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Tutorial introduction"}]},{"type":"text","value":"\nas this step requires having your code hosted in a git repository."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"create-an-account-on-render","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#create-an-account-on-render","ariaLabel":"create an account on render permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Create an account on Render"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Go to Render and\n"},{"type":"element","tagName":"a","properties":{"href":"https://dashboard.render.com/register","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"create a new account"}]},{"type":"text","value":" if you do\nnot have one already."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"create-a-new-app","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#create-a-new-app","ariaLabel":"create a new app permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Create a new app"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Go to the "},{"type":"element","tagName":"a","properties":{"href":"https://dashboard.render.com","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Render dashboard"}]},{"type":"text","value":" and create a\nnew application. Select \"web service\":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/47eb53ce7a8032570205e2b908644507/aa3ef/render-create-new-app.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 57.861635220125784%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAABYlAAAWJQFJUiTwAAABq0lEQVQoz41Swa7UMAzs//8PEnBB4swB6b0TFw4I7XvdtpttmsSxnQyy2+0DcYCuRlsn9ow97pAzIecMZqCUBhYFs0KkQVtDZfH31jqA7r9PnytiZFBl1CrovZ8Yci4YrxOI+LdC+OWDJKz72bfvgncfCz68Ly7uAv1PDIUqltuKuBWHiMJ4+oFCjHGKsEl+vgi+fCU8PxGYGx7PnruLDizA5dqxJYIonOx275gDOVncCNc5ItzNlgptBKBhDoqwFgdLO6caLLiMybuYloTKlki4jKvHqg25KFQ7Uq4ohd2KcU54uUYsIUP0zabBEu+RkEnA0s/COeSDqB1+GvG+BFtWWDOS3Tc4zpFNjWoD8X5pcSaDurJoA1X12KaxCezfaqrXdIctyAmtaA6CdSNPMqUfl47XyTpg9zQm4HWqTrCLAGFV3Nbs5EZ4dmgdmA/mW0zsBfdYMC3ZzwspqArmW8Z8S55nJPa+hHLGbx62ji2zj2Xd2NgWh0juqQlYwUPsgXWrSEW8230pR4fGal0asfnXjg/azv6Kez9hy1I/w/lROyH++fT/vreRfwHBqqu+BGj++gAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/47eb53ce7a8032570205e2b908644507/82e29/render-create-new-app.webp 159w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/ef33f/render-create-new-app.webp 318w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/f1837/render-create-new-app.webp 635w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/29549/render-create-new-app.webp 953w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/c5420/render-create-new-app.webp 1270w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/efa89/render-create-new-app.webp 3294w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/47eb53ce7a8032570205e2b908644507/8b9b5/render-create-new-app.png 159w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/fa108/render-create-new-app.png 318w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/53fb6/render-create-new-app.png 635w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/5a426/render-create-new-app.png 953w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/91155/render-create-new-app.png 1270w","/docs/legacy/static/47eb53ce7a8032570205e2b908644507/aa3ef/render-create-new-app.png 3294w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/47eb53ce7a8032570205e2b908644507/53fb6/render-create-new-app.png","alt":"Create new app in Render","title":"Create new app in Render","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"connect-render-with-a-github-repository","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#connect-render-with-a-github-repository","ariaLabel":"connect render with a github repository permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Connect Render with a GitHub repository"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Log in using your GitHub account and give Render permission to access\nthe repository you want to deploy."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/4bded/render-connect-git.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 74.21383647798743%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAABYlAAAWJQFJUiTwAAABtUlEQVQ4y4VUTW7VMBB+l4FLdMUOztBNLwE7WKBuUCWkblghxC2QYN0bIGBRFSokCjwaO/HEjn8/5MnzixNeqCUrtsf+5pv5ZrJJCYgxoVMKXadw2whst39A1INtKSH9Zy7tGyADRigiEBHatoOQkr/aGAzDwBfzWIKVMS7H/aYYrHXMSilCCAHF0SpDAMYYJlHAmGEB9D5gsBbDYHldws3pODTzO+sCSHlYWwHWoUwhJGYZYxhZxnE9Zwl4o0GqZwf/ABavI1sPIVs0QqIRLYRoOafLXHrrQcrBuRXA4unDO42njxucnUqcnTZ48Vzg2ZMGnz7aXW6LunmNiiHmgCFENrx9eYGH985xcvQKJw/e4PjoNR7dP8fF+0u253tTRBM7VvlQyPJW4fvlT9x8/YWb6y1+fPvNe00DlvfzkzoVlSh1Ta2PpdI1u1kd5nJR1IN6vQ+9dFENkHbndWWsAko5qtlrDa3HLrEuqxjhXGA1cwWk5Dh3dwIKISHbbtd+LXdNPs+A1gZ4n0DkcHU1wJiIQzU8ibIvgWmGEirSvl+1AT5/iehpFTDNcnLXn2Usk3moNeBf5jqPBp6Z+IAAAAAASUVORK5CYII='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/82e29/render-connect-git.webp 159w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/ef33f/render-connect-git.webp 318w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/f1837/render-connect-git.webp 635w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/29549/render-connect-git.webp 953w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/c5420/render-connect-git.webp 1270w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/a9444/render-connect-git.webp 2874w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/8b9b5/render-connect-git.png 159w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/fa108/render-connect-git.png 318w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/53fb6/render-connect-git.png 635w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/5a426/render-connect-git.png 953w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/91155/render-connect-git.png 1270w","/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/4bded/render-connect-git.png 2874w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/2bdb8339cd2be5efefc2b98cdcdf8a17/53fb6/render-connect-git.png","alt":"Connect GitHub to Render","title":"Connect GitHub to Render","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"configure-settings-and-environment-variables","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#configure-settings-and-environment-variables","ariaLabel":"configure settings and environment variables permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Configure settings and environment variables"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Give your web service a name. You do not need to touch any other\nsettings (such as environment, branch, build command and start command),\nand select the free plan. Before clicking on \"create web service\", click\non \"Advanced\" to enter the required environment variables."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Give your web service a name. You do not need to touch any other\nsettings (such as environment, branch, build command and start command)\nand select the free plan. Before clicking on \"create web service\", click\non \"Advanced\" to enter the required environment variables."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"You can choose to enter the environment variables one-by-one through the\nbrowser interface:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/895171623257a3ce83efd59678982e17/0bfe9/render-env-var-1.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 24.528301886792455%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAr0lEQVQY05WP247EIAxD+/+/ug+l0JAr8SrMdGZfN9KRMRGWOW5ytC5onXANQ+uMmwTMivmGxSBi+/woTYWo7R2/7zwCB03D1RnnRVuvwaApiFhwD5gFVP3jvTTW9mdndHoFl89MHJXc+sS4ZYdVu4jEWi/qsVpgZX5ZiZqfNtGGQNTxzDHIUNB0TA6ILpgnzBJqCfO1Wz5BD9Xm7IJBun9Qsxuy+G5VDf8u/ssT+AsxNIhYi8dvYwAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/895171623257a3ce83efd59678982e17/82e29/render-env-var-1.webp 159w","/docs/legacy/static/895171623257a3ce83efd59678982e17/ef33f/render-env-var-1.webp 318w","/docs/legacy/static/895171623257a3ce83efd59678982e17/f1837/render-env-var-1.webp 635w","/docs/legacy/static/895171623257a3ce83efd59678982e17/29549/render-env-var-1.webp 953w","/docs/legacy/static/895171623257a3ce83efd59678982e17/c5420/render-env-var-1.webp 1270w","/docs/legacy/static/895171623257a3ce83efd59678982e17/c667d/render-env-var-1.webp 2674w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/895171623257a3ce83efd59678982e17/8b9b5/render-env-var-1.png 159w","/docs/legacy/static/895171623257a3ce83efd59678982e17/fa108/render-env-var-1.png 318w","/docs/legacy/static/895171623257a3ce83efd59678982e17/53fb6/render-env-var-1.png 635w","/docs/legacy/static/895171623257a3ce83efd59678982e17/5a426/render-env-var-1.png 953w","/docs/legacy/static/895171623257a3ce83efd59678982e17/91155/render-env-var-1.png 1270w","/docs/legacy/static/895171623257a3ce83efd59678982e17/0bfe9/render-env-var-1.png 2674w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/895171623257a3ce83efd59678982e17/53fb6/render-env-var-1.png","alt":"Render environment variables","title":"Render environment variables","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Or by creating a secret file that contains all environment variables:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/3f137/render-env-var-2.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 95.59748427672956%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAYAAACQjC21AAAACXBIWXMAABYlAAAWJQFJUiTwAAAB3klEQVQ4y51UW5KbMBDkzMlJ9gK5QHKGfOYKW6lKKrvrFxjxEiBekjrVA9gY1qmsVTXWWBI96lZLQVk1eDso7I4KUZyDzXuPjzbnPJxzCPrBwjQdmraHaXo476fJxyJoux5ZUaOsm8vuHguAvIKuH3CKMqi0vO7OPxBuBA64K4LOuq0B/Sq/FzOoUC5Kg1wb6KoZt36JBZ2b/n4EPJCzKhCpQmhb58CDGgYLOwk9DA7WOgxTMN9IM1NmEp5zxIlGFBfYn1K87mKx0tte4XBKsT8mOIYpVKKlaKw06rrdHKJQZsXd4fohQV52sfwnMOd+v0TihFnnGWDZLoCkVZtOKlZ1Cxqdwbw2rXi00Fuwpb43gPxhddJJshJpXglgXtQClGYVqsmj77VloWmHDoU2AqJLI3mWVwLIYE5gKaLHwlzDtVfaGw1H0WcNf/0JZYw5deQ46RM0mxhQkrUMF8rNdJclmk4+oHbGdGjbXi79fz0QtA09dVZavEjrqKTEMcxwinJkeS30KIt/79FY3CCuIVYwLxwms3JCeutuhL931dZXMlgObnp357FwS7uMhyIHg+lxwGzUVbV/2YRXky4YrMXTlx6fPhf4+dyPlD8a46vk5BDZf/9h8fVbgyi0+AtRJM/B61dvjQAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/82e29/render-env-var-2.webp 159w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/ef33f/render-env-var-2.webp 318w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/f1837/render-env-var-2.webp 635w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/29549/render-env-var-2.webp 953w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/c5420/render-env-var-2.webp 1270w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/af952/render-env-var-2.webp 1304w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/8b9b5/render-env-var-2.png 159w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/fa108/render-env-var-2.png 318w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/53fb6/render-env-var-2.png 635w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/5a426/render-env-var-2.png 953w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/91155/render-env-var-2.png 1270w","/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/3f137/render-env-var-2.png 1304w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/969e8754f17d37ad7b6f017b910fca1a/53fb6/render-env-var-2.png","alt":"Render secret file","title":"Render secret file","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"You then need to add the following environment variables:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_SHARETRIBE_SDK_CLIENT_ID"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Flex client ID. Check this from\n"},{"type":"element","tagName":"a","properties":{"href":"https://flex-console.sharetribe.com/applications","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Console"}]},{"type":"text","value":". For a dev\nenvironment that is meant for developing further features, use the\nclient ID from your "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"development environment"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"SHARETRIBE_SDK_CLIENT_SECRET"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Flex client secret. Check this from\n"},{"type":"element","tagName":"a","properties":{"href":"https://flex-console.sharetribe.com/applications","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Console"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_STRIPE_PUBLISHABLE_KEY"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Stripe publishable API key for generating tokens with Stripe API. Use\nthe test key (prefix "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"pk_test"}]},{"type":"text","value":") for development."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_MAPBOX_ACCESS_TOKEN"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If you are using Mapbox instead of Google Maps"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_SHARETRIBE_MARKETPLACE_CURRENCY"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The currency used in the Marketplace is formatted in the ISO 4217\ncurrency code. For example USD, EUR, CAD, AUD, etc."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_CANONICAL_ROOT_URL"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Canonical root URL of the marketplace. Remove trailing slash from the\ndomain."},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":"E.g. "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"https://<the-name-of-your-app>.onrender.com"}]}]}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"NODE_ENV"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Defines whether the application is run in production or development\nmode. Use 'development' for development and 'production' for\nproduction."},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" Use value: 'production'"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_ENV"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"A more fine-grained env definition than "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"NODE_ENV"}]},{"type":"text","value":". For example, this\nsends environment info to the logging service Sentry. (If you have\nenabled it with "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_SENTRY_DSN"}]},{"type":"text","value":")."},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" For this setup, use\nvalue: 'development'"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_SHARETRIBE_USING_SSL"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Redirect HTTP to HTTPS?"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" Use value: true"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"SERVER_SHARETRIBE_TRUST_PROXY"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Set this when running the app behind a reverse proxy, e.g. in\nHeroku."},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" Use value: true"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_CSP"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Content Security Policy (CSP). Read more from\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/ftw/how-to-set-up-csp-for-ftw/"},"children":[{"type":"text","value":"this article"}]},{"type":"text","value":"."},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" Accepts values:\n"},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"block"}]},{"type":"text","value":" and "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"report"}]},{"type":"text","value":". The recommended value is "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"block"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_AVAILABILITY_ENABLED"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Possible values: true/false"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" Use value: true"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"REACT_APP_DEFAULT_SEARCHES_ENABLED"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Possible values: true/false"},{"type":"element","tagName":"br","properties":{},"children":[]},{"type":"text","value":" Use value: true"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If you change these values later on, "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"you need to redeploy the app"}]},{"type":"text","value":".\nEnvironment variables are baked into the static build files of the web\napp, so a new build is required."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"create-web-service","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#create-web-service","ariaLabel":"create web service permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Create web service"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Once you are ready, click on the \"create web service\" button and wait\nfor your build to be deployed. Once the build is complete, you will be\nable to access your marketplace through the URL displayed in the Render\ndashboard."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"domains-and-certificates","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#domains-and-certificates","ariaLabel":"domains and certificates permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Domains and certificates"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Render manages TLS certificates\n"},{"type":"element","tagName":"a","properties":{"href":"https://render.com/docs/tls","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"automatically"}]},{"type":"text","value":" for new applications. You\ncan enable a custom domain through the "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Settings tab"}]},{"type":"text","value":". Read more through\n"},{"type":"element","tagName":"a","properties":{"href":"https://render.com/docs/custom-domains","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Render's documentation"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"what-next","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#what-next","ariaLabel":"what next permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"What next?"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Now that your marketplace is running in a test environment, you should\ntest the app thoroughly using both desktop and mobile layouts. In\naddition, you should try to:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Create new users"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Create new listings"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Book listings"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Test social sharing"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://developers.facebook.com/tools/debug/","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Facebook sharing debugger"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://cards-dev.twitter.com/validator","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Twitter card validator"}]}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Save payment card"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Use "},{"type":"element","tagName":"a","properties":{"href":"https://stripe.com/docs/testing","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"test card numbers"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If your marketplace concept needs advanced features, you need to\ncontinue with customizations. In\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/tutorial/add-extended-data/"},"children":[{"type":"text","value":"the next part of this tutorial"}]},{"type":"text","value":", we'll go\nthrough how to extend listing entities with extended data."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/tutorial/add-extended-data/"},"children":[{"type":"text","value":"› Go to the next article"}]}]}],"data":{"quirksMode":false}},"headings":[{"value":"What is a test environment?","depth":2},{"value":"Prepare to publish your marketplace","depth":2},{"value":"Test server-side rendering locally","depth":3},{"value":"Enable HTTP basic access authentication","depth":3},{"value":"Deploy to Render","depth":2},{"value":"Create an account on Render","depth":3},{"value":"Create a new app","depth":3},{"value":"Connect Render with a GitHub repository","depth":3},{"value":"Configure settings and environment variables","depth":3},{"value":"Create web service","depth":3},{"value":"Domains and certificates","depth":3},{"value":"What next?","depth":2}]}},"pageContext":{"slug":"deploy-to-render","category":"tutorial-branding"}},
    "staticQueryHashes": ["3794076007","439097193","717698143"]}