Skip to content

Repo Structure - Modularizing and Consuming other Webpack Repos #301

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

Closed
skipjack opened this issue Nov 5, 2016 · 5 comments
Closed

Repo Structure - Modularizing and Consuming other Webpack Repos #301

skipjack opened this issue Nov 5, 2016 · 5 comments

Comments

@skipjack
Copy link
Collaborator

skipjack commented Nov 5, 2016

Opening a discussion for how we can break parts of this repo out (as we were discussing with the components) and consume other repos like webpack/media.

From #297:

Adding package.json to webpack/media would allow that to be consumed as a npm dependency. That might be a nice way to manage it.

@bebraw that's a good idea, I was thinking via a submodule but maybe sticking with npm for everything is simpler...

I'm also interested in what the team's plans are for the analyze tool. Ideally maybe we could have shared repo of components and utilities that this site, the analyze tool, and others all consume for a consistent interface?

Or maybe things like the voting app and analyze tool can be separate SPAs that this site consumes and displays under one of it's routes?

@bebraw
Copy link
Contributor

bebraw commented Nov 9, 2016

There's an effort going on for renewing the analyse tool. Integration is going to be interesting. Maybe we could consume it as a dependency (React component) and push it within an Interactive container somehow? That would allow us to retain main site navigation and all that.

Any thoughts @bartekus?

@bartekus
Copy link

bartekus commented Nov 9, 2016

@bebraw I definitely agree about keeping things modular and the way the current analyze tool is structure should allow the whole component to work as either part of a bigger set or as an individual SPA.
Certainly flexibility, modability and extensibility are the ways of the webpack and as such, they should be our aim too.
Keeping the webpack brand consistent and coherent to itself is in my opinion a great strategy to take.

@bebraw
Copy link
Contributor

bebraw commented Nov 9, 2016

@bartekus Awesome. Good design would make it possible to run it through Electron and so on. Actually wrapping the site within Electron would be feasible (not sure of the exact benefit unless we add some features), but still. 👍

@bartekus
Copy link

bartekus commented Nov 9, 2016

@bebraw I think the benefit in and of itself would be to push the envelope further and further and to keep trying new ways of utilizing the power that webpack based development affords so that we continue to lead and advance the javascript community.

@skipjack
Copy link
Collaborator Author

@bebraw @webpack/documentation-team I'm going to close this for now and try to focus mainly on knocking out documentation tasks for the next month or so. Once we get further along with the actual content, I think we can then take more time to clean everything up. This issue has so many parts to it that I think we should instead create smaller more targeted issues and re-open it once more pieces are in place.

Some notes in the meantime:

  • I've already extracted and cleaned up our banner/navigation component into a separate repo called react-banner.
  • I think the sidebar-mobile component could be replaced by an external open source react component like react-sidebar however we might have to find another that plays better with antwar's interactive feature.
  • There are likely some other components like the contributors, gitter button, notification bar etc that can either be extracted or replaced by existing open source react components.
  • The entire voting app can be cleaned up and extracted into a separate repo similar to the discussion of the analyze tool.
  • This package and maybe others could be used to simplify our bloated markdown utility which has already caused some issues. Related discussion in Reference Style Links | Re-consider Marked #178.

Benefits to these changes:

  • Simplify this repo and make it's codebase more approachable
  • Isolating these pieces makes testing and adjustments easier
  • Pushes many UI and non-documentation related issues out to other repositories
  • Extracted components can now be used in other sites/applications (webpack tools included)
  • And probably a lot more...

As mentioned above, I'm going to try to direct my attention towards finishing the last few UI issues and then try to start a move to knock out as many documentation issues as possible. If anyone wants to pick up something from the list above, please create a new more targeted issue or PR that we can knock out quickly. Hopefully we'll open this back up in a couple months and start banging away with less high priority docs issues and more time on our hands 👍 .

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

3 participants