Tracking issue for usable alpha
notgull opened this issue · 1 comments
notgull commented
Right now, the current app consists of a handful of disparate parts. This issue aims to provide a way for future work to be organized in such a way that we can have a usable alpha of this program in the near future.
End Goal
Before we move forward I would like to have the following in place:
- A decently stable web frontend with an accurately node display and the ability to communicate with the backend. You will be able to import images, run them through a node processor, and receive a new image as output.
- A GIMP plugin that uses a similar format to communicate with a similar backend that is spawned on the local machine.
- A backend that receives data from both frontends and uses that to process images.
- Supporting libraries for all of the above.
Web Frontend Tasks
- Reorganize the code to fit Vue in a much more idiomatic way (cc @meredith-grace)
- Communicate with the backend server to process nodes. (#53, #58)
GIMP Frontend Tasks
Implement additional CI/CD for plugin development-
Implement plugin development environment support for linux(#36) -
Solidify plugin entry point and plugin application loop(#37) - Implement a node-based interface using
gtknodes
or otherwise (#24). - Add image pipelining capabilities. (#60)
Backend Tasks
- Translate all images to a single processing format (maybe AVIF? Might not be supported in all browsers. Maybe match on it?) (#34)
- Implement at least one image operation (probably compositing?) (#58)
- Rewrite backend in Python (#47)
Supporting Libs Tasks
- Add output node to libnode serialization format (libnode and libnodepy) (#28)
-
Potentially port libnode to C++ to support C++ porting effort.We're not moving in this direction anymore. - Expose final output node format in serialized libnode format (#28).
Implement total node unlinking for nodes.
Misc Tasks
Configure the CI system to test more of the program's surface.
Incomplete list, I'll add more as I think of them.