-
Notifications
You must be signed in to change notification settings - Fork 26
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
Code refactoring #117
Comments
Very nice start! 👍 We could focus on the API, then the CLI would just have to call API functions behind the scenes. This way we don't duplicate code and it eases keeping feature parity betwen API and CLI. Other things we should clean up:
Misc:
|
Really cool. I believe it would also be cool to have some hooks, like "before building", or for each generated file. |
Great insights here. Thanks both @UltCombo and @felipenmoura. |
@felipenmoura I believe that fits in #6 |
@jaydson I think we should do this in small (but "complete") steps. E.g.:
I don't really care about the name either, it was just a random idea. 😛 |
Can we focus on this refactoring soon? I guess it would be nice to get this done as soon as we merge the currently open big PRs/branches (ESLint, external themes). @jaydson can we schedule a hangout to kick off this refactoring? |
It's time to apply some serious code refactoring on Harmonic.
The project has evolved and we discovered a lot of quirks in tools we're using and within our own code.
As a bleeding-edge project, this kind of thing can happen at any time, and this is awesome IMHO.
I'm labelling this issue with 'discussion' and 'p2' because we need to define some goals first, but after that, refactoring is absolutely one of ours priorities.
I'm starting to draft a model(kind of) of what we can do in our code structure, based on what we already have:
What we have in this first draft:
./bin
folder cleanupcli
,config
,resources
folders. The idea here is to isolate specific code inside those foldersskeleton
andclient
folders moved toresources
foldercore_modules
*core_modules folder:
All internal modules must to be placed inside the
core_modules
folder.We can split the code in tiny modules, so we can re-use in CLI, API, etc.
Another benefit of the
core_modules
folder is that we can identify future node modules, so we can "promote" them to npm.I definitely need some help and feedback here @UltCombo @leobalter @felipenmoura
The text was updated successfully, but these errors were encountered: