Venefilyn / EDAssets

The main source of consuming Elite Dangerous assets. It contains vectors, uncompressed images, concept art, and animated logos.
https://edassets.org
MIT License
34 stars 13 forks source link

Tool for adding new assets #155

Open thijnmens opened 3 years ago

thijnmens commented 3 years ago
Well I'm certainly alive. Adding new assets though, even if they are finished as shown in some issues, is very time consuming with little value.

Any PRs that popup to include new assets or include tooling to greatly simplify the time taken to add assets would definitely be helpful. Though not sure if I will have the time to do so in the near future

Originally posted by @SpyTec in https://github.com/SpyTec/EDAssets/issues/134#issuecomment-734452627

As mentioned here it would be nice to have a tool for uploading assets to make it a lot easier. Since i have nothing better to do and i want my assets uploaded i thought why not lol. Either way i am having issues setting up the project. npm gives loads of warnings and crashes on install node-sass, that i can fix, but it would be nice to know the node version used in this project so it doesn't give me all these errors when i try to start the project

thijnmens commented 3 years ago

fixed the sass issue and now got a local thing running

@SpyTec what stuff would you want in the program, rn the only thing i am adding is just new assets, but i can see why it would be handy to have it also add new categories just in case.

i'll work on it in the next few days, not an experienced dev in any way, but it should deffo be do-able!

Venefilyn commented 3 years ago

Hi @thijnmens!

I did look into it a bit after I made that comment. It isn't possible to work with the GitHub API without a server since they do not support implicit OAuth flow. So that boils down to 3 possible solutions for a tool

  1. Create a tool that you run locally that simply modifies the relevant files for you based on the files you provide
  2. Create a tool that is available in EDAssets website that reads the current state of everything and creates a new zip for you to put in the git repository
  3. Create a tool together with a git-based headless CMS (requires a third-party as server)

Personally, I don't think doing any of these right now is the best way to reduce the contribution time. Instead I would love to refactor EDAssets completely to reduce the complexity in 3 ways

  1. Get rid of zip files completely. Instead rely on something like https://github.com/101arrowz/fflate to create the zip file based off of the selections the user has made
  2. Refactor away from the current JSON flow into a proper tool that generates a static site with pages based on folders. This would make categories and routing much much easier to maintain and navigate through. (This would be something like NextJS, NuxtJS, or Svelte Kit)
  3. Remove PNGs and generate them based off of SVGs instead if user wants to download a PNG. From my research last time, it should be possible to put SVGs in a HTML canvas which you can convert to a PNG

Sorry for the large amount of info!

Venefilyn commented 3 years ago

The project started in the early days of Angular when SPA was just becoming a thing. Even after refactoring to Vue the overall style of the project remained the same to keep backwards compatibility with the URLs

thijnmens commented 3 years ago

I have already made a few websites with nextjs and this sounds like a fun project to work on tbh. Lots of stuff to learn, and it will definitely help with my education! I would love to work with you on this project ;), i'll deffo keep in mind all the suggestions you had, i especially like the idea of packaging all the files the user requested into a zip, kinda like a shopping cart xD

thijnmens commented 3 years ago

I have created a fork of the current rep here, if you have any suggestions you can just comment on this issue or create a new one over at the fork, or if you want to work on it just create a pull request

https://github.com/thijnmens/EDAssets

Venefilyn commented 3 years ago

Creating a PR wouldn't hurt, it centralizes the feedback system

thijnmens commented 3 years ago

True, welp you do you 👍, already made the base layout, tomorrow i am going to work on the shopping cart thingy and after that prob the database where the shopping cart can request the images from

Venefilyn commented 3 years ago

Oh I meant that you can create a PR towards this repo so the diff is shown

thijnmens commented 3 years ago

ah ok, i created a draft PR for now, idk if this is what you meant, really not that experienced with github, but this should work