[{"data":1,"prerenderedAt":575},["ShallowReactive",2],{"project-41853810":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":48,"post_text":50,"what":51,"said":101,"maker_in_thread":169,"shape":182,"grid":186,"attempts":537,"same_week":538,"maker_shows":18,"maker_hidden":567,"reader_version":568,"card":569},"41853810","Graphite","A Blender-inspired 2D procedural design Rust app","title","Show HN: Graphite, a Blender-inspired 2D procedural design Rust app","https:\u002F\u002Fgraphite.rs\u002F","graphite.rs","Keavon",1729031526,2024,785,128,21,3515,1,"legend","creative","vector graphics editor","web_app",[21,24,25,26,27],"procedural design","rust graphics","illustrator alternative","open source design tool","mixed",0.255,{"positive":31,"neutral":32,"mixed":33,"critical":34},27,31,3,12,73,{"idea":37,"design":40,"execution":42,"docs":43,"performance":45,"pricing":47},{"positive":38,"critical":39},10,2,{"positive":41,"critical":33},6,{"positive":18,"critical":33},{"positive":44,"critical":44},0,{"positive":44,"critical":46},4,{"positive":18,"critical":44},[49,44,49,49,33,18,44,39,33,18,18,49,33,33,33,49,33,49,33,49,33,33,33,44,33,49,33,33,39,49,33,49,33,49,33,33,18,44,49,33],5,"For the past three years I've been building what I hope will be the next Blender, tackling the lack of any good 2D design or image editing tools outside the Adobe monopoly. This was our first year participating in Google Summer of Code and this Q3 update includes the big payoff from that, covering the most progress we've made so far as a project. If you're a Rust dev, consider getting involved as we apply for the next GSoC in the new year— you could be our intern next summer :)\n\nQ3 progress report: https:\u002F\u002Fgraphite.rs\u002Fblog\u002Fgraphite-progress-report-q3-2024\u002F",{"problem":52,"audience":58,"pricing":59,"motivation":65,"time_to_build":58,"stack":69,"openness":98,"stage":99,"team_size":100},{"value":53,"source":54,"evidence":55},"Lack of good open 2D design and image editing tools outside Adobe","maker",[56],{"id":57},"post",null,{"value":60,"source":54,"evidence":61},"Donations and volunteer work; planned asset store, cloud storage and render farm services",[62],{"id":63,"by":11,"text":64},"41862205","Everything we do is bootstrapped through donations and volunteer development time. When our main other core contributor graduates in a year, we'll need the funds to hire him, so…",{"value":66,"source":54,"evidence":67},"Build the next Blender in 2D to offer an alternative to Adobe",[68],{"id":57},[70,76,82,86,92],{"value":71,"source":54,"evidence":72},"Rust",[73],{"id":74,"by":11,"text":75},"41854076","That'd be because it's all CPU-based at the moment . So your 4080 is taking a vacation while your CPU hits the gym. That's obviously not ideal, but you'll have to trust me that…",{"value":77,"source":54,"evidence":78},"Svelte",[79],{"id":80,"by":11,"text":81},"41854169","Right now, it's a custom HTML\u002FCSS\u002FTypeScript component system using Svelte built to minimize bloat. But since Graphite is a data-driven graphics app and render engine, we are…",{"value":83,"source":54,"evidence":84},"TypeScript",[85],{"id":80,"by":11,"text":81},{"value":87,"source":54,"evidence":88},"WebAssembly",[89],{"id":90,"by":11,"text":91},"41862096","Custom code will be compiled to Wasm so it's sandboxed for security purposes. First-party code that ships with Graphite, or perhaps trusted authors in the future, will be able to…",{"value":93,"source":54,"evidence":94},"WGPU",[95],{"id":96,"by":11,"text":97},"41854463","Everything will be using compute shaders for the foreseeable future. [WGPU](https:\u002F\u002Fwgpu.rs\u002F) abstracts that to work with WebGPU on browsers, DirectX\u002FVulkan on Windows, Metal on…","open_source","beta","team",{"praise":102,"objections":103,"requests":122,"questions":137,"alternatives":152},[],[104,112],{"value":105,"source":106,"evidence":107},"Slow performance because rendering is CPU-based, not GPU","commenter",[108],{"id":109,"by":110,"text":111},"41853909","lacoolj","This is really cool but I have an RTX 4080 and it's really struggling to open and subsequently manipulate the example art. Maybe just because it's in the browser?",{"value":113,"source":106,"evidence":114},"Bugs and error messages during use",[115,119],{"id":116,"by":117,"text":118},"41858793","deskr","Some suggestions: I was doing something and then suddently I got a red error message, \"The document cannot be rendered in it current state\", instructing me to click the Node…",{"id":120,"by":11,"text":121},"41861757","That's a recent regression, thanks for mentioning that. We'll get that fixed ASAP. I should also mention that the brush tool isn't well-supported and will be fully rewritten…",[123,130],{"value":124,"source":106,"evidence":125},"Desktop builds rather than web app",[126],{"id":127,"by":128,"text":129},"41853957","egypturnash","This looks neat. I’ve been using Illustrator for twenty five years and have been wishing for a node-oriented replacement of the Appearance stack a lot lately. I will have to…",{"value":131,"source":106,"evidence":132},"Scripting and API support",[133],{"id":134,"by":135,"text":136},"41855769","qwertox","This is the kind of stuff I love to see at the top of HN, that application looks absolutely professional. When searching for \"scripting\" on the pages, I don't see any scripting…",[138,145],{"value":139,"source":106,"evidence":140},"Comparison with Krita",[141],{"id":142,"by":143,"text":144},"41858954","zdw","Is there a comparison\u002Fcontrast with Krita anywhere?",{"value":146,"source":106,"evidence":147},"Why a new project instead of Inkscape",[148],{"id":149,"by":150,"text":151},"41854627","bufferoverflow","The appeal of Blender for me is not just the open-sourceness, but also the fact that everything in it is programmable. Any action you can do via UI, you can do by calling some…",[153,161,165],{"value":154,"source":106,"evidence":155},"Inkscape",[156,160],{"id":157,"by":158,"text":159},"41854391","mightyham","Congrats on releasing such a complex tool, that's a big achievement. Someday, I'd like to try my hand at making my own vector graphics tool that contains a constraint solver. I…",{"id":149,"by":150,"text":151},{"value":162,"source":106,"evidence":163},"Adobe Illustrator",[164],{"id":127,"by":128,"text":129},{"value":166,"source":106,"evidence":167},"Krita",[168],{"id":142,"by":143,"text":144},{"comments":170,"answered":171,"key":172},37,20,[173,176,179],{"id":174,"text":175},"41854442","Definitely! And in fact, that is on our [roadmap](https:\u002F\u002Fgraphite.rs\u002Ffeatures\u002F#:~:text=CAD%2Dlike%20constraint%20relationships). Maybe you could get involved instead of making…",{"id":177,"text":178},"41854098","I'm eager for that feature too! The node graph engine recently got the ability to represent that concept, so now I just need to find the time to design and build the UI for it. I…",{"id":180,"text":181},"41861912","Ah yes, good find: the stroke node can only apply to vector data, but when you use the Circular Repeat node, it now produces group data (as it should have always done). The fix…",{"commenters":183,"max_depth":184,"maker_replies":170,"first_comment_mins":39,"lifespan_hours":185},63,7,237,[187,191,195,199,201,204,207,210,213,215,217,219,222,226,228,230,232,234,235,238,241,244,246,250,252,256,258,261,264,266,269,271,273,275,279,281,283,286,289,291,293,296,299,301,303,306,310,313,316,319,322,325,328,330,332,334,336,339,341,344,348,352,354,356,358,360,362,364,367,369,371,374,376,378,380,384,386,390,392,397,399,401,405,407,409,412,415,416,419,420,423,427,431,434,437,439,443,446,448,450,454,456,460,463,465,469,471,474,478,482,485,487,489,492,493,496,498,500,502,504,507,511,516,520,524,529,531,533],[188,44,44,189,190,44],"41853859","commenter\u002Fneutral\u002Fnone","dang",[192,18,49,193,194,44],"41855313","project\u002Fpositive\u002Fnone","wg0",[196,18,44,197,198,44],"41856307","other\u002Fneutral\u002Fnone","jokethrowaway",[200,18,44,197,194,44],"41856817",[202,18,44,189,203,44],"41860020","ChadNauseam",[205,18,44,197,206,44],"41858409","crabmusket",[208,18,44,197,209,44],"41858774","rachofsunshine",[211,18,44,197,212,44],"41859206","swatcoder",[157,39,49,214,158,44],"project\u002Fpositive\u002Fidea",[174,39,44,216,11,18],"maker\u002Fneutral\u002Fnone",[218,39,49,214,158,44],"41854459",[220,39,49,214,221,44],"41857956","kakkun",[223,39,33,224,225,44],"41858229","project\u002Fneutral\u002Fidea","WillAdams",[227,39,33,224,158,44],"41860738",[229,39,33,224,225,44],"41860836",[127,33,33,231,128,44],"project\u002Fmixed\u002Fnone",[233,33,33,224,128,44],"41854031",[177,33,44,224,11,18],[236,33,18,237,128,44],"41859150","project\u002Fcritical\u002Fdesign",[239,33,44,197,240,44],"41854127","skavi",[242,33,44,197,243,44],"41854934","dumbo-octopus",[245,33,44,197,128,44],"41858501",[247,33,33,248,249,44],"41897666","project\u002Fneutral\u002Fnone","ktm5j",[116,46,18,251,117,44],"project\u002Fcritical\u002Fexecution",[253,46,33,254,255,44],"41859440","project\u002Fmixed\u002Fexecution","noisy_boy",[180,46,44,257,11,18],"maker\u002Fneutral\u002Fexecution",[259,46,33,260,255,44],"41867837","project\u002Fneutral\u002Fdocs",[262,46,44,263,11,18],"41873223","maker\u002Fneutral\u002Fdocs",[265,46,44,257,11,18],"41865301",[267,46,18,251,268,44],"41860570","altilunium",[120,46,44,270,11,18],"maker\u002Fneutral\u002Fperformance",[272,46,44,257,11,18],"41865362",[274,46,44,257,11,18],"41865418",[276,46,33,277,278,44],"41870087","project\u002Fneutral\u002Fdesign","two_handfuls",[280,46,18,251,117,44],"41870836",[282,46,44,257,11,18],"41873159",[284,46,49,285,117,44],"41870855","project\u002Fpositive\u002Fdesign",[287,46,44,288,11,18],"41873166","maker\u002Fneutral\u002Fdesign",[290,46,33,277,117,44],"41874567",[292,46,44,288,11,18],"41877520",[294,49,33,224,295,44],"41854144","bangaladore",[297,49,44,298,11,18],"41854195","maker\u002Fneutral\u002Fidea",[300,49,33,224,206,44],"41854958",[302,49,44,224,11,18],"41855028",[304,49,33,248,305,44],"41856619","timeon",[307,49,18,308,309,44],"41861397","project\u002Fcritical\u002Fidea","germandiago",[311,49,33,248,312,44],"41854536","underbiding",[314,49,49,214,315,44],"41858032","mirekrusin",[317,49,49,214,318,44],"41858785","aDyslecticCrow",[320,41,49,285,321,44],"41858671","TechSquidTV",[323,184,49,193,324,44],"41854698","emmanueloga_",[326,184,33,248,327,44],"41855466","devsda",[329,184,44,216,11,18],"41855508",[331,184,33,248,327,44],"41855706",[333,184,44,216,11,18],"41855739",[335,184,44,216,11,18],"41855484",[337,184,49,214,338,44],"41855973","nicoburns",[340,184,44,298,11,18],"41856011",[342,184,49,285,343,44],"41862452","OnionBlender",[345,346,18,237,347,44],"41859135",8,"cozzyd",[349,350,49,193,351,44],"41858930",9,"short_sells_poo",[353,38,49,193,318,44],"41858747",[134,355,49,193,135,44],11,[357,355,44,224,11,18],"41855914",[359,355,33,248,225,44],"41858249",[361,355,44,248,11,18],"41862107",[363,355,33,224,225,44],"41862220",[365,355,33,248,366,44],"41858406","bschwindHN",[90,355,44,368,11,18],"project\u002Fneutral\u002Fperformance",[370,355,44,189,366,44],"41868848",[372,34,33,224,373,44],"41863776","lavela",[375,34,44,298,11,18],"41863818",[149,377,33,224,150,44],13,[379,377,44,298,11,18],"41855416",[381,377,44,382,383,44],"41856245","commenter\u002Fneutral\u002Fidea","lionkor",[385,377,44,216,11,18],"41856302",[387,377,44,388,389,44],"41859361","other\u002Fneutral\u002Fidea","_flux",[391,377,44,388,11,18],"41862143",[393,394,33,395,396,44],"41860222",14,"project\u002Fmixed\u002Fperformance","fwip",[398,394,44,298,11,18],"41862373",[400,394,49,214,396,44],"41863830",[402,403,49,404,117,44],"41858722",15,"maker\u002Fpositive\u002Fdesign",[406,403,44,288,11,18],"41862121",[408,403,33,248,117,44],"41874600",[410,411,49,285,383,44],"41856234",16,[109,413,18,414,110,44],17,"project\u002Fcritical\u002Fperformance",[74,413,44,270,11,18],[417,413,33,368,418,44],"41854406","john01dav",[96,413,44,270,11,18],[421,413,18,414,422,44],"41857013","123pie123",[424,425,49,214,426,44],"41855792",18,"eternityforest",[428,429,18,414,430,44],"41856599",19,"virtualritz",[432,171,49,214,433,44],"41857873","kranke155",[435,16,33,277,436,44],"41854972","dzaima",[438,16,44,216,11,18],"41855455",[440,441,49,193,442,44],"41855527",22,"martin_henk",[444,445,33,224,225,44],"41857716",23,[447,445,44,189,225,44],"41862227",[449,445,44,216,11,18],"41862241",[451,452,33,216,453,44],"41858569",24,"bethemoly",[63,452,44,455,11,18],"maker\u002Fneutral\u002Fpricing",[457,452,49,458,459,44],"41876160","project\u002Fpositive\u002Fpricing","joelignaatius",[461,462,49,193,203,44],"41854952",25,[464,462,44,248,11,18],"41855394",[466,467,18,237,468,44],"41859612",26,"handity",[470,467,44,216,11,18],"41862153",[472,31,33,248,473,44],"41948700","conaclos",[475,476,49,193,477,44],"41854894",28,"nassimm",[479,480,33,368,481,44],"41858259",29,"FrustratedMonky",[483,480,33,368,484,44],"41858289","hucker",[142,486,33,248,143,44],30,[488,486,44,216,11,18],"41862297",[490,32,33,216,491,44],"41854118","adastra22",[80,32,44,288,11,18],[494,32,33,288,495,44],"41855043","airstrike",[497,32,44,288,11,18],"41855448",[499,32,18,414,491,44],"41856096",[501,32,33,270,495,44],"41860214",[503,32,44,189,491,44],"41872450",[505,32,44,506,495,44],"41882858","commenter\u002Fneutral\u002Fperformance",[508,509,44,197,510,44],"41859118",32,"anthk",[512,513,49,514,515,44],"41857589",33,"maker\u002Fpositive\u002Fexecution","Vox_Leone",[517,518,49,214,519,44],"41854538",34,"senectus1",[521,522,49,285,523,44],"41855545",35,"revskill",[525,526,49,527,528,44],"41855729",36,"maker\u002Fpositive\u002Fnone","android521",[530,170,44,197,190,44],"41853833",[532,170,44,189,11,18],"41854087",[534,535,18,308,536,44],"41856288",38,"OhNoNotAgain_99",[],[539,543,548,552,557,562],{"id":540,"name":541,"points":542,"category":20},"41848150","emoji",832,{"id":544,"name":545,"points":546,"category":547},"41801334","HTML for People",677,"learning_science",{"id":549,"name":550,"points":551,"category":20},"41848099","Mused Copan tunnels tour",462,{"id":553,"name":554,"points":555,"category":556},"41846636","Pumpkin",419,"games",{"id":558,"name":559,"points":560,"category":561},"41798477","Tenno",401,"productivity",{"id":563,"name":564,"points":565,"category":566},"41837204","clipscreen",346,"dev_tools",false,"v2",{"id":570,"name":5,"line":6,"ai":567,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":571,"top":18,"kw":572,"maker":11,"domain":10,"tier":19,"attempts":44,"strip":573,"url":9,"mix":574,"praise":-1,"objection":105,"sub":21},41853810,0.26,[21,24,25,26,27],"5055310231153335353533303533253535331053",[31,32,33,34],1794036662997]