TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Textual: Rapid Application Development framework for Python

291 点作者 generichuman超过 1 年前

22 条评论

simonw超过 1 年前
My favourite Textual demo at the moment is this one: <a href="https:&#x2F;&#x2F;github.com&#x2F;1j01&#x2F;textual-paint">https:&#x2F;&#x2F;github.com&#x2F;1j01&#x2F;textual-paint</a><p>It&#x27;s a very decent Microsoft Paint imitation that runs in your terminal!
jdoss超过 1 年前
I am working on a new python project and one of the first things I added was <a href="https:&#x2F;&#x2F;github.com&#x2F;Textualize&#x2F;rich">https:&#x2F;&#x2F;github.com&#x2F;Textualize&#x2F;rich</a> because of how easy it is to make things look good in the terminal.
评论 #37180862 未加载
评论 #37197186 未加载
评论 #37181727 未加载
ye-olde-sysrq超过 1 年前
This looks really cool.<p>In the past I used lanterna (<a href="https:&#x2F;&#x2F;github.com&#x2F;mabe02&#x2F;lanterna&#x2F;tree&#x2F;master">https:&#x2F;&#x2F;github.com&#x2F;mabe02&#x2F;lanterna&#x2F;tree&#x2F;master</a>) to develop a text UI for a critical process at the trading firm I worked at. It was essentially a process that would take updated market data and handle things that changed between the last trading session and today - like symbol renames (PCLN to BKNG), changes to market cap that make it change what &quot;category&quot; it fell into (they were based on market cap and volatility measures etc). Things of that nature, that the realtime system didn&#x27;t handle but happened too often or were too hairy for us to just handle manually.<p>The system had a desktop UI component that was oriented towards use by our trading staff. We didn&#x27;t really have notion of a &quot;server UI&quot; and the server was headless.<p>Nobody at our firm was a frontend developer, just backend, systems and data programmers who occasionally dabbled in frontend. So web UIs were very simplistic or highly specific to their use-case, we had no shared tooling.<p>In 2023 with things like create-react-app and whatever next.js does, I probably would&#x27;ve opted for one of those. I could&#x27;ve made another desktop app but I wanted to be able to easily get to this from a shitty ssh connection over tethered 4g when I was on-call. So X11 forwarding and RDP were out. So i looked around for a TUI-builder in the project&#x27;s language, Java.<p>What i really liked about Lanterna was that it had a Swing-based implementation which meant I could easily run it from IntelliJ, and that would let me iterate rapidly, and then in production I could run it in a terminal via SSH directly on the machine the server was on (which had certain advantages).<p>I&#x27;ll keep an eye on this to see if I can think of anything neat to build on it. I still generally don&#x27;t like web apps because they feel like they take a lot of effort to get something compared to a functionally-equivalent product built in something non-browser-based like a TUI or desktop GUI.
pudo超过 1 年前
Unfortunately, the &quot;Rapid Application Development&quot; thing also seems to apply to the library itself: you get a new release every other week, and stuff breaks in somewhat unpredictable places. So it&#x27;s easy to prototype something with Textual, but hard to maintain it afterwards.
评论 #37206501 未加载
p2detar超过 1 年前
Looks amazing! Not a seasoned Python developer, so I ask how easy it is to build a binary from this without any (major) dependencies?<p>I’m looking for something that helps me build installation packages of my product for Windows and Linux. There are a set of configurations that must be done before and after my customers install my software - write to INI files, check db connection, check http servers and so on.
评论 #37189128 未加载
Timothycquinn超过 1 年前
This looks great. I just finished an internal devops and change control app using unicurses and python and although it works, it will not scale well. Initially, I tried doing TK and QT but they both have their quirks with initial installation. My experience with QT is that its works well but useful documentation is sparse.<p>I&#x27;ll definitely be giving textual a try as it fits my requirement space perfectly.
ramses0超过 1 年前
Did a cursory dive through, check: <a href="https:&#x2F;&#x2F;textual.textualize.io&#x2F;tutorial&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;textual.textualize.io&#x2F;tutorial&#x2F;</a> and <a href="https:&#x2F;&#x2F;github.com&#x2F;Textualize&#x2F;textual&#x2F;blob&#x2F;main&#x2F;docs&#x2F;examples&#x2F;tutorial&#x2F;stopwatch.py">https:&#x2F;&#x2F;github.com&#x2F;Textualize&#x2F;textual&#x2F;blob&#x2F;main&#x2F;docs&#x2F;example...</a><p>...what have people had success with in golang-world? Anything reasonably equivalent someone could recommend? There&#x27;s a fair amount of &quot;stuff&quot; for TUI&#x27;s in golang, the thing that&#x27;s very attractive about &#x27;textualize&#x27; is it feels very &quot;web-browser-y&quot; and has a nice (scrollable!) table view.<p>`tview` seems interesting (eg: check `brew install dbui`), but feels a bit more like _you&#x27;re_ doing all the imperative `if KeyPress.A: do_something()` instead of declarative, nesting navigation, etc. (perhaps that&#x27;s the difference between an &quot;application-centric&#x2F;SPA&quot; view of &quot;control all the things!&quot; vs. a document centric: &quot;add components to a page and let them flow&quot;).<p>Any feedback on the items in this list? <a href="https:&#x2F;&#x2F;codeberg.org&#x2F;tecras&#x2F;awesome-go#advanced-console-uis" rel="nofollow noreferrer">https:&#x2F;&#x2F;codeberg.org&#x2F;tecras&#x2F;awesome-go#advanced-console-uis</a>
评论 #37179165 未加载
评论 #37181151 未加载
评论 #37187120 未加载
评论 #37180869 未加载
SaintSeiya超过 1 年前
Lazarus&#x2F;Freepascal is the way to go. The rest are involutions.
zerr超过 1 年前
Are these animations and transitions done purely in ASCII text?
评论 #37179344 未加载
评论 #37179404 未加载
prakhar897超过 1 年前
Question: How do projects like these sustain themselves? This project is being developed from 2 years and I see no sources of revenue. Do the developers get any form of compensation for creating this?
评论 #37187859 未加载
评论 #37192622 未加载
评论 #37187935 未加载
friend_and_foe超过 1 年前
I was looking for a python graphical interface library and came across this, I came to the conclusion that it is way too resource greedy and anything you build with it will be heavy.
评论 #37181029 未加载
评论 #37179652 未加载
DiggyJohnson超过 1 年前
I would love to find a way to get some sort of emulation layer to get Textual apps running in the browser. Does anyone know of any projects that might aid in this silly goal?
评论 #37179962 未加载
评论 #37178140 未加载
评论 #37185099 未加载
tomhallett超过 1 年前
This looks very cool.<p>For the web browser version which is coming soon, will the “DirectoryTree” feature be supported? Any idea when the web view will be in beta&#x2F;launch?
评论 #37178190 未加载
pvo50555超过 1 年前
Seems a bit like www.anvil.works but it can be run entirely locally and a bit more feature restricted.
theanonymousone超过 1 年前
I&#x27;m still waiting for the VSCode for Terminal
评论 #37176661 未加载
评论 #37180228 未加载
评论 #37198124 未加载
Loranubi超过 1 年前
Still no multiline text inputs though…
JonathanBeuys超过 1 年前
After a few decades of developing applications, I am convinced that frameworks are the wrong approach.<p>You gain development speed in the beginning, but you lose it later on when the framework introduces breaking changes and you have to keep working around a changing stack. Or the framework gets abandoned and it would be too much work to maintain it. Because it has so much bells and whistles you don&#x27;t need. This one for example contains 1298 files without dependencies.<p>Both, coding everything yourself or using lean libraries are better. There are very few lean libraries unfortunately. Keeping code elegant and simple is a rare skill.<p>When there is a lean, well done library for my use case, I use it. Because if shit hits the fan, I can maintain the library myself.
评论 #37176277 未加载
评论 #37176379 未加载
评论 #37176771 未加载
评论 #37176467 未加载
评论 #37177953 未加载
评论 #37178973 未加载
评论 #37178467 未加载
评论 #37176723 未加载
评论 #37176485 未加载
评论 #37179069 未加载
评论 #37184284 未加载
评论 #37177454 未加载
评论 #37178118 未加载
评论 #37178924 未加载
评论 #37180857 未加载
darkstar999超过 1 年前
I tried this a while back but was put off by the fake &quot;css&quot;.<p>They say &quot;The dialect of CSS used in Textual is greatly simplified over web based CSS and much easier to learn.&quot; But I immediately ran into issues trying to use css that I&#x27;m familiar with (and it wasn’t even fancy). They should have called it something else and used different syntax.
评论 #37182859 未加载
评论 #37180874 未加载
marcodiego超过 1 年前
Maybe I got spoiled from the time I used to play with delphi, but for me RAD screams a good UI builder built in.
评论 #37180879 未加载
LispSporks22超过 1 年前
Rapid application development is probably the wrong description. That’s already used by systems that have UI builders and code integrated, like Delphi etc and early systems like VB.<p>I went looking for such a thing in this project and only found examples in Python scripts.
评论 #37180886 未加载
zokier超过 1 年前
I know textualize&#x2F;rich are HN darling projects, but do we really want full-color mouse driven gui applications full with superfluous animations in our terminals?
评论 #37176542 未加载
评论 #37180897 未加载
ryanschaefer超过 1 年前
They say they support typing but I was weary as soon as they had a class field which defined actions. Python severely disappoints in its type system when compared to flow or typescript which are turning complete.
评论 #37182959 未加载