NicolasPetton / Projectify

Project management for TiddlyWiki
https://projectify.wiki
MIT License
140 stars 47 forks source link

I can help you, to make your project easier to handle. #32

Closed pmario closed 3 years ago

pmario commented 3 years ago

Hi Nicolas, I do like your project.

Your directory structure is almost there, to make it easy to maintain AND fit the TW rules. I can help you if you want.

I'm maintaining https://github.com/wikilabs, which uses a different approach, but that doesn't really matter.

In https://github.com/wikilabs/editions/tree/master/wikilabs-ghub.io-server you can see a bin directory and a https://github.com/wikilabs/editions/blob/master/wikilabs-ghub.io-server/package.json which contains a command to "build" or "stage" ALL editions with 1 command.

After staging, I do some manual tests and deploy all editions, themes, libraries and languages with 1 simple git push.

A similar approach may work for you.


TW plugins do have a namespace like: $:/plugins/<author>/<plugin-name> .. Your directory structure doesn't reflect this.

It would need to be: plugins/<author>/projectify .. your language plugins would need to be moved to a structure similar to: languages/de-DE-<plugin-name>. The editions are OK.

What do you think?

NicolasPetton commented 3 years ago

@pmario thanks for taking the time to look into the project structure!

A similar approach may work for you.

I'm not using GitHub pages (or GitHub actions for that matter), and I usually try not to depend on GitHub too much. The project is actually hosted on my own Gitea instance at https://gitea.petton.fr/nico/Projectify but because of the community, it is synced to this GitHub repo.

For CI/CD, I'm using a drone instance hosted at https://drone.petton.fr, however I'm not using it for Projectify yet.

TW plugins do have a namespace like: $:/plugins// .. Your directory structure doesn't reflect this.

That's true, I started this way and never bothered to update the directory structure, I'm blaming laziness :)

NicolasPetton commented 3 years ago

It would need to be: plugins/author/projectify

Hmm, I'm actually not sure I want to do this.

As far as I can see from boot.js, TiddlyWiki will try to load plugins from the plugins as a flat list of directories. I might be missing something though, but unless I do, I'd rather stick to the current directory structure rather than having to set TIDDLYWIKI_PLUGIN_PATH in my build scripts.

Maybe that's why @saqimtiaz used the same structure in https://github.com/saqimtiaz/streams as well?