[{"data":1,"prerenderedAt":458},["ShallowReactive",2],{"docs-navigation":3,"docs-\u002Fshipping\u002Fdeploying":254,"surround-\u002Fshipping\u002Fdeploying":455},[4,33,86,114,173,212,231],{"title":5,"path":6,"stem":7,"children":8},"Start","\u002Fstart","1.start",[9,13,18,23,28],{"title":10,"path":6,"stem":11,"description":12},"Start here","1.start\u002Findex","What Desifex is, and how to get an application of your own running.",{"title":14,"path":15,"stem":16,"description":17},"What Desifex is","\u002Fstart\u002Fwhat-desifex-is","1.start\u002F1.what-desifex-is","An application factory where conversation is the interface — and the handful of things it deliberately will not do.",{"title":19,"path":20,"stem":21,"description":22},"Your first application","\u002Fstart\u002Fyour-first-application","1.start\u002F2.your-first-application","From a sentence to something running, in about twenty minutes, with nothing to install.",{"title":24,"path":25,"stem":26,"description":27},"The workbench","\u002Fstart\u002Fthe-workbench","1.start\u002F3.the-workbench","A tour of the screen you will spend your time on — the conversation, the six tabs, and the menu.",{"title":29,"path":30,"stem":31,"description":32},"What to expect","\u002Fstart\u002Fwhat-to-expect","1.start\u002F4.what-to-expect","How long things take, what a good working rhythm looks like, and the parts that genuinely go wrong.",{"title":34,"path":35,"stem":36,"children":37},"Building","\u002Fbuilding","2.building",[38,41,46,51,56,61,66,71,76,81],{"title":34,"path":35,"stem":39,"description":40},"2.building\u002Findex","Getting what you actually wanted out of the conversation.",{"title":42,"path":43,"stem":44,"description":45},"Describing what you need","\u002Fbuilding\u002Fdescribing-what-you-need","2.building\u002F1.describing-what-you-need","How to phrase a request so that what comes back is what you meant.",{"title":47,"path":48,"stem":49,"description":50},"Watching a build","\u002Fbuilding\u002Fwatching-a-build","2.building\u002F2.watching-a-build","What the steps mean, what is happening underneath, and why you are not shown a log.",{"title":52,"path":53,"stem":54,"description":55},"Changing your mind","\u002Fbuilding\u002Fchanging-your-mind","2.building\u002F3.changing-your-mind","Interrupting a build, correcting a misunderstanding, and undoing something you asked for.",{"title":57,"path":58,"stem":59,"description":60},"When a build fails","\u002Fbuilding\u002Fwhen-a-build-fails","2.building\u002F4.when-a-build-fails","What a failure actually means, what to try, and when to ask us.",{"title":62,"path":63,"stem":64,"description":65},"Showing it a file","\u002Fbuilding\u002Fshowing-it-files","2.building\u002F5.showing-it-files","Attaching a screenshot, a spreadsheet or a document to the conversation — often faster than describing it.",{"title":67,"path":68,"stem":69,"description":70},"Choosing a design system","\u002Fbuilding\u002Fchoosing-a-design-system","2.building\u002F6.choosing-a-design-system","What a design system decides, how to pick one, and what changing it later does.",{"title":72,"path":73,"stem":74,"description":75},"Asking for settings","\u002Fbuilding\u002Fasking-for-settings","2.building\u002F7.asking-for-settings","The conversation reaches the whole platform — addresses, icons, redirects, users, integrations and shipping. If you do not know where a setting is, ask.",{"title":77,"path":78,"stem":79,"description":80},"When it asks you","\u002Fbuilding\u002Fwhen-it-asks-you","2.building\u002F8.when-it-asks-you","Some decisions arrive as a screen rather than a message — a table to correct, a list to choose from — and the build waits for your answer.",{"title":82,"path":83,"stem":84,"description":85},"Starting from what you have","\u002Fbuilding\u002Fstarting-from-what-you-have","2.building\u002F9.starting-from-what-you-have","A spreadsheet, a document, a picture or a page of your own site — attached, read, and built from.",{"title":87,"path":88,"stem":89,"children":90},"Shipping","\u002Fshipping","3.shipping",[91,94,99,104,109],{"title":87,"path":88,"stem":92,"description":93},"3.shipping\u002Findex","Getting what you built in front of people, and getting back to an earlier version.",{"title":95,"path":96,"stem":97,"description":98},"Versions","\u002Fshipping\u002Fversions","3.shipping\u002F1.versions","Every build is kept, named after what was asked for, and can be compared and restored.",{"title":100,"path":101,"stem":102,"description":103},"Environments","\u002Fshipping\u002Fenvironments","3.shipping\u002F2.environments","Preview, test and live — what each one is, who can reach it, and why their data is separate.",{"title":105,"path":106,"stem":107,"description":108},"Deploying","\u002Fshipping\u002Fdeploying","3.shipping\u002F3.deploying","Putting a version into test or live, what happens while it deploys, and what happens if it fails.",{"title":110,"path":111,"stem":112,"description":113},"Going back","\u002Fshipping\u002Fgoing-back","3.shipping\u002F4.going-back","Restoring an earlier version when a change turned out to be wrong.",{"title":115,"path":116,"stem":117,"children":118},"Running","\u002Frunning","4.running",[119,123,128,133,138,143,148,153,158,163,168],{"title":120,"path":116,"stem":121,"description":122},"Running it","4.running\u002Findex","Everything in Settings — addresses, access, people, files, integrations and what crawlers are told.",{"title":124,"path":125,"stem":126,"description":127},"Addresses and domains","\u002Frunning\u002Faddresses-and-domains","4.running\u002F01.addresses-and-domains","The address an application gets, and how to put it on a domain you own.",{"title":129,"path":130,"stem":131,"description":132},"Who can reach it","\u002Frunning\u002Fwho-can-reach-it","4.running\u002F02.who-can-reach-it","Open, behind one shared password, or accounts — and why the choice is enforced in front of the application.",{"title":134,"path":135,"stem":136,"description":137},"People who sign in","\u002Frunning\u002Fpeople-who-sign-in","4.running\u002F03.people-who-sign-in","The workspace's user directory — adding the people who use your applications, which ones each may open, what you can keep about them, and two-step sign-in.",{"title":139,"path":140,"stem":141,"description":142},"Published files","\u002Frunning\u002Fpublished-files","4.running\u002F04.published-files","Documents your application hands to its users — a price list, a brochure, a form — with a stable address and no build to change them.",{"title":144,"path":145,"stem":146,"description":147},"Integrations","\u002Frunning\u002Fintegrations","4.running\u002F05.integrations","Email, SMS and Google — connected once, used by the application without it ever holding a credential.",{"title":149,"path":150,"stem":151,"description":152},"Appearance","\u002Frunning\u002Fappearance","4.running\u002F06.appearance","The browser tab, the icon, what a link looks like when somebody pastes it, and adding it to a phone's home screen.",{"title":154,"path":155,"stem":156,"description":157},"Redirects and search engines","\u002Frunning\u002Fredirects-and-search-engines","4.running\u002F07.redirects-and-search-engines","Old addresses that still get visited, and what crawlers are told about each environment.",{"title":159,"path":160,"stem":161,"description":162},"Configuration values","\u002Frunning\u002Fconfiguration-values","4.running\u002F08.configuration-values","Named values the application needs but must not contain — API keys, account numbers, thresholds.",{"title":164,"path":165,"stem":166,"description":167},"Your data","\u002Frunning\u002Fyour-data","4.running\u002F09.your-data","The Data tab — reading, correcting, adding to and clearing out what your application has stored, one environment at a time.",{"title":169,"path":170,"stem":171,"description":172},"Visitors","\u002Frunning\u002Fvisitors","4.running\u002F10.visitors","Who is using the application, counted without identifying anybody and with nothing to set up.",{"title":174,"path":175,"stem":176,"children":177},"Workspace","\u002Fworkspace","5.workspace",[178,182,187,192,197,202,207],{"title":179,"path":175,"stem":180,"description":181},"Your workspace","5.workspace\u002Findex","What every application in it shares — the domain, the design systems, the people, the user directory and, if you want it, one set of records — and how to be in more than one.",{"title":183,"path":184,"stem":185,"description":186},"People and roles","\u002Fworkspace\u002Fpeople-and-roles","5.workspace\u002F1.people-and-roles","Three roles, what each can do, how they apply to the builder as well as to the buttons, and why they belong to a workspace rather than to an account.",{"title":188,"path":189,"stem":190,"description":191},"More than one workspace","\u002Fworkspace\u002Fmore-than-one-workspace","5.workspace\u002F2.more-than-one-workspace","Belonging to several, switching between them, the role you hold in each, and why nothing crosses over.",{"title":193,"path":194,"stem":195,"description":196},"Organising applications","\u002Fworkspace\u002Ffolders-and-organising","5.workspace\u002F3.folders-and-organising","Folders on the dashboard, and how to keep a growing list navigable.",{"title":198,"path":199,"stem":200,"description":201},"Your own design systems","\u002Fworkspace\u002Fyour-own-design-systems","5.workspace\u002F4.your-own-design-systems","Authoring a design system for your brand, or a client's, by importing guidelines, a website or a Figma library.",{"title":203,"path":204,"stem":205,"description":206},"Your profile","\u002Fworkspace\u002Fyour-profile","5.workspace\u002F5.your-profile","Your name, your password, your picture, and the theme.",{"title":208,"path":209,"stem":210,"description":211},"Where records live","\u002Fworkspace\u002Fwhere-records-live","5.workspace\u002F6.where-records-live","One store per environment, one across an application's environments, or one the whole workspace shares — what each costs you, and how to change it.",{"title":213,"path":214,"stem":215,"children":216},"Developers","\u002Fdevelopers","6.developers",[217,221,226],{"title":218,"path":214,"stem":219,"description":220},"For developers","6.developers\u002Findex","What is actually generated, and what to do when you inherit one.",{"title":222,"path":223,"stem":224,"description":225},"What gets built","\u002Fdevelopers\u002Fwhat-gets-built","6.developers\u002F1.what-gets-built","The stack, the shape of the repository, and the parts the platform provides rather than the application.",{"title":227,"path":228,"stem":229,"description":230},"Taking one over","\u002Fdevelopers\u002Ftaking-it-over","6.developers\u002F2.taking-it-over","For the developer who has just been handed an application built here.",{"title":232,"path":233,"stem":234,"children":235},"Reference","\u002Freference","7.reference",[236,239,244,249],{"title":232,"path":233,"stem":237,"description":238},"7.reference\u002Findex","Terms, limits, and what to do when something specific has gone wrong.",{"title":240,"path":241,"stem":242,"description":243},"Glossary","\u002Freference\u002Fglossary","7.reference\u002F1.glossary","Every term this documentation uses, in one place.",{"title":245,"path":246,"stem":247,"description":248},"Limits","\u002Freference\u002Flimits","7.reference\u002F2.limits","The boundaries that are real, so you do not discover them at an inconvenient moment.",{"title":250,"path":251,"stem":252,"description":253},"Troubleshooting","\u002Freference\u002Ftroubleshooting","7.reference\u002F3.troubleshooting","Specific symptoms, and what each one usually means.",{"id":255,"title":105,"body":256,"description":108,"extension":448,"hidden":449,"meta":450,"navTitle":451,"navigation":452,"path":106,"seo":453,"stem":107,"__hash__":454},"docs\u002F3.shipping\u002F3.deploying.md",{"type":257,"value":258,"toc":436},"minimark",[259,267,272,297,300,304,310,314,325,328,332,355,358,364,367,371,374,382,386,389,395,402,409,415,419],[260,261,262,263,266],"p",{},"Open the ",[264,265,95],"strong",{}," tab. The three environments are across the top; the\nversion history is underneath.",[268,269,271],"h2",{"id":270},"the-ordinary-path","The ordinary path",[273,274,275],"steps",{},[276,277,278,285,291],"ol",{},[279,280,281,284],"li",{},[264,282,283],{},"Put the latest on Test."," One press. It saves a version from the current\nstate of the preview and deploys that. You do not have to save a version\nfirst.",[279,286,287,290],{},[264,288,289],{},"Look at it."," Open the test address. Show it to whoever needs to see it.",[279,292,293,296],{},[264,294,295],{},"Put what is on Test live."," Also one press. The version that was tested —\nthe one a person has actually looked at — is the one that goes live.",[260,298,299],{},"That is the path the environments exist for, and it is the primary action on\neach card.",[268,301,303],{"id":302},"going-straight-to-live","Going straight to live",[260,305,306,309],{},[264,307,308],{},"Skip Test — put the latest live"," sits underneath, because sometimes a fix is\nobvious and waiting is silly. It looks like the second option because it is.",[268,311,313],{"id":312},"choosing-a-version-by-hand","Choosing a version by hand",[260,315,316,317,320,321,324],{},"Any version in the history can be sent to either environment — that is how you\ngo back to an earlier one. Press ",[264,318,319],{},"Send to test"," or ",[264,322,323],{},"Put live"," on the version\nyou want.",[260,326,327],{},"Before it happens you are shown what will change between the version running\nthere now and the one you have chosen.",[268,329,331],{"id":330},"what-happens-while-it-deploys","What happens while it deploys",[273,333,334],{},[276,335,336,339,342,349,352],{},[279,337,338],{},"The version is unpacked into its own directory.",[279,340,341],{},"Dependencies are installed.",[279,343,344,345,348],{},"The application is ",[264,346,347],{},"built for production",".",[279,350,351],{},"The server is started, and the platform waits for it to answer.",[279,353,354],{},"Only then is the address moved to the new copy.",[260,356,357],{},"Every step appears in the same feed as a build, so you can see where it is\nrather than watching a spinner.",[260,359,360,363],{},[264,361,362],{},"A version that does not build never replaces the one that is live."," It fails\nat step 3, the address never moves, and the environment carries on serving what\nit was serving. This is the single most important property of the deployment\nand it is not optional.",[260,365,366],{},"It takes one to three minutes.",[268,368,370],{"id":369},"is-this-environment-showing-my-latest-work","\"Is this environment showing my latest work?\"",[260,372,373],{},"Each card says so plainly. It is a real check, not a guess: the platform\ncompares what is deployed against the current state of the application,\nincluding work that has been built but not yet turned into a version.",[260,375,376,377,381],{},"So ",[378,379,380],"em",{},"Test is showing your latest work"," is a statement you can rely on.",[268,383,385],{"id":384},"asking-for-it-in-the-conversation","Asking for it in the conversation",[260,387,388],{},"Deploying is one of the things the builder can do:",[390,391,392],"blockquote",{},[260,393,394],{},"Call this one \"First release\" and put it on test.",[260,396,397,398,401],{},"It acts with ",[264,399,400],{},"your"," permissions. If you could not deploy by pressing the\nbutton, asking will not help — a viewer cannot deploy by asking nicely.",[260,403,404,405,408],{},"It also records ",[264,406,407],{},"why",", in your words, on the deployment. A release nobody\nremembers ordering traces back to the sentence that ordered it.",[410,411,412],"note",{},[260,413,414],{},"The builder will not deploy because it finished a change. Deploying is a\ndecision, and a change being done is not the same as it being wanted in front of\ncustomers. If a request is ambiguous it finishes the work and asks.",[268,416,418],{"id":417},"after-deploying","After deploying",[420,421,422,425,428],"ul",{},[279,423,424],{},"The address keeps working while you deploy again. There is no window where it\nis down.",[279,426,427],{},"The data stays. Containers are replaced; storage is not.",[279,429,430,432,433,348],{},[264,431,169],{}," starts counting. See ",[434,435,169],"a",{"href":170},{"title":437,"searchDepth":438,"depth":438,"links":439},"",3,[440,442,443,444,445,446,447],{"id":270,"depth":441,"text":271},2,{"id":302,"depth":441,"text":303},{"id":312,"depth":441,"text":313},{"id":330,"depth":441,"text":331},{"id":369,"depth":441,"text":370},{"id":384,"depth":441,"text":385},{"id":417,"depth":441,"text":418},"md",false,{},null,true,{"title":105,"description":108},"kTMxo874sV3pX37BhYsI0bG0ejTzGCkwLMbKfrXR_SM",[456,457],{"title":100,"path":101,"stem":102,"description":103,"children":-1},{"title":110,"path":111,"stem":112,"description":113,"children":-1},1790202296895]