Lax icon indicating copy to clipboard operation
Lax copied to clipboard

build system

Open brandly opened this issue 5 years ago • 1 comments

i wrote out a comment on the current setup, so here are some notes on how things should work in the future.

currently the dev environment is pretty nice on macos and maybe windows, but the build script only runs on macos, as far as i know. i'm not sure where linux is at in all this.

interrelated goals:

  • [ ] good dev env across platforms
  • [ ] easy builds across platforms. distributing for another platform should just be a matter of spinning up a github workflow on that platform and running the build.
  • [ ] i think we should transition to styled-components (#42) because the dev process is unmatched. i tried starting this transition, but the current system didn't seem to allow for it. the app would start and elements would have classes on them generated by styled-components, but the classes had no definitions with seemingly no <style> anywhere in the DOM. it appears to have nice theming support for dark mode, and i think it'd make font changes easy (#83)
  • [x] typescript? the code currently has flow types, which was a better type system when the decision was made, but typescript has matured a lot and the community has grown massive. it would make it easier for more people to contribute.

i wasn't aware of electron-builder, but it seems to handle more than electron-packager. i need to read into this more, but here's a popular app that uses it and distributes apps for all platforms.

brandly avatar Sep 24 '20 16:09 brandly

this project appears to have a good electron-builder and electron-updater setup: https://github.com/jely2002/youtube-dl-gui

brandly avatar Sep 11 '21 03:09 brandly