Skip to content

Instantly share code, notes, and snippets.

@Aveek-Saha
Last active May 17, 2020 19:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Aveek-Saha/639903d6573d42593057640af1439226 to your computer and use it in GitHub Desktop.
Save Aveek-Saha/639903d6573d42593057640af1439226 to your computer and use it in GitHub Desktop.

Background

DuskPlayer was started as a small project with a simple goal, to build a minimal music player with all the essentials. What started as a small project back in April 2018 now has thousands of users and has recieved bug fixes and updates for over 2 years now.

As I continue to maintain and enhance this application, after some thought, I have been considering switching to Svelte from AngularJS for the UI. You can read the reasons behind this below and also vote for your preference.

Why use a framework

The main reasoning behind using a framework instead of vanilla HTML was simple, I wanted a dynamic application and a framework would make this much easier. The main features I needed were variable binding, conditional rendering and iterating with templates.

  • Why AngularJS:

I picked AngularJS when I started because it was the simplest framework that provided all the features I required, had good documentation and ample community support.

  • Why switch to Svelte:

Svelte is a relatively new framework that checks all the boxes that Angular did and has a couple of other benefits. Firstly, it's simpler to work with than Angular in my opinion and my hope is that more developers will be able to contribute to the project. Secondly, Angular is at the end of it's life. Lastly, on shifting to Svelte the whole application will become more modular and easier to work on.

What the future holds

If the switch is made, the current version of DuskPlayer will be shifted to a separate branch and all future updates will be made on the Svelte version. The new version will include all the features of the Angular version had, and will improve upon them.

If you have anything to add to this you can leave a comment under this Issue. You can vote for or against this change here: Vote, or you can leave your vote below.

Vote here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment