Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alternative UI implementations (long-term) #708

Open
jywarren opened this issue Jan 24, 2019 · 38 comments
Open

Alternative UI implementations (long-term) #708

jywarren opened this issue Jan 24, 2019 · 38 comments

Comments

@jywarren
Copy link
Member

I think we ought not to do this just yet, but part of the long term plan is to have different UIs be able to run Image Sequencer. I'm collecting a few ideas all in one place, but we have plenty of work before these seem to be a reasonable priority to take up.

(Many from #118)

@jywarren
Copy link
Member Author

More!

@harshkhandeparkar
Copy link
Member

@jywarren I'll try to change some basic looks using materialize. I have a bit of experience with that

@harshkhandeparkar
Copy link
Member

@jywarren @publiclab/is-reviewers I just had a great idea in mind. How about making an image-sequencer desktop app? Using electron we can create that app. It will be cross platform and very easy to build too since we can easily copy the current website code and run it in electron. It can be a good example of ui implementation. It can be in a separate repository. Thoughts?

@Divy123
Copy link
Member

Divy123 commented Jan 24, 2019

@jywarren One thing I want to suggest if we should change our UI code to React.js.

@harshkhandeparkar
Copy link
Member

harshkhandeparkar commented Jan 24, 2019

@Divy123 @jywarren how about creating a new repo for different image-sequencer ui implementations with reactjs, blockly, electron etc. While keeping the legacy ui in the current repo but planning a complete overhaul for that(stylewise only) because purejs/html is better for first timers. Thoughts?

@vibhorgupta-gh
Copy link

@jywarren I agree with @Divy123 about using frameworks for the long run. The UI is very light for now and pure JS and HTML are just about perfect to render it, but should the project UI get an overhaul with a very impressive UI/UX structure, we might need to look into frameworks to make our jobs easier and make the code more legible

@harshkhandeparkar
Copy link
Member

harshkhandeparkar commented Jan 24, 2019 via email

@Divy123
Copy link
Member

Divy123 commented Jan 25, 2019

@harshkhandeparkar agreed but there is more to it.
Since as of now we are dealing with lots of UI states I think working with redux can be a great advantage.
After employing react and redux together we can surely work on styles or rather we can work simultaneously on both.

@harshkhandeparkar
Copy link
Member

@Divy123 you can work on React, I will work on styles. We can then merge both maybe?

@Divy123
Copy link
Member

Divy123 commented Jan 25, 2019

Sure @harshkhandeparkar that would be great.
Lets know @jywarren thinks upon this.

@harshkhandeparkar
Copy link
Member

@jywarren @Divy123 @publiclab/is-reviewers How does this look?

new-select

new-range

new-inputs

@Divy123
Copy link
Member

Divy123 commented Jan 25, 2019

That's super cool!!
Awesome !!
While right now I am struggling with my npm .
The npm install is too slow

@harshkhandeparkar
Copy link
Member

Collapsible update! @jywarren @Divy123 @publiclab/is-reviewers

collapsible-new

@Divy123
Copy link
Member

Divy123 commented Jan 26, 2019

I think #670 can be a part if we plan to use React and redux.

@harshkhandeparkar
Copy link
Member

Update!!! @publiclab/is-reviewers @jywarren

Download! :

new-download

Insert Step! :

new-insert

If it looks like the animations are a bit stuttery, they are not. Its because the GIF frame rate is low. Thanks!

@harshkhandeparkar
Copy link
Member

@publiclab/is-reviewers @Divy123 @jywarren Update!!

new header:

new-header

new footer:

new-footer

new range:

no-span-range

new responsive page design:

responsive-divs

new responsive step images:

responsive-step-img

new self-adjusting textareas instead of inputs:

responsive-textareas

@Divy123
Copy link
Member

Divy123 commented Jan 29, 2019

Super awesome. Looks amazing @harshkhandeparkar
@jywarren please have a look and also I want to migrate the code to React and redux.
Should I proceed ahead?

@harshkhandeparkar
Copy link
Member

@Divy123 I have made some other general changes to the code as well. Please have a look at it if you haven't. Thanks!

https://github.com/HarshKhandeparkar/image-sequencer/commits/materialize-ui-overhaul

@jywarren
Copy link
Member Author

jywarren commented Jan 29, 2019 via email

@Divy123
Copy link
Member

Divy123 commented Jan 29, 2019

Sure I will look into it and reach back to you right then @harshkhandeparkar

@harshkhandeparkar
Copy link
Member

@jywarren what I have done is I have deprecated bootstrap. Also I have added responsiveness and also refactored the code a little bit. It does not touch any other field. It just stabilizes the code in general

@harshkhandeparkar
Copy link
Member

@jywarren Materialize is a very similar to bootstrap and even a bit simpler. It has no dependencies either. I have only used materialize instead of bootstrap. I have also fixed errors and redundancies in the index.html file. I have also tried to minimise custom styles. Also I have changed the js code and split it into two different folders one for DOM and one for sequencer actions. Also fixed a few code errors. All of the code is almost the same with a few changes, mostly changes in classes. I have replaced the bootstrap components with similar looking materialize components. The end result is that the UI looks better since equivalent materialize components look better than bootstrap. Also the inputs have been changed to reduce custom code and to increase esse of input(in case of textarea)

@Divy123
Copy link
Member

Divy123 commented Jan 29, 2019

Sure @jywarren .
Also I think the changes made by @harshkhandeparkar are easily adoptable .
The idea of using React can be postponed until the changes as said by you are done.

@jywarren
Copy link
Member Author

jywarren commented Jan 29, 2019 via email

@harshkhandeparkar
Copy link
Member

@jywarren sure. I think I will open a PR and any you can point out any concerning things? This is still a WIP though

@harshkhandeparkar
Copy link
Member

@jywarren do my gh-pages link to harshkhandepsrkar.github.io? Or some other link? I haven't tried it before.

@jywarren
Copy link
Member Author

jywarren commented Jan 29, 2019 via email

@jywarren
Copy link
Member Author

jywarren commented Jan 29, 2019 via email

@harshkhandeparkar
Copy link
Member

@jywarren yess! That's a great idea. I am going to open a pr right now. Thanks for the help with gh-pages.

@harshithpabbati
Copy link

@harshkhandeparkar a great work!! 👍

@harshithpabbati
Copy link

May be few things need to be added to it.Fine will make them as issues after this get's merged

@harshkhandeparkar
Copy link
Member

Thanks. I'm actually going to refactor the ui code by separating the sequencer part of it from the DOM part and I'm working on it here. This links to a branch in my fork. Please check out the ui/ folder and examples/ folder.

@harshithpabbati
Copy link

harshithpabbati commented Apr 4, 2019

@jywarren we can make a big move by using react . I am interested in doing it. If you agree with it ?

@Divy123
Copy link
Member

Divy123 commented Apr 4, 2019

I am also interested.
May be we can collaborate?

@harshithpabbati
Copy link

Yeah we can once @jywarren agrees with it 😄

@harshithpabbati
Copy link

@jywarren how about making it into a dynamic site we can have login system and once he get's into his account he can have all his data about the saved sequence and the images which he want for future use. What are your thought about it??

@harshithpabbati
Copy link

@jywarren we need your thoughts here.

@YogeshSharma01
Copy link

@harshithpabbati nice idea about making it into a dynamic site.

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

No branches or pull requests

7 participants