[{"data":1,"prerenderedAt":345},["ShallowReactive",2],{"landing":3,"github-stars":344},{"announcement":4,"features":24,"faq":224},{"id":5,"extension":6,"headline":7,"hidden":8,"href":9,"linkLabel":10,"meta":11,"pill":19,"stem":20,"summary":21,"version":22,"__hash__":23},"announcement_en\u002Fannouncement\u002Fen.md","md","Rename and recolor your tags",false,"https:\u002F\u002Fgithub.com\u002Foxynote\u002Foxynote","See it on GitHub",{"body":12},{"type":13,"value":14,"toc":15},"minimark",[],{"title":16,"searchDepth":17,"depth":17,"links":18},"",2,[],"v0.9.2","announcement\u002Fen","— plus variables from 0.9, so each reader can set their own values in metric queries.","0.9.2","-2_s3_q_7wXcCQSn5YHmgEuBhV2Iu7Ow7E5L7Lw1UDc",[25,48,78,99,135,158,178,198],{"id":26,"title":27,"body":28,"button":39,"extension":6,"figure":41,"image":42,"imageAlt":43,"imageDark":44,"meta":45,"stem":46,"__hash__":47},"features_en\u002Ffeatures\u002Fen\u002F01.charts.md","Where Your Systems Live",{"type":13,"value":29,"toc":37},[30,34],[31,32,33],"p",{},"Oxynote is a workspace for the systems you run, alone or with a team. Architecture notes, API references, on-call steps and release checklists sit in one page tree, and everyone you invite can edit it at the same time.",[31,35,36],{},"Those pages can also query Prometheus, PostgreSQL, MySQL or MariaDB, so live metrics show up right where you write about them.",{"title":16,"searchDepth":17,"depth":17,"links":38},[],{"label":40,"href":9},"View on GitHub","Your system, with subtitles","\u002Fimages\u002Ffeatures\u002Fchart-and-explanation-light.webp","An Oxynote page with a live latency chart, an explanation and a shell command","\u002Fimages\u002Ffeatures\u002Fchart-and-explanation-dark.webp",{},"features\u002Fen\u002F01.charts","1BBBWV09W5c81ExpZHL9NVtRj1_RjxeFYSR6P1G9lvI",{"id":49,"title":50,"body":51,"button":70,"extension":6,"figure":71,"image":72,"imageAlt":73,"imageDark":74,"meta":75,"stem":76,"__hash__":77},"features_en\u002Ffeatures\u002Fen\u002F02.queries.md","Charts That Breathe",{"type":13,"value":52,"toc":68},[53,65],[31,54,55,56,60,61,64],{},"The editor redraws the metric chart as you type a PromQL or SQL query, with thresholds and units right next to it. (Grafana macros such as ",[57,58,59],"code",{},"$__rate_interval"," and ",[57,62,63],{},"$__timeFilter"," work here too, so a query you already trust usually moves over with a paste.)",[31,66,67],{},"No metric yet? Pick a pattern such as latency or error rate, and the chart draws simulated data until the real series arrives.",{"title":16,"searchDepth":17,"depth":17,"links":69},[],null,"Query in, chart out","\u002Fimages\u002Ffeatures\u002Fchart-editor-light.webp","The chart editor with a PromQL query, a threshold and a live bar chart","\u002Fimages\u002Ffeatures\u002Fchart-editor-dark.webp",{},"features\u002Fen\u002F02.queries","7t2gsUz96vSK1nkiTEaT17G7neqDlrwmn0QerDwU6-E",{"id":79,"title":80,"body":81,"button":70,"extension":6,"figure":92,"image":93,"imageAlt":94,"imageDark":95,"meta":96,"stem":97,"__hash__":98},"features_en\u002Ffeatures\u002Fen\u002F03.variables.md","Variables That Follow You",{"type":13,"value":82,"toc":90},[83],[31,84,85,86,89],{},"Set ",[57,87,88],{},"$metric_range"," to the last six hours once, and each page that uses it shows the last six hours from then on. Variables like that are defined once and shared across the whole workspace, so any query on any page can read them. The values stay personal, so whatever you pick changes your queries and nobody else's.",{"title":16,"searchDepth":17,"depth":17,"links":91},[],"The charts follow your pick","\u002Fimages\u002Ffeatures\u002Fdashboard-light.webp","The variables panel next to a page of live metric charts","\u002Fimages\u002Ffeatures\u002Fdashboard-dark.webp",{},"features\u002Fen\u002F03.variables","6PZV1x4koSiHo-0rHGATAabZYWhzrUsblE0g2YfGcD4",{"id":100,"title":101,"body":102,"button":70,"extension":6,"figure":128,"image":129,"imageAlt":130,"imageDark":131,"meta":132,"stem":133,"__hash__":134},"features_en\u002Ffeatures\u002Fen\u002F04.blocks.md","The Whole Editor in One Menu",{"type":13,"value":103,"toc":126},[104,111],[31,105,106,107,110],{},"Type ",[57,108,109],{},"\u002F"," and that is the editor: headings, lists, checklists, code, callouts, images, files, Figma embeds, Mermaid diagrams, Stripe-style API docs and live metrics. It all works out of the box, and the settings are kept to a minimum on purpose.",[31,112,113,114,117,118,121,122,125],{},"Markdown shortcuts like ",[57,115,116],{},"##"," work too, and a few go further: ",[57,119,120],{},"%%"," drops in a live metric chart, and ",[57,123,124],{},"||"," starts a Stripe-style API doc.",{"title":16,"searchDepth":17,"depth":17,"links":127},[],"Any block, one slash away","\u002Fimages\u002Ffeatures\u002Fslash-command-light.webp","The block menu listing headings, lists, code, diagrams, API docs and live metrics","\u002Fimages\u002Ffeatures\u002Fslash-command-dark.webp",{},"features\u002Fen\u002F04.blocks","8gNJd8htZutu0RhNyTQko2uKa5ZLbnOTBTOEo_awMqo",{"id":136,"title":137,"body":138,"button":70,"extension":6,"figure":151,"image":152,"imageAlt":153,"imageDark":154,"meta":155,"stem":156,"__hash__":157},"features_en\u002Ffeatures\u002Fen\u002F05.search.md","Search Down to the Line",{"type":13,"value":139,"toc":149},[140,146],[31,141,142,145],{},[57,143,144],{},"⌘K"," searches the whole workspace, down to a single line in a code block or a diagram's source. Results come grouped by page, and each one says what it is, such as a Bash snippet or a time series metric chart.",[31,147,148],{},"Typos are fine. Half a remembered word usually gets you there.",{"title":16,"searchDepth":17,"depth":17,"links":150},[],"Straight to the line you meant","\u002Fimages\u002Ffeatures\u002Fsearch-box-light.webp","Search results grouped by page, with matches in text, code and a chart","\u002Fimages\u002Ffeatures\u002Fsearch-box-dark.webp",{},"features\u002Fen\u002F05.search","YKXDR8hubs91u9joyiuxQC3UGfwLCk_1MFJHMynlBbI",{"id":159,"title":160,"body":161,"button":70,"extension":6,"figure":171,"image":172,"imageAlt":173,"imageDark":174,"meta":175,"stem":176,"__hash__":177},"features_en\u002Ffeatures\u002Fen\u002F06.reviews.md","Pull Requests for Pages",{"type":13,"value":162,"toc":169},[163,166],[31,164,165],{},"Once a page is reviewable, the main branch stops taking direct edits, and changes go into a draft branch. The diff understands blocks, so a renamed API parameter and a moved chart threshold show up in red and green right where they sit.",[31,167,168],{},"Reviewers approve the draft without leaving the page. Merging is a separate step, so an approved draft can wait until the change it describes goes live.",{"title":16,"searchDepth":17,"depth":17,"links":170},[],"Red, green and ready to merge","\u002Fimages\u002Ffeatures\u002Freview-light.webp","A draft diff with removed text in red and added text in green","\u002Fimages\u002Ffeatures\u002Freview-dark.webp",{},"features\u002Fen\u002F06.reviews","8wcIj1UaAdrn5Gx_msxA3XU99bw3C9ekCNM48NoLk8I",{"id":179,"title":180,"body":181,"button":70,"extension":6,"figure":191,"image":192,"imageAlt":193,"imageDark":194,"meta":195,"stem":196,"__hash__":197},"features_en\u002Ffeatures\u002Fen\u002F07.collaboration.md","Multiplayer Pages",{"type":13,"value":182,"toc":189},[183,186],[31,184,185],{},"Everyone on a page shows up as a named cursor, along with the block they're holding, and edits from several people merge as they type. Comments attach to a single word or to a whole block.",[31,187,188],{},"New comments and replies land in your inbox, and one click there takes you to the block they're on.",{"title":16,"searchDepth":17,"depth":17,"links":190},[],"Look who else is typing","\u002Fimages\u002Ffeatures\u002Fcollaboration-light.webp","Two people editing a page at once, with a comment thread open","\u002Fimages\u002Ffeatures\u002Fcollaboration-dark.webp",{},"features\u002Fen\u002F07.collaboration","8tuNXGbYjlu4vB8aS2_R-7czZJcYfYujez9cb9fe3Gg",{"id":199,"title":200,"body":201,"button":214,"extension":6,"figure":217,"image":218,"imageAlt":219,"imageDark":220,"meta":221,"stem":222,"__hash__":223},"features_en\u002Ffeatures\u002Fen\u002F08.agents.md","Built for People, Ready for Agents",{"type":13,"value":202,"toc":212},[203,206,209],[31,204,205],{},"Oxynote is designed for people first. The interface is uncluttered, so your attention stays on the system.",[31,207,208],{},"Agents get an interface of their own. Claude Code, Codex and many others connect over MCP and read each page as structured blocks. They change only the blocks they need and never scrape the screen.",[31,210,211],{},"Their edits appear live, and on a reviewable page they wait in a draft until a person approves them. Prefer to stay in the app? Rubber Duck, the built-in assistant, does the same with the model of your choice.",{"title":16,"searchDepth":17,"depth":17,"links":213},[],{"label":215,"href":216},"Read the documentation","https:\u002F\u002Fgithub.com\u002Foxynote\u002Foxynote\u002Fblob\u002Fmain\u002Fdocs\u002Fai.md","An extra pair of hands","\u002Fimages\u002Ffeatures\u002Fmcp-light.webp","Claude Code adding a chart to an Oxynote page over MCP","\u002Fimages\u002Ffeatures\u002Fmcp-dark.webp",{},"features\u002Fen\u002F08.agents","SlVu8_LOd-hgjmEE2DEQmDQ91yA5DCz0RsTwpSL1cKs",[225,238,254,267,288,301,314,331],{"id":226,"body":227,"extension":6,"meta":234,"question":235,"stem":236,"__hash__":237},"faq_en\u002Ffaq\u002Fen\u002F01.grafana.md",{"type":13,"value":228,"toc":232},[229],[31,230,231],{},"Yes, that's the goal. Metric charts are already covered: Oxynote runs your Prometheus and SQL queries, Grafana's macros included, and puts the charts inside pages you can write around, review like a pull request and search down to the line. Logs, traces and alerting are in development.",{"title":16,"searchDepth":17,"depth":17,"links":233},[],{},"Can it replace Grafana or Datadog?","faq\u002Fen\u002F01.grafana","qiYZ79-VLB5ddl7e-K9V52d8Gw3oFeT1MbKgI4Sj3vk",{"id":239,"body":240,"extension":6,"meta":250,"question":251,"stem":252,"__hash__":253},"faq_en\u002Ffaq\u002Fen\u002F02.people.md",{"type":13,"value":241,"toc":248},[242,245],[31,243,244],{},"Because sooner or later the agent stops. Its context runs out, or it lacks the permission to touch what broke, and the incident lands back on a person. A lot of tooling now treats that person as an afterthought: either the agents will handle it, or developers are used to complexity anyway. Neither is true. That person does the rest alone, and the complexity of separate observability and internal docs platforms only adds to their exhaustion and mental load.",[31,246,247],{},"Oxynote was designed for that moment from day one. The explanation, the live metrics and the commands that fix the problem sit on one page with few settings in the way, so there is less to juggle and less to wear you down. Agents get the same context through an interface of their own, so people and agents both get more done.",{"title":16,"searchDepth":17,"depth":17,"links":249},[],{},"With AI agents doing more of the work, why build Oxynote around people?","faq\u002Fen\u002F02.people","UYqyem3tzA5CmQ2YJXSOPk6CiUJhQGTrsxk-1H4pK_4",{"id":255,"body":256,"extension":6,"meta":263,"question":264,"stem":265,"__hash__":266},"faq_en\u002Ffaq\u002Fen\u002F03.data-sources.md",{"type":13,"value":257,"toc":261},[258],[31,259,260],{},"Prometheus and SQL databases: PostgreSQL, MySQL and MariaDB. A Live Metrics block renders the query as a time series, a bar chart or a gauge. SQL sources need a read-only database user, so a page can never change your data.",{"title":16,"searchDepth":17,"depth":17,"links":262},[],{},"Which data sources work?","faq\u002Fen\u002F03.data-sources","V0ZLnKdlyOpRFaocZftBU5KlCfvp44xFdlzshRNjTD8",{"id":268,"body":269,"extension":6,"meta":284,"question":285,"stem":286,"__hash__":287},"faq_en\u002Ffaq\u002Fen\u002F04.hosted.md",{"type":13,"value":270,"toc":282},[271],[31,272,273,274,281],{},"Not yet. A cloud version is planned, and today Oxynote runs as one container on your own servers. Running from source is covered in ",[275,276,280],"a",{"href":277,"rel":278},"https:\u002F\u002Fgithub.com\u002Foxynote\u002Foxynote\u002Fblob\u002Fmain\u002FCONTRIBUTING.md",[279],"nofollow","CONTRIBUTING.md",".",{"title":16,"searchDepth":17,"depth":17,"links":283},[],{},"Is there a cloud version?","faq\u002Fen\u002F04.hosted","6fggu_IYXmUptBMw128KT3gqnibSxsiltzN0NYchm7E",{"id":289,"body":290,"extension":6,"meta":297,"question":298,"stem":299,"__hash__":300},"faq_en\u002Ffaq\u002Fen\u002F05.ai.md",{"type":13,"value":291,"toc":295},[292],[31,293,294],{},"No. The AI assistant stays off until you set it up, and the MCP server for outside agents is optional too. The rest of Oxynote works without either.",{"title":16,"searchDepth":17,"depth":17,"links":296},[],{},"Do I need AI to use it?","faq\u002Fen\u002F05.ai","bLqvoTzKyiLpgVQi0wLyHDHdsZ5hqmnoHMMklVPow0Y",{"id":302,"body":303,"extension":6,"meta":310,"question":311,"stem":312,"__hash__":313},"faq_en\u002Ffaq\u002Fen\u002F06.solo.md",{"type":13,"value":304,"toc":308},[305],[31,306,307],{},"Yes. A workspace works fine with one person, and when you do invite others, a self-hosted install has no member limit.",{"title":16,"searchDepth":17,"depth":17,"links":309},[],{},"Is it worth using by myself?","faq\u002Fen\u002F06.solo","iasR2XdvMEyqFi8DSuOCJnkOomhtgvMQPiJ0DO0NB4E",{"id":315,"body":316,"extension":6,"meta":327,"question":328,"stem":329,"__hash__":330},"faq_en\u002Ffaq\u002Fen\u002F07.licence.md",{"type":13,"value":317,"toc":325},[318],[31,319,320,321,281],{},"Apache-2.0. The source is on ",[275,322,324],{"href":9,"rel":323},[279],"GitHub",{"title":16,"searchDepth":17,"depth":17,"links":326},[],{},"What is the licence?","faq\u002Fen\u002F07.licence","obcO1ibiP-g6VUVbupCTIW39zqf37mjx7ulwGGdk6S8",{"id":332,"body":333,"extension":6,"meta":340,"question":341,"stem":342,"__hash__":343},"faq_en\u002Ffaq\u002Fen\u002F08.name.md",{"type":13,"value":334,"toc":338},[335],[31,336,337],{},"In the beginning, Oxynote was called “breathing docs”. Breathing needs oxygen, so “oxy” became the prefix and “note” followed.",{"title":16,"searchDepth":17,"depth":17,"links":339},[],{},"Why the name?","faq\u002Fen\u002F08.name","hK9pd-xF_TwCW6mc6s_DiNuUk4UjGbCWDd4hRD5KXKs",366,1792943173656]