You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
I love working with fasthtml, and I'm grateful to Jeremy and his team for their efforts.
Although I haven't delved deeply into fasthtml yet, I have a general understanding of its capabilities. If I've misunderstood any aspect, please feel free to correct me.
For small-scale applications, fasthtml is excellent. It significantly reduces development friction, which I really appreciate, and I'm eager to explore it further. However, for larger projects, fasthtml might lack some structural constraints that could be beneficial when planned in advance. For instance:
Next.js uses file-based routing, which clearly defines the routing structure through its folder setup.
In React, there’s usually a dedicated components folder that organizes custom or project-specific components.
nbdev uses an nbs folder, where we can simply mark cells with #|export, letting it handle the complex parts of building. We can also write tests like test_eq directly within the notebook, which I find incredibly efficient.
Among the fasthtml examples I’ve seen, the most complex structure is the code editor example. While impressive, it still seems insufficient for managing larger-scale projects.
For more complex applications, could fasthtml benefit from a more standardized structure? Imagine if we could organize all project-related content—components, routes, styles, and tests—within an nbs folder, then have nbdev compile these into structured Python files and folders (like routes and components). We could reference these in main.py, making the development and publishing of fasthtml components as seamless as publishing pip packages with nbdev. That sounds like an exciting direction. Of course, everyone can customize the project structure using nbdev and then use the final result in main.py, but I think it would be more beneficial if this thing was bound up in advance, in all projects about fasthtml.
If someone doesn't like nbdev (it must be because he hasn't experienced nbdev in depth), then he can also use the relatively fixed constraints we may have, put py files into corresponding folders, and also reference them in main.py.
Is your feature request related to a problem? Please describe.
I love working with fasthtml, and I'm grateful to Jeremy and his team for their efforts.
Although I haven't delved deeply into fasthtml yet, I have a general understanding of its capabilities. If I've misunderstood any aspect, please feel free to correct me.
For small-scale applications, fasthtml is excellent. It significantly reduces development friction, which I really appreciate, and I'm eager to explore it further. However, for larger projects, fasthtml might lack some structural constraints that could be beneficial when planned in advance. For instance:
nbs
folder, where we can simply mark cells with#|export
, letting it handle the complex parts of building. We can also write tests liketest_eq
directly within the notebook, which I find incredibly efficient.Among the fasthtml examples I’ve seen, the most complex structure is the code editor example. While impressive, it still seems insufficient for managing larger-scale projects.
For more complex applications, could fasthtml benefit from a more standardized structure? Imagine if we could organize all project-related content—components, routes, styles, and tests—within an
nbs
folder, then have nbdev compile these into structured Python files and folders (like routes and components). We could reference these inmain.py
, making the development and publishing of fasthtml components as seamless as publishing pip packages with nbdev. That sounds like an exciting direction. Of course, everyone can customize the project structure using nbdev and then use the final result in main.py, but I think it would be more beneficial if this thing was bound up in advance, in all projects about fasthtml.If someone doesn't like nbdev (it must be because he hasn't experienced nbdev in depth), then he can also use the relatively fixed constraints we may have, put py files into corresponding folders, and also reference them in main.py.
Actually, #345 is a sub-question of this problem.
Confirmation
Please confirm the following:
The text was updated successfully, but these errors were encountered: