Coder Social home page Coder Social logo

Comments (10)

cipchk avatar cipchk commented on May 18, 2024

thank you very much! NX is very good.

I don't know how many changes will happen, if time permits, i will try to.

from ng-alain.

xgenvn avatar xgenvn commented on May 18, 2024

Yes, it'll be a breaking change for sure. If you intend to integrate NX, can you create another branch so that I can also contribute to?
However, we can write an inject script to have current repository to work with NX.
Please let me know if you have any better idea ;).

from ng-alain.

cipchk avatar cipchk commented on May 18, 2024

it is unlikely that if need releases a breaking change. I have a lot of work to do future, so i can't maintenance extra branches.

can supported NX on the bases, maybe your write an inject script is also a pretty good choice. other ways is so hard to implement, i don't have too much energy.

from ng-alain.

cipchk avatar cipchk commented on May 18, 2024

@xgenvn hi, i pondered this problem over and over again that manage multiple apps within one place.

so, i plan to create a new repository service for business components (like alain), please tell me how to do compatible NX?

from ng-alain.

xgenvn avatar xgenvn commented on May 18, 2024

I'll start experiment with creating a lib called alain, and moving things from the core and shared into alain. Or two different lib (alain_shared, alain_core). Well, I don't think you'll have problem moving things around like that. However, the structures should be well-defined. Then the current dashboard implementation can be defined as a playground app for references.

Perhaps we can create another repository called nx.alain?

from ng-alain.

cipchk avatar cipchk commented on May 18, 2024

Sure, it's the best if you can create a basic project service for NX.

and i have a few questions to ask.

  • What is the difference between NX and npm?
  • What should a NX directory structure?

from ng-alain.

xgenvn avatar xgenvn commented on May 18, 2024

I'm not sure how to answer the first question correctly.
I think it's very similar if we manage the app as npm packages.
There's one point that NX is superior though.
Scenario: We have Front app for user, Admin app for management, maybe Mobile app as well.
With NX, we have these apps under app folder. You can choose to build which app, and anything can be shared, put in lib folder, or separate npm package is also good.

With npm, I suppose we still have multiple app folders, right? And it makes maintenance a little bit harder.
So for me, NX solution is like a Visual Studio solution, where every app is a different project.

from ng-alain.

dreamdevil00 avatar dreamdevil00 commented on May 18, 2024

Why not using lerna to manage packages that you want to share among many other apps ?
And the code structure could be like colmena which is more scalable

from ng-alain.

xgenvn avatar xgenvn commented on May 18, 2024

Hi,

I haven't heard about lerna before. Thank you for mentioning it. Just have been checking it out, it serves similar to NX. However, lerna is very general compare to NX, which serves only Angular based development. And it requires a lot of configuration (correct me if I'm wrong). It's not like NX, one command and we have it working nicely.
And NX will extend Angular CLI, so it'll be better if we're using Angular CLI.

Colmena directory structure is similar to NX, and under active development. NX has reach the stable release at 1.5.x.

from ng-alain.

dreamdevil00 avatar dreamdevil00 commented on May 18, 2024

@xgenvn In fact, there's little configuration you have to do with lerna, just try it.
Yes, Colmena directory structure is similar to NX.

Using lerna to manage projects, you can control the package version and quickly publish it to npm, thus you can update your packages in semver. and use packages in other apps, not only current project. It's flexible whereas you have to manage the directory structure by yourself like Colmena. You can use ng serve as usual and do not have to build libs at first.

AFAIK, using Nx do save our time to manage directory structure and the time to create some basic files, but you can not control the package version.

They are complementary。 I think it may be better if using both of them.

from ng-alain.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.