diff --git a/ng-app/src/apps/AutomergeEditor.svelte b/ng-app/src/apps/AutomergeEditor.svelte
index 074d2a0..14d3769 100644
--- a/ng-app/src/apps/AutomergeEditor.svelte
+++ b/ng-app/src/apps/AutomergeEditor.svelte
@@ -23,11 +23,13 @@
     import { 
         cur_tab_register_on_save,
         cur_tab_deregister_on_save,
-        cur_tab_branch_class
+        cur_tab_doc_can_edit,
+        set_view_or_edit
     } from "../tab";
     import { t } from "svelte-i18n";
     import wasmUrl from "@automerge/automerge/automerge.wasm?url";
     import { next as A } from "@automerge/automerge/slim";
+    import{ PencilSquare } from "svelte-heros-v2";
 
     import AMap from "./automerge/AMap.svelte";
 
@@ -116,14 +118,31 @@
             toast_error(display_error(e));
         }
     }
+
+    const edit = () => {
+      set_view_or_edit(false);
+    }
   
   </script>
     {#if safari_error}
         <Alert class="m-2" color="red">{$t("errors.no_wasm_on_old_safari")}</Alert>
     {:else}
-        <div class="grow mb-20" style="min-height:300px;">
-            <AMap {readonly} value={doc} {doc} on:update={update} on:updateText={updateText} proxy={root_proxy}/>
-        </div>
+        {#if Object.keys(doc).length !== 0 || !readonly}
+            <div class="grow mb-20" style="min-height:300px;">
+                <AMap {readonly} value={doc} {doc} on:update={update} on:updateText={updateText} proxy={root_proxy}/>
+            </div>
+        {:else if $cur_tab_doc_can_edit}
+            <button
+                on:click={edit}
+                on:keypress={edit}
+                class="select-none ml-4 mt-2 mb-10 text-white bg-primary-700 hover:bg-primary-700/90 focus:ring-4 focus:ring-primary-500/50 rounded-lg text-base p-2 text-center inline-flex items-center dark:focus:ring-primary-700/55"
+            >
+                <PencilSquare class="mr-2 focus:outline-none" tabindex="-1" />
+                {$t("doc.start_editing")}
+            </button>
+        {:else}
+            <p class="ml-5">{$t("doc.empty")}</p>
+        {/if}
     {/if}
   <style>
 
diff --git a/ng-app/src/apps/SparqlQueryEditor.svelte b/ng-app/src/apps/SparqlQueryEditor.svelte
index eea765a..dc8bcb8 100644
--- a/ng-app/src/apps/SparqlQueryEditor.svelte
+++ b/ng-app/src/apps/SparqlQueryEditor.svelte
@@ -99,7 +99,7 @@
               <LineNumbers {highlighted} wrapLines hideBorder />
             </Highlight>
           {:else}
-          <span class="ml-2">{$t("doc.empty")}</span>
+            <span class="ml-2">{$t("doc.empty")}</span>
           {/if}
         {:else if results?.head} 
           <Table>
diff --git a/ng-app/src/lib/Document.svelte b/ng-app/src/lib/Document.svelte
index 0b00806..194843e 100644
--- a/ng-app/src/lib/Document.svelte
+++ b/ng-app/src/lib/Document.svelte
@@ -24,7 +24,7 @@
   import { t } from "svelte-i18n";
   import { Button, Progressbar, Spinner, Alert } from "flowbite-svelte";
   import { inview } from 'svelte-inview';
-  import { cur_tab, cur_tab_doc_can_edit, nav_bar, can_have_header, header_icon, header_title, header_description, cur_branch, set_header_in_view, edit_header_button, cur_app, load_official_app, nav_bar_reset_newest } from "../tab";
+  import { cur_tab, cur_tab_view_or_edit, nav_bar, can_have_header, header_icon, header_title, header_description, cur_branch, set_header_in_view, edit_header_button, cur_app, load_official_app, nav_bar_reset_newest } from "../tab";
   import NavIcon from "./icons/NavIcon.svelte";
 
   export let nuri = ""; 
@@ -72,7 +72,7 @@
                     }}/>
                     {/if}
                     {#if !$header_title} <span class="font-mono h-8 py-1 inline-block align-middle mr-2"> {$cur_tab.doc.nuri.substring(2,9)} </span>  {/if}
-                    {#if $cur_tab_doc_can_edit}
+                    {#if !$cur_tab_view_or_edit}
                     <button class="p-1 mr-2 mb-2 w-8 h-8 flex-none" on:click={openEditHeader} title={$t($edit_header_button)}>
                         <Pencil tabindex=-1 class="w-5 h-5 focus:outline-none" />
                         
diff --git a/ng-app/src/store.ts b/ng-app/src/store.ts
index 03f5028..c6d713a 100644
--- a/ng-app/src/store.ts
+++ b/ng-app/src/store.ts
@@ -533,7 +533,7 @@ export const branch_subscribe = function(nuri:string, in_tab:boolean) {
                             req.V0.session_id = session.session_id;
                             unsub = await ng.app_request_stream(req,
                                 async (response) => {
-                                    console.log("GOT APP RESPONSE", response);
+                                    //console.log("GOT APP RESPONSE", response);
                                     if (response.V0.TabInfo) {
                                         tab_update(nuri, ($cur_tab) => {
                                             if (response.V0.TabInfo.branch?.id) {
diff --git a/ng-app/src/zeras.ts b/ng-app/src/zeras.ts
index 0d73669..8120eaf 100644
--- a/ng-app/src/zeras.ts
+++ b/ng-app/src/zeras.ts
@@ -323,6 +323,7 @@ export const official_apps = {
         "ng:b": "AutomergeJsonSource", // displayed with highlight.js , with option to download
         "ng:o": ["data:json", "data:table", "doc:diagram:jsmind", "doc:diagram:gantt", "doc:diagram:excalidraw", "doc:viz:*", "doc:chart:*", "prod:cad"],
         "ng:w": [],
+        "full_width": true,
     },
     "n:g:z:crdt_source_viewer:ymap": { 
         "ng:n": "JSON Source",