Sandboxing the app from the OS is the opposite of how I want a desktop application to behave I also like to manage the files in a specific way and have access to program and preference files and know where everything is stored (if it crashes I can find the temp files, for instance). Having to import files to some server to work on them is annoying when they are right here in my system. * file management - having to do everything in the browser is frustrating because of the way the browser is separate from the OS and makes everything an 'app'. * responsiveness - specifically latency when using the gui, as well as the long staggering pauses when I don't know if I am waiting for the server to respond or if there is an app hiccup or if the thing is frozen (the random long unresponsive breaks is what made me unable to use Roboflow, for instance) To expound on my original complaint about web apps in general, my main problems with them are: > Hopefully that roadmap and explanation of the architectural decisions clears up any worries about the short and long term state of our GUI. I was unaware that this was still in an early stage of development and am glad to hear of plans to move forward on a native app. Hopefully that roadmap and explanation of the architectural decisions clears up any worries about the short and long term state of our GUI. We'll still deploy a web version but at that point, it will become native-first. In the long term, we plan to rewrite the entire GUI in ( ) which is the up-and-coming Rust GUI that I believe will finally get everything right, including performance (which is something many desktop GUI frameworks are actually bad it, and sometimes even worse than web). It also runs all our Rust code natively instead of through WebAssembly so all the business logic in Graphite runs natively and only the thin UI layer becomes dependent on web tech for the GUI display. It uses the OS's webview to shrink the shipped binary to only a few megabytes and reuse shared memory resources with other webviews at runtime. In the short term, we plan to use ( ) which is sort of a hybrid between Electron and a native application. But we will eventually move towards a fully native version. That's the tradeoff we had to make early on, and it was a good decision. Web lets us build fast, deploy the latest version to users fast, leverage prevalent developer experience with HTML/CSS for creating GUIs, and avoid getting stuck in a box with Rust's currently-immature GUI ecosystem. This architecture really helps us keep performance levels as close as possible to feeling native despite using the web for its GUI rendering and I believe it has succeeded at feeling responsive by comparison to most other web apps you use (even Slack, for example, which shouldn't be nearly as complex). And we are using Svelte to move most of the frontend DOM management logic from runtime to compile time. And our highly-lightweight JS which calls into Rust (Wasm) lets it keep the slow logic out of slow JS. I wrote all-custom UI components using the minimal amount of HTML and CSS to achieve the requirements instead of depending on an external component framework which always loves nesting dozens of `div`s inside each other to achieve what should be doable in one or two. I've designed the whole architecture specifically to avoid the web UI "feeling like a web app" with the subtle latency of interacting with the site. Plus, the ability for users to try it out in one second is quite helpful. In these relatively early stages of our development process, the importance of the velocity that gives us cannot be understated. It deploys updates to users without needing to make them go through an updater. Our CI generates a fully deploy at a unique link for every commit which lets us open and test PRs with a single click. The web browser gives us an extremely frictionless development and deployment process. detector :) I'm currently working on a new revamp to the website with many new pages, so having a fresh perspective and some ideas how to make things more direct (but not necessarily overly technical, since it should be digestible to artists also) and less marketing-ey, I'd find that highly valuable. Is there any chance you'd be willing to reach out to me, ideally on Discord but email also works, and let me use you to test my copy to a fresh pair of eyes? Basically as a B.S. I know what Graphite is in my head, but conveying that to newcomers is really challenging! But clearly I need to try again. I guess it's hard being on the other end when actually writing copy so I've failed to design text which can be highly terse and also descriptive of complex concepts without turning into paragraph-long explainers. I 100% agree with you since I am very bothered by marketing copy that's painfully obviously written by a nontechnical marketing team, and I want to avoid that here.īut. Hi, Graphite creator and website author here.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |