[{"data":1,"prerenderedAt":1147},["ShallowReactive",2],{"page-\u002Frender\u002Fgetting-started\u002Ffirst-use":3,"navigation":775},{"collection":4,"page":5},"docs_en",{"id":6,"title":7,"body":8,"description":767,"extension":768,"meta":769,"navigation":125,"path":770,"rawbody":771,"seo":772,"stem":773,"__hash__":774},"docs_en\u002Frender\u002F1.getting-started\u002F2.first-use.md","First use",{"type":9,"value":10,"toc":760},"minimark",[11,15,20,67,78,82,198,214,218,534,583,586,590,594,600,707,723,734,738,756],[12,13,14],"p",{},"This page draws a well on a plain HTML page. The same steps apply inside any framework.",[16,17,19],"h2",{"id":18},"1-an-svg-element","1. An SVG element",[21,22,27],"pre",{"className":23,"code":24,"language":25,"meta":26,"style":26},"language-html shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Csvg id=\"profile\">\u003C\u002Fsvg>\n","html","",[28,29,30],"code",{"__ignoreMap":26},[31,32,35,39,43,47,50,53,57,59,62,64],"span",{"class":33,"line":34},"line",1,[31,36,38],{"class":37},"sMK4o","\u003C",[31,40,42],{"class":41},"swJcz","svg",[31,44,46],{"class":45},"spNyl"," id",[31,48,49],{"class":37},"=",[31,51,52],{"class":37},"\"",[31,54,56],{"class":55},"sfazB","profile",[31,58,52],{"class":37},[31,60,61],{"class":37},">\u003C\u002F",[31,63,42],{"class":41},[31,65,66],{"class":37},">\n",[12,68,69,70,73,74,77],{},"The renderer sizes the element itself: its width is the panel ",[28,71,72],{},"width"," plus the left and right margins, and its height the panel ",[28,75,76],{},"height"," plus the top and bottom margins.",[16,79,81],{"id":80},"2-parse-the-file","2. Parse the file",[21,83,87],{"className":84,"code":85,"language":86,"meta":26,"style":26},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { parseWell } from '@welldot\u002Fcore';\n\n\u002F\u002F a file served with your page, e.g. an example well downloaded from welldot.org\u002Fexamples\nconst response = await fetch('\u002Fwells\u002Fextremoz-rn-barreiras-raso.well');\nconst well = parseWell(await response.text());\n","ts",[28,88,89,120,127,134,167],{"__ignoreMap":26},[31,90,91,95,98,102,105,108,111,114,117],{"class":33,"line":34},[31,92,94],{"class":93},"s7zQu","import",[31,96,97],{"class":37}," {",[31,99,101],{"class":100},"sTEyZ"," parseWell",[31,103,104],{"class":37}," }",[31,106,107],{"class":93}," from",[31,109,110],{"class":37}," '",[31,112,113],{"class":55},"@welldot\u002Fcore",[31,115,116],{"class":37},"'",[31,118,119],{"class":37},";\n",[31,121,123],{"class":33,"line":122},2,[31,124,126],{"emptyLinePlaceholder":125},true,"\n",[31,128,130],{"class":33,"line":129},3,[31,131,133],{"class":132},"sHwdD","\u002F\u002F a file served with your page, e.g. an example well downloaded from welldot.org\u002Fexamples\n",[31,135,137,140,143,145,148,152,155,157,160,162,165],{"class":33,"line":136},4,[31,138,139],{"class":45},"const",[31,141,142],{"class":100}," response ",[31,144,49],{"class":37},[31,146,147],{"class":93}," await",[31,149,151],{"class":150},"s2Zo4"," fetch",[31,153,154],{"class":100},"(",[31,156,116],{"class":37},[31,158,159],{"class":55},"\u002Fwells\u002Fextremoz-rn-barreiras-raso.well",[31,161,116],{"class":37},[31,163,164],{"class":100},")",[31,166,119],{"class":37},[31,168,170,172,175,177,179,181,184,187,190,193,196],{"class":33,"line":169},5,[31,171,139],{"class":45},[31,173,174],{"class":100}," well ",[31,176,49],{"class":37},[31,178,101],{"class":150},[31,180,154],{"class":100},[31,182,183],{"class":93},"await",[31,185,186],{"class":100}," response",[31,188,189],{"class":37},".",[31,191,192],{"class":150},"text",[31,194,195],{"class":100},"())",[31,197,119],{"class":37},[12,199,200,203,204,207,208,213],{},[28,201,202],{},"parseWell"," validates the file and upgrades v1 files, so the renderer always receives a valid v2 ",[28,205,206],{},"Well"," (",[209,210,212],"a",{"href":211},"\u002Fcore\u002Fguides\u002Fparsing-and-validating","Parsing and validating",").",[16,215,217],{"id":216},"3-create-the-renderer-and-draw","3. Create the renderer and draw",[21,219,221],{"className":84,"code":220,"language":86,"meta":26,"style":26},"import {\n  INTERACTIVE_RENDER_CONFIG,\n  WellRenderer,\n  applyRenderLocale,\n} from '@welldot\u002Frender';\n\nconst margins = { top: 24, right: 16, bottom: 20, left: 48 };\n\nconst renderer = new WellRenderer(\n  [{ selector: '#profile', width: 420, height: 640, margins }],\n  {\n    locale: 'en',\n    renderConfig: applyRenderLocale(INTERACTIVE_RENDER_CONFIG, 'en'),\n    onError: error => console.error(error),\n  },\n);\n\nawait renderer.prepareSvg();\nrenderer.draw(well);\n",[28,222,223,230,238,245,252,268,273,329,334,353,405,411,428,454,482,488,495,500,518],{"__ignoreMap":26},[31,224,225,227],{"class":33,"line":34},[31,226,94],{"class":93},[31,228,229],{"class":37}," {\n",[31,231,232,235],{"class":33,"line":122},[31,233,234],{"class":100},"  INTERACTIVE_RENDER_CONFIG",[31,236,237],{"class":37},",\n",[31,239,240,243],{"class":33,"line":129},[31,241,242],{"class":100},"  WellRenderer",[31,244,237],{"class":37},[31,246,247,250],{"class":33,"line":136},[31,248,249],{"class":100},"  applyRenderLocale",[31,251,237],{"class":37},[31,253,254,257,259,261,264,266],{"class":33,"line":169},[31,255,256],{"class":37},"}",[31,258,107],{"class":93},[31,260,110],{"class":37},[31,262,263],{"class":55},"@welldot\u002Frender",[31,265,116],{"class":37},[31,267,119],{"class":37},[31,269,271],{"class":33,"line":270},6,[31,272,126],{"emptyLinePlaceholder":125},[31,274,276,278,281,283,285,288,291,295,298,301,303,306,308,311,313,316,318,321,323,326],{"class":33,"line":275},7,[31,277,139],{"class":45},[31,279,280],{"class":100}," margins ",[31,282,49],{"class":37},[31,284,97],{"class":37},[31,286,287],{"class":41}," top",[31,289,290],{"class":37},":",[31,292,294],{"class":293},"sbssI"," 24",[31,296,297],{"class":37},",",[31,299,300],{"class":41}," right",[31,302,290],{"class":37},[31,304,305],{"class":293}," 16",[31,307,297],{"class":37},[31,309,310],{"class":41}," bottom",[31,312,290],{"class":37},[31,314,315],{"class":293}," 20",[31,317,297],{"class":37},[31,319,320],{"class":41}," left",[31,322,290],{"class":37},[31,324,325],{"class":293}," 48",[31,327,328],{"class":37}," };\n",[31,330,332],{"class":33,"line":331},8,[31,333,126],{"emptyLinePlaceholder":125},[31,335,337,339,342,344,347,350],{"class":33,"line":336},9,[31,338,139],{"class":45},[31,340,341],{"class":100}," renderer ",[31,343,49],{"class":37},[31,345,346],{"class":37}," new",[31,348,349],{"class":150}," WellRenderer",[31,351,352],{"class":100},"(\n",[31,354,356,359,362,365,367,369,372,374,376,379,381,384,386,389,391,394,396,398,400,403],{"class":33,"line":355},10,[31,357,358],{"class":100},"  [",[31,360,361],{"class":37},"{",[31,363,364],{"class":41}," selector",[31,366,290],{"class":37},[31,368,110],{"class":37},[31,370,371],{"class":55},"#profile",[31,373,116],{"class":37},[31,375,297],{"class":37},[31,377,378],{"class":41}," width",[31,380,290],{"class":37},[31,382,383],{"class":293}," 420",[31,385,297],{"class":37},[31,387,388],{"class":41}," height",[31,390,290],{"class":37},[31,392,393],{"class":293}," 640",[31,395,297],{"class":37},[31,397,280],{"class":100},[31,399,256],{"class":37},[31,401,402],{"class":100},"]",[31,404,237],{"class":37},[31,406,408],{"class":33,"line":407},11,[31,409,410],{"class":37},"  {\n",[31,412,414,417,419,421,424,426],{"class":33,"line":413},12,[31,415,416],{"class":41},"    locale",[31,418,290],{"class":37},[31,420,110],{"class":37},[31,422,423],{"class":55},"en",[31,425,116],{"class":37},[31,427,237],{"class":37},[31,429,431,434,436,439,442,444,446,448,450,452],{"class":33,"line":430},13,[31,432,433],{"class":41},"    renderConfig",[31,435,290],{"class":37},[31,437,438],{"class":150}," applyRenderLocale",[31,440,441],{"class":100},"(INTERACTIVE_RENDER_CONFIG",[31,443,297],{"class":37},[31,445,110],{"class":37},[31,447,423],{"class":55},[31,449,116],{"class":37},[31,451,164],{"class":100},[31,453,237],{"class":37},[31,455,457,460,462,466,469,472,474,477,480],{"class":33,"line":456},14,[31,458,459],{"class":150},"    onError",[31,461,290],{"class":37},[31,463,465],{"class":464},"sHdIc"," error",[31,467,468],{"class":45}," =>",[31,470,471],{"class":100}," console",[31,473,189],{"class":37},[31,475,476],{"class":150},"error",[31,478,479],{"class":100},"(error)",[31,481,237],{"class":37},[31,483,485],{"class":33,"line":484},15,[31,486,487],{"class":37},"  },\n",[31,489,491,493],{"class":33,"line":490},16,[31,492,164],{"class":100},[31,494,119],{"class":37},[31,496,498],{"class":33,"line":497},17,[31,499,126],{"emptyLinePlaceholder":125},[31,501,503,505,508,510,513,516],{"class":33,"line":502},18,[31,504,183],{"class":93},[31,506,507],{"class":100}," renderer",[31,509,189],{"class":37},[31,511,512],{"class":150},"prepareSvg",[31,514,515],{"class":100},"()",[31,517,119],{"class":37},[31,519,521,524,526,529,532],{"class":33,"line":520},19,[31,522,523],{"class":100},"renderer",[31,525,189],{"class":37},[31,527,528],{"class":150},"draw",[31,530,531],{"class":100},"(well)",[31,533,119],{"class":37},[535,536,537,546,552,567,573],"ul",{},[538,539,540,541,545],"li",{},"The first argument lists the panels. One panel draws the whole well; ",[209,542,544],{"href":543},"\u002Frender\u002Fguides\u002Fpanels-and-layout","Panels and layout"," splits long wells over several.",[538,547,548,551],{},[28,549,550],{},"INTERACTIVE_RENDER_CONFIG"," turns on zoom, pan, tooltips and animation.",[538,553,554,555,558,559,562,563,213],{},"The renderer's labels default to Portuguese. ",[28,556,557],{},"locale: 'en'"," with ",[28,560,561],{},"applyRenderLocale(config, 'en')"," switches every drawn word to English (",[209,564,566],{"href":565},"\u002Frender\u002Fguides\u002Flocale-and-units","Locale and units",[538,568,569,572],{},[28,570,571],{},"prepareSvg()"," builds the SVG structure and loads the texture patterns. Call it once, after the element exists.",[538,574,575,578,579,582],{},[28,576,577],{},"draw(well)"," renders the profile. Drawing errors are reported to ",[28,580,581],{},"onError",", not thrown.",[12,584,585],{},"The result looks like this:",[587,588],"well-preview",{"example":589},"extremoz-rn-barreiras-raso",[16,591,593],{"id":592},"4-redraw-on-change","4. Redraw on change",[12,595,596,597,599],{},"Call ",[28,598,528],{}," again with the new data. Layers the well no longer has are removed, and changes animate:",[21,601,603],{"className":84,"code":602,"language":86,"meta":26,"style":26},"well.well_screen.push({\n  from: 20,\n  to: 24,\n  type: 'stainless_steel',\n  diameter: 219,\n  screen_slot: 0.75,\n});\nrenderer.draw(well);\n",[28,604,605,625,636,647,663,675,687,695],{"__ignoreMap":26},[31,606,607,610,612,615,617,620,622],{"class":33,"line":34},[31,608,609],{"class":100},"well",[31,611,189],{"class":37},[31,613,614],{"class":100},"well_screen",[31,616,189],{"class":37},[31,618,619],{"class":150},"push",[31,621,154],{"class":100},[31,623,624],{"class":37},"{\n",[31,626,627,630,632,634],{"class":33,"line":122},[31,628,629],{"class":41},"  from",[31,631,290],{"class":37},[31,633,315],{"class":293},[31,635,237],{"class":37},[31,637,638,641,643,645],{"class":33,"line":129},[31,639,640],{"class":41},"  to",[31,642,290],{"class":37},[31,644,294],{"class":293},[31,646,237],{"class":37},[31,648,649,652,654,656,659,661],{"class":33,"line":136},[31,650,651],{"class":41},"  type",[31,653,290],{"class":37},[31,655,110],{"class":37},[31,657,658],{"class":55},"stainless_steel",[31,660,116],{"class":37},[31,662,237],{"class":37},[31,664,665,668,670,673],{"class":33,"line":169},[31,666,667],{"class":41},"  diameter",[31,669,290],{"class":37},[31,671,672],{"class":293}," 219",[31,674,237],{"class":37},[31,676,677,680,682,685],{"class":33,"line":270},[31,678,679],{"class":41},"  screen_slot",[31,681,290],{"class":37},[31,683,684],{"class":293}," 0.75",[31,686,237],{"class":37},[31,688,689,691,693],{"class":33,"line":275},[31,690,256],{"class":37},[31,692,164],{"class":100},[31,694,119],{"class":37},[31,696,697,699,701,703,705],{"class":33,"line":331},[31,698,523],{"class":100},[31,700,189],{"class":37},[31,702,528],{"class":150},[31,704,531],{"class":100},[31,706,119],{"class":37},[12,708,709,710,713,714,717,718,722],{},"To keep animations stable while editing, give array items a ",[28,711,712],{},"key"," (see ",[28,715,716],{},"RenderableWell"," in the ",[209,719,721],{"href":720},"\u002Frender\u002Fapi\u002Fclasses\u002FWellRenderer","API reference","). Keys are for the renderer only; strip them before saving the file.",[12,724,725,728,729,731,732,189],{},[28,726,727],{},"renderer.clear()"," empties every panel and keeps the structure, so the next ",[28,730,528],{}," needs no new ",[28,733,512],{},[16,735,737],{"id":736},"next","Next",[535,739,740,744,750],{},[538,741,742],{},[209,743,544],{"href":543},[538,745,746],{},[209,747,749],{"href":748},"\u002Frender\u002Fguides\u002Ftheming","Theming",[538,751,752],{},[209,753,755],{"href":754},"\u002Frender\u002Fguides\u002Fframeworks","Using it in a framework",[757,758,759],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":26,"searchDepth":122,"depth":122,"links":761},[762,763,764,765,766],{"id":18,"depth":122,"text":19},{"id":80,"depth":122,"text":81},{"id":216,"depth":122,"text":217},{"id":592,"depth":122,"text":593},{"id":736,"depth":122,"text":737},"Draw a .well file into an SVG element with WellRenderer, from parsing the file to redrawing when the data changes.","md",{},"\u002Frender\u002Fgetting-started\u002Ffirst-use","---\ntitle: First use\ndescription: Draw a .well file into an SVG element with WellRenderer, from parsing the file to redrawing when the data changes.\n---\n\nThis page draws a well on a plain HTML page. The same steps apply inside any framework.\n\n## 1. An SVG element\n\n```html\n\u003Csvg id=\"profile\">\u003C\u002Fsvg>\n```\n\nThe renderer sizes the element itself: its width is the panel `width` plus the left and right margins, and its height the panel `height` plus the top and bottom margins.\n\n## 2. Parse the file\n\n```ts\nimport { parseWell } from '@welldot\u002Fcore';\n\n\u002F\u002F a file served with your page, e.g. an example well downloaded from welldot.org\u002Fexamples\nconst response = await fetch('\u002Fwells\u002Fextremoz-rn-barreiras-raso.well');\nconst well = parseWell(await response.text());\n```\n\n`parseWell` validates the file and upgrades v1 files, so the renderer always receives a valid v2 `Well` ([Parsing and validating](\u002Fcore\u002Fguides\u002Fparsing-and-validating)).\n\n## 3. Create the renderer and draw\n\n```ts\nimport {\n  INTERACTIVE_RENDER_CONFIG,\n  WellRenderer,\n  applyRenderLocale,\n} from '@welldot\u002Frender';\n\nconst margins = { top: 24, right: 16, bottom: 20, left: 48 };\n\nconst renderer = new WellRenderer(\n  [{ selector: '#profile', width: 420, height: 640, margins }],\n  {\n    locale: 'en',\n    renderConfig: applyRenderLocale(INTERACTIVE_RENDER_CONFIG, 'en'),\n    onError: error => console.error(error),\n  },\n);\n\nawait renderer.prepareSvg();\nrenderer.draw(well);\n```\n\n- The first argument lists the panels. One panel draws the whole well; [Panels and layout](\u002Frender\u002Fguides\u002Fpanels-and-layout) splits long wells over several.\n- `INTERACTIVE_RENDER_CONFIG` turns on zoom, pan, tooltips and animation.\n- The renderer's labels default to Portuguese. `locale: 'en'` with `applyRenderLocale(config, 'en')` switches every drawn word to English ([Locale and units](\u002Frender\u002Fguides\u002Flocale-and-units)).\n- `prepareSvg()` builds the SVG structure and loads the texture patterns. Call it once, after the element exists.\n- `draw(well)` renders the profile. Drawing errors are reported to `onError`, not thrown.\n\nThe result looks like this:\n\n::well-preview{example=\"extremoz-rn-barreiras-raso\"}\n::\n\n## 4. Redraw on change\n\nCall `draw` again with the new data. Layers the well no longer has are removed, and changes animate:\n\n```ts\nwell.well_screen.push({\n  from: 20,\n  to: 24,\n  type: 'stainless_steel',\n  diameter: 219,\n  screen_slot: 0.75,\n});\nrenderer.draw(well);\n```\n\nTo keep animations stable while editing, give array items a `key` (see `RenderableWell` in the [API reference](\u002Frender\u002Fapi\u002Fclasses\u002FWellRenderer)). Keys are for the renderer only; strip them before saving the file.\n\n`renderer.clear()` empties every panel and keeps the structure, so the next `draw` needs no new `prepareSvg`.\n\n## Next\n\n- [Panels and layout](\u002Frender\u002Fguides\u002Fpanels-and-layout)\n- [Theming](\u002Frender\u002Fguides\u002Ftheming)\n- [Using it in a framework](\u002Frender\u002Fguides\u002Fframeworks)\n",{"title":7,"description":767},"render\u002F1.getting-started\u002F2.first-use","2tcxIa11_fg_fIjJOnqaAo1M0I83wvKY5Ogw6K0tX9c",{"docs_en":776,"spec":1080,"changelogs":1130},[777,797,816,868,978,1022],{"title":778,"path":779,"stem":780,"children":781},"Ai","\u002Fai","ai",[782,785,789,793],{"title":783,"path":779,"stem":784},"Introduction","ai\u002Findex",{"title":786,"path":787,"stem":788},"Converting reports with an assistant","\u002Fai\u002Fconversion-skill","ai\u002Fconversion-skill",{"title":790,"path":791,"stem":792},"llms.txt and Markdown pages","\u002Fai\u002Fllms","ai\u002Fllms",{"title":794,"path":795,"stem":796},"MCP server","\u002Fai\u002Fmcp","ai\u002Fmcp",{"title":798,"path":799,"stem":800,"children":801},"Contributing","\u002Fcontributing","contributing",[802,804,808,812],{"title":783,"path":799,"stem":803},"contributing\u002Findex",{"title":805,"path":806,"stem":807},"Writing docs","\u002Fcontributing\u002Fwriting-docs","contributing\u002F1.writing-docs",{"title":809,"path":810,"stem":811},"Update rules","\u002Fcontributing\u002Fupdate-rules","contributing\u002F2.update-rules",{"title":813,"path":814,"stem":815},"Content components","\u002Fcontributing\u002Fcomponents","contributing\u002Fcomponents",{"title":817,"path":818,"stem":819,"children":820},"Core","\u002Fcore","core",[821,823,836,863],{"title":783,"path":818,"stem":822},"core\u002Findex",{"title":824,"path":825,"stem":826,"children":827,"page":835},"Getting Started","\u002Fcore\u002Fgetting-started","core\u002F1.getting-started",[828,832],{"title":829,"path":830,"stem":831},"Installation","\u002Fcore\u002Fgetting-started\u002Finstallation","core\u002F1.getting-started\u002F1.installation",{"title":7,"path":833,"stem":834},"\u002Fcore\u002Fgetting-started\u002Ffirst-use","core\u002F1.getting-started\u002F2.first-use",false,{"title":837,"path":838,"stem":839,"children":840,"page":835},"Guides","\u002Fcore\u002Fguides","core\u002F2.guides",[841,843,847,851,855,859],{"title":212,"path":211,"stem":842},"core\u002F2.guides\u002F1.parsing-and-validating",{"title":844,"path":845,"stem":846},"Serializing and sharing","\u002Fcore\u002Fguides\u002Fserializing-and-sharing","core\u002F2.guides\u002F2.serializing-and-sharing",{"title":848,"path":849,"stem":850},"Unit conversion","\u002Fcore\u002Fguides\u002Funit-conversion","core\u002F2.guides\u002F3.unit-conversion",{"title":852,"path":853,"stem":854},"Vocabularies and textures","\u002Fcore\u002Fguides\u002Fvocabularies-and-textures","core\u002F2.guides\u002F4.vocabularies-and-textures",{"title":856,"path":857,"stem":858},"Water quality vocabulary","\u002Fcore\u002Fguides\u002Fwater-quality-vocabulary","core\u002F2.guides\u002F5.water-quality-vocabulary",{"title":860,"path":861,"stem":862},"Versions and time zones","\u002Fcore\u002Fguides\u002Fversions-and-time-zones","core\u002F2.guides\u002F6.versions-and-time-zones",{"title":721,"path":864,"stem":865,"children":866},"\u002Fcore\u002Fapi","core\u002Fapi\u002Findex",[867],{"title":721,"path":864,"stem":865},{"title":869,"path":870,"stem":871,"children":872},"Format","\u002Fformat","format",[873,875,895,924,948,968,974],{"title":783,"path":870,"stem":874},"format\u002Findex",{"title":824,"path":876,"stem":877,"children":878,"page":835},"\u002Fformat\u002Fgetting-started","format\u002F1.getting-started",[879,883,887,891],{"title":880,"path":881,"stem":882},"What is .well?","\u002Fformat\u002Fgetting-started\u002Fwhat-is-well","format\u002F1.getting-started\u002F1.what-is-well",{"title":884,"path":885,"stem":886},"For geologists","\u002Fformat\u002Fgetting-started\u002Ffor-geologists","format\u002F1.getting-started\u002F2.for-geologists",{"title":888,"path":889,"stem":890},"For developers","\u002Fformat\u002Fgetting-started\u002Ffor-developers","format\u002F1.getting-started\u002F3.for-developers",{"title":892,"path":893,"stem":894},"Your first .well file","\u002Fformat\u002Fgetting-started\u002Ffirst-well-file","format\u002F1.getting-started\u002F4.first-well-file",{"title":896,"path":897,"stem":898,"children":899,"page":835},"Concepts","\u002Fformat\u002Fconcepts","format\u002F2.concepts",[900,904,908,912,916,920],{"title":901,"path":902,"stem":903},"Depths and intervals","\u002Fformat\u002Fconcepts\u002Fdepths-and-intervals","format\u002F2.concepts\u002F1.depths-and-intervals",{"title":905,"path":906,"stem":907},"Units and precision","\u002Fformat\u002Fconcepts\u002Funits-and-precision","format\u002F2.concepts\u002F2.units-and-precision",{"title":909,"path":910,"stem":911},"Vocabularies","\u002Fformat\u002Fconcepts\u002Fvocabularies","format\u002F2.concepts\u002F3.vocabularies",{"title":913,"path":914,"stem":915},"Profiles","\u002Fformat\u002Fconcepts\u002Fprofiles","format\u002F2.concepts\u002F4.profiles",{"title":917,"path":918,"stem":919},"Versions and deprecation","\u002Fformat\u002Fconcepts\u002Fversions-and-deprecation","format\u002F2.concepts\u002F5.versions-and-deprecation",{"title":921,"path":922,"stem":923},"Extensibility","\u002Fformat\u002Fconcepts\u002Fextensibility","format\u002F2.concepts\u002F6.extensibility",{"title":837,"path":925,"stem":926,"children":927,"page":835},"\u002Fformat\u002Fguides","format\u002F3.guides",[928,932,936,940,944],{"title":929,"path":930,"stem":931},"Writing a .well by hand","\u002Fformat\u002Fguides\u002Fwriting-by-hand","format\u002F3.guides\u002F1.writing-by-hand",{"title":933,"path":934,"stem":935},"Converting a report","\u002Fformat\u002Fguides\u002Fconverting-a-report","format\u002F3.guides\u002F2.converting-a-report",{"title":937,"path":938,"stem":939},"Validating","\u002Fformat\u002Fguides\u002Fvalidating","format\u002F3.guides\u002F3.validating",{"title":941,"path":942,"stem":943},"Extending for your own needs","\u002Fformat\u002Fguides\u002Fextending","format\u002F3.guides\u002F4.extending",{"title":945,"path":946,"stem":947},"Building an editor or database on .well","\u002Fformat\u002Fguides\u002Fbuilding-on-well","format\u002F3.guides\u002F5.building-on-well",{"title":949,"path":950,"stem":951,"children":952},"Overview","\u002Fformat\u002Freference","format\u002F4.reference\u002Findex",[953,954,958,962],{"title":949,"path":950,"stem":951},{"title":955,"path":956,"stem":957},"JSON Schema","\u002Fformat\u002Freference\u002Fjson-schema","format\u002F4.reference\u002F1.json-schema",{"title":959,"path":960,"stem":961},"Example wells","\u002Fformat\u002Freference\u002Fexamples","format\u002F4.reference\u002F2.examples",{"title":963,"path":964,"stem":965,"children":966},"Object reference","\u002Fformat\u002Freference\u002Fobjects","format\u002Freference\u002Fobjects\u002Findex",[967],{"title":963,"path":964,"stem":965},{"title":969,"path":970,"stem":971,"children":972},"About the spec","\u002Fformat\u002Fspec","format\u002F5.spec\u002Findex",[973],{"title":969,"path":970,"stem":971},{"title":975,"path":976,"stem":977},"Changelog","\u002Fformat\u002Fchangelog","format\u002F6.changelog",{"title":979,"path":980,"stem":981,"children":982},"Render","\u002Frender","render",[983,985,993,1017],{"title":783,"path":980,"stem":984},"render\u002Findex",{"title":824,"path":986,"stem":987,"children":988,"page":835},"\u002Frender\u002Fgetting-started","render\u002F1.getting-started",[989,992],{"title":829,"path":990,"stem":991},"\u002Frender\u002Fgetting-started\u002Finstallation","render\u002F1.getting-started\u002F1.installation",{"title":7,"path":770,"stem":773},{"title":837,"path":994,"stem":995,"children":996,"page":835},"\u002Frender\u002Fguides","render\u002F2.guides",[997,999,1003,1005,1007,1011,1015],{"title":544,"path":543,"stem":998},"render\u002F2.guides\u002F1.panels-and-layout",{"title":1000,"path":1001,"stem":1002},"Layers and labels","\u002Frender\u002Fguides\u002Flayers-and-labels","render\u002F2.guides\u002F2.layers-and-labels",{"title":749,"path":748,"stem":1004},"render\u002F2.guides\u002F3.theming",{"title":566,"path":565,"stem":1006},"render\u002F2.guides\u002F4.locale-and-units",{"title":1008,"path":1009,"stem":1010},"Legends","\u002Frender\u002Fguides\u002Flegends","render\u002F2.guides\u002F5.legends",{"title":1012,"path":1013,"stem":1014},"Zoom, pan and highlights","\u002Frender\u002Fguides\u002Finteraction","render\u002F2.guides\u002F6.interaction",{"title":755,"path":754,"stem":1016},"render\u002F2.guides\u002F7.frameworks",{"title":721,"path":1018,"stem":1019,"children":1020},"\u002Frender\u002Fapi","render\u002Fapi\u002Findex",[1021],{"title":721,"path":1018,"stem":1019},{"title":1023,"path":1024,"stem":1025,"children":1026},"Utils","\u002Futils","utils",[1027,1029,1039,1075],{"title":783,"path":1024,"stem":1028},"utils\u002Findex",{"title":824,"path":1030,"stem":1031,"children":1032,"page":835},"\u002Futils\u002Fgetting-started","utils\u002F1.getting-started",[1033,1036],{"title":829,"path":1034,"stem":1035},"\u002Futils\u002Fgetting-started\u002Finstallation","utils\u002F1.getting-started\u002F1.installation",{"title":7,"path":1037,"stem":1038},"\u002Futils\u002Fgetting-started\u002Ffirst-use","utils\u002F1.getting-started\u002F2.first-use",{"title":837,"path":1040,"stem":1041,"children":1042,"page":835},"\u002Futils\u002Fguides","utils\u002F2.guides",[1043,1047,1051,1055,1059,1063,1067,1071],{"title":1044,"path":1045,"stem":1046},"Geometry and volumes","\u002Futils\u002Fguides\u002Fgeometry-and-volumes","utils\u002F2.guides\u002F1.geometry-and-volumes",{"title":1048,"path":1049,"stem":1050},"Water levels and pumping tests","\u002Futils\u002Fguides\u002Fpumping-tests","utils\u002F2.guides\u002F2.pumping-tests",{"title":1052,"path":1053,"stem":1054},"Permits","\u002Futils\u002Fguides\u002Fpermits","utils\u002F2.guides\u002F3.permits",{"title":1056,"path":1057,"stem":1058},"Operation and production","\u002Futils\u002Fguides\u002Foperation","utils\u002F2.guides\u002F4.operation",{"title":1060,"path":1061,"stem":1062},"Water quality","\u002Futils\u002Fguides\u002Fwater-quality","utils\u002F2.guides\u002F5.water-quality",{"title":1064,"path":1065,"stem":1066},"Logger import","\u002Futils\u002Fguides\u002Flogger-import","utils\u002F2.guides\u002F6.logger-import",{"title":1068,"path":1069,"stem":1070},"SIAGAS import","\u002Futils\u002Fguides\u002Fsiagas-import","utils\u002F2.guides\u002F7.siagas-import",{"title":1072,"path":1073,"stem":1074},"Formatting","\u002Futils\u002Fguides\u002Fformatting","utils\u002F2.guides\u002F8.formatting",{"title":721,"path":1076,"stem":1077,"children":1078},"\u002Futils\u002Fapi","utils\u002Fapi\u002Findex",[1079],{"title":721,"path":1076,"stem":1077},[1081],{"title":869,"path":870,"stem":871,"children":1082,"page":835},[1083],{"title":1084,"path":970,"stem":1085,"children":1086,"page":835},"Spec","format\u002Fspec",[1087,1096,1105],{"title":1088,"path":1089,"stem":1090,"children":1091,"page":835},"Reference","\u002Fformat\u002Fspec\u002Freference","format\u002Fspec\u002Freference",[1092],{"title":1093,"path":1094,"stem":1095},"FGDC Texture Patterns Reference","\u002Fformat\u002Fspec\u002Freference\u002Ffgdc-textures","format\u002Fspec\u002Freference\u002Ffgdc-textures",{"title":1097,"path":1098,"stem":1099,"children":1100,"page":835},"V1","\u002Fformat\u002Fspec\u002Fv1","format\u002Fspec\u002Fv1",[1101],{"title":1102,"path":1103,"stem":1104},".well File Format Specification","\u002Fformat\u002Fspec\u002Fv1\u002Fwell-format","format\u002Fspec\u002Fv1\u002Fwell-format",{"title":1106,"path":1107,"stem":1108,"children":1109,"page":835},"V2","\u002Fformat\u002Fspec\u002Fv2","format\u002Fspec\u002Fv2",[1110,1114,1118,1122,1126],{"title":1111,"path":1112,"stem":1113},".well File Format Specification — Version 2.4: Format Reference","\u002Fformat\u002Fspec\u002Fv2\u002Fformat-reference","format\u002Fspec\u002Fv2\u002Fformat-reference",{"title":1115,"path":1116,"stem":1117},".well File Format Specification — Version 2.4: Interoperability","\u002Fformat\u002Fspec\u002Fv2\u002Finteroperability","format\u002Fspec\u002Fv2\u002Finteroperability",{"title":1119,"path":1120,"stem":1121},".well File Format Specification — Version 2.4: Object Schemas","\u002Fformat\u002Fspec\u002Fv2\u002Fobject-schemas","format\u002Fspec\u002Fv2\u002Fobject-schemas",{"title":1123,"path":1124,"stem":1125},".well File Format Specification — Version 2.4: Overview","\u002Fformat\u002Fspec\u002Fv2\u002Foverview","format\u002Fspec\u002Fv2\u002Foverview",{"title":1127,"path":1128,"stem":1129},".well File Format Specification — Version 2.4: Water Quality","\u002Fformat\u002Fspec\u002Fv2\u002Fwater-quality","format\u002Fspec\u002Fv2\u002Fwater-quality",[1131,1136,1141],{"title":817,"path":818,"stem":819,"children":1132,"page":835},[1133],{"title":113,"path":1134,"stem":1135},"\u002Fcore\u002Fchangelog","core\u002FCHANGELOG",{"title":979,"path":980,"stem":981,"children":1137,"page":835},[1138],{"title":263,"path":1139,"stem":1140},"\u002Frender\u002Fchangelog","render\u002FCHANGELOG",{"title":1023,"path":1024,"stem":1025,"children":1142,"page":835},[1143],{"title":1144,"path":1145,"stem":1146},"@welldot\u002Futils","\u002Futils\u002Fchangelog","utils\u002FCHANGELOG",1793050494587]