Skip to content
This repository has been archived by the owner on Nov 14, 2022. It is now read-only.

Frontend Migration and Dependency Management #76

Open
satanb4 opened this issue Nov 6, 2019 · 20 comments
Open

Frontend Migration and Dependency Management #76

satanb4 opened this issue Nov 6, 2019 · 20 comments
Labels
dependencies Pull requests that update a dependency file hacktoberfest help wanted Extra attention is needed

Comments

@satanb4
Copy link
Contributor

satanb4 commented Nov 6, 2019

Is your feature request related to a problem? Please describe.
Currently, the frontend is bare-bones javascript implementation employing XtermJS v3.6 for the terminal emulation. This is creating limitations since the Buffer and User Input has been overhauled with a better User Interface.

Describe the solution you'd like
Creating a Frontend Pipeline for dependency management while streamlining the code and keeping it minimal. Suggestion of Webpack by @vladdoster in #47 is a good idea. As well as creating a better user interface for the next version. This should be a target for Version v1.0

Describe alternatives you've considered
iTermJs is an alternative that can be looked into.

Additional context
I'm linking a good XtermJS implementation here
The XtermJS site also has overhauled the API.
I am also linking the VT Features as discussed on their dev channel for XtermJS here

@satanb4
Copy link
Contributor Author

satanb4 commented Nov 6, 2019

For Version v0.0.1 after PR #68 has been merged, overhauling the UI for v1.0 can been discussed. For now v0.0.1 will be made functional but I wouldn't recommend it for Beta release.

This was referenced Nov 6, 2019
@0xHericles
Copy link
Owner

@satanb4, @vladdoster, So I think we're in sync, haha. Last night I was reviewing issues with the team and planning the beta and I saw exactly the same thing. I thought about using webpack or switching to reactjs.

@0xHericles
Copy link
Owner

We will have a cast-sh demo along with the podcast in about a month, and we need some functionality for it. For that I think it would be nice to have the updated version of xtermjs.

@0xHericles
Copy link
Owner

Ah, we also need to put a simple authentication, could be an env var as password. But we need it in one month. That's why I want to change to react. It's easier to handle and protect routes.

@0xHericles 0xHericles added dependencies Pull requests that update a dependency file help wanted Extra attention is needed labels Nov 6, 2019
@satanb4
Copy link
Contributor Author

satanb4 commented Nov 6, 2019

Then please look into making a Slack group or a Microsoft Teams. We need more communication to decide on features and roadmap?

@0xHericles
Copy link
Owner

@satanb4 I'm also planning it. I Think making a slack could be a good idea.

@vladdoster
Copy link
Collaborator

If you want a team chat room, use gitter. Pretty defacto when it comes to OS projects imo.

@vladdoster
Copy link
Collaborator

vladdoster commented Nov 6, 2019

I would suggest Vue over React. Vues ability for single file components would be a perfect use case for cast-sh where as React has a lot of overhead for in the end turns out to only be a single page app. Take this opinion with a grain of salt as my experience with React is minimal and could not be aware of a similar feature in React.

@satanb4
Copy link
Contributor Author

satanb4 commented Nov 6, 2019

@vladdoster I was going to make the same suggestion. I have used Express, Angular and Vue but not React a lot, however, Vue seems to be a good choice for a framework since it carries over a lot of philosophies of using the DOM itself as well as being light-weight enough with the dependency management. Thoughts, @hericlesme ?

@0xHericles
Copy link
Owner

@satanb4, @vladdoster, Vue seems to be a good choice... 🤔

@vladdoster
Copy link
Collaborator

Mhm, we might want to brainstorm exactly a migration would look like.

By using Vue, are there premade components that suit us better that xterm?

  1. What infrastructure needs to be in place to support Vue?
  2. What code might need to be changed on the frontend/backend.
  3. We should look into Vue static analysis to make sure we follow best practices
  4. Can we recycle any previous html, js, css?

Maybe start a branch for vue-migration

@0xHericles
Copy link
Owner

0xHericles commented Nov 7, 2019

I created a Slack for the org. I think it's a good place to discuss this. :)

@vladdoster
Copy link
Collaborator

I created a Slack for the org. I think it's a good place to discuss this. :)

Please make a gitter. It also allows you to make a badge for it so people can go there to ask questions. there is no slack badge and it is cumbersome to signup. Gitter has github integration oauth2.

@satanb4
Copy link
Contributor Author

satanb4 commented Nov 7, 2019

#42 #47 and #63 can now be closed. And work for the beta can begin on #76

@vladdoster
Copy link
Collaborator

@hericlesme @satanb4 Are either of you comfortable with TypeScript? I would assume this would be the best for following industry standards as well as make it easier to test. I always forget just how much the frontend consists of in 2019, a bundle builder, some typed JS, a frontend framework. It is a lot.

@vladdoster
Copy link
Collaborator

The whole front-end stack is a little out of my wheelhouse.

@satanb4
Copy link
Contributor Author

satanb4 commented Nov 8, 2019

I am comfortable with a Javascript workflow. And no need to focus on heavy duty front-end as long as the code is maintainable and is functional. We'll have a Design Document discussion with a task-list for the Beta release in which, tech stack will be a priority.

@vladdoster
Copy link
Collaborator

Are we using slack yet to communicate? I have held off on signing up for it until we are sure. @hericlesme @satanb4 ?

@0xHericles
Copy link
Owner

0xHericles commented Nov 15, 2019

@vladdoster, @satanb4 no...
Sorry for the delay. I needed to spend some time without going here, but I'm back! 🚀
So, no we can continue to plan/discuss the changes. I'll create a Gitter for the organization and we can use it to communicate. 🤓

@0xHericles
Copy link
Owner

@satanb4, @vladdoster Chat already created on Gitter (986f648). You can join clicking here. 🎉

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dependencies Pull requests that update a dependency file hacktoberfest help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants