Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project folder structure #1509

Open
2 of 3 tasks
lpmathiasendk opened this issue Mar 22, 2024 · 9 comments
Open
2 of 3 tasks

Project folder structure #1509

lpmathiasendk opened this issue Mar 22, 2024 · 9 comments
Labels
enhancement New feature or request P4 (maybe) Cosmetic bugs, enhancements that may not fit with Twine's scope

Comments

@lpmathiasendk
Copy link

Is your feature request related to a problem? Please describe.

It Works

Desktop Twine for Mac is working very nice, but as a programmer I think the lack of a project folder structure is something it really need to have corrected. Just like all other game design systems folders like assets, scripts and so on will enhance the developer experience. Also it should be here the preview server point to for internal links. The twee export will also refer to this.

My Case

In my workflow I would have the Twine story as a module to my Kotlin project so I can write my Twine content and work on my UI at the same time. If the preview server points at the project root it is possible to work in a iterative manner adding pictures, external javascripts and the like.

Describe the solution you'd like.

A Solution

I suggest an implementation could be as simple as having a Twine project point to a project root folder of the developers choosing and as mentioned above have all internal links point to the project root.

Describe alternatives you've considered.

Simpler

I think my suggestion is a very simple one, so I haven’t any alternatives except as a simpler solution have a new Twine project make a project root folder in the Stories folder and have everything point at that. It will be a improvement but I think the freedom of choosing where to save a project is a huge improvement making it easier to include Twine in other kinds of projects.

Additional context on this suggestion.

It Will Help

This solution will make a lot of work after publishing redundant and fiddeling with links and routes as well. A whole lot easier workflow as an effect.

Presubmission checklist

  • I am interested in working on code that would implement this feature request. (This is not required to submit a suggestion.)
  • I have done a search and believe that an issue does not already exist for this idea in the GitHub repository.
  • I have read and agree to abide by this project's Code of Conduct.
@lpmathiasendk lpmathiasendk added the enhancement New feature or request label Mar 22, 2024
@klembot
Copy link
Owner

klembot commented Mar 23, 2024

You can change where Twine looks for stories, and where preview stories are created, using command-line switches. I think that might help with your use case?

@lpmathiasendk
Copy link
Author

lpmathiasendk commented Mar 23, 2024 via email

@klembot
Copy link
Owner

klembot commented Mar 23, 2024

Sorry, could you clarify more what you mean by:

I did have the intention it should be in the desktop app menu.

Do you mean that this functionality covers your needs, but you'd prefer it to be something you wouldn't need to use CLI switches for--or that what's there right now doesn't cover your needs?

@greyelf
Copy link

greyelf commented Mar 23, 2024

@lpmathiasendk
note: Just to be clear, the Desktop release of the Twine 2.x application automatically creates three different category of HTML file, each in a different location:

  • the Project HTML files that store the Passage & meta data of a Project, these are found by default in the Twine\Stories folder.
  • the Backup HTML files, which are snapshot copies of the Project HTML files, and these are found by default in the Twine\Backups folder.
  • the temporary Story HTML files generated by the Play and "Test" related options, which are either found in the Operating System's Temporary file area (pre v2.8.0); or the Twine\scratch folder (v2.8.0 and later).

a Twine project point to a project root folder of the developers choosing

Do you mean:

  • That all Twine Projects point to the same root folder, of the developer's choosing. In which case, the command-line switches mentioned by klembot can be used to control where each of the three different category of HTML file are stored.
  • That the developer can configure each individual Twine project to point to its own custom root folder, if so which of the three different category of HTML file should be stored in that root folder & where in that root folder?

@lpmathiasendk
Copy link
Author

lpmathiasendk commented Mar 23, 2024 via email

@greyelf
Copy link

greyelf commented Mar 24, 2024

@lpmathiasendk
It sounds like your work-flow would be better suited to a Twee Notation based project, rather than a Twine application based one.

That way could store the project's Twee (text-based) files where ever you like, and then use a Twee compiler like TweeGo to generate a Story HTML file from those files.

note: If you do decide to switch to a Twee Notation based project and need access to a visual Story Map, and you're using the Visual Studio Code text editor, then checkout the Twee 3 Language Tools extension by cyrusfirheir.

@lpmathiasendk
Copy link
Author

lpmathiasendk commented Mar 25, 2024 via email

@lpmathiasendk
Copy link
Author

lpmathiasendk commented Mar 25, 2024 via email

@klembot
Copy link
Owner

klembot commented Apr 2, 2024

I'll tag this as a "maybe" enhancement for now. The question to me is how this request could be generalized—I don't think many people using Twine are proficient with Gradle etc, so whatever we come up with would need to accommodate that.

@klembot klembot added the P4 (maybe) Cosmetic bugs, enhancements that may not fit with Twine's scope label Apr 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request P4 (maybe) Cosmetic bugs, enhancements that may not fit with Twine's scope
Projects
None yet
Development

No branches or pull requests

3 participants