monorepo.tools
advanced
monorepo.tools | advanced | |
---|---|---|
26 | 25 | |
278 | - | |
1.4% | - | |
2.7 | - | |
4 months ago | - | |
TypeScript | ||
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
monorepo.tools
-
OneRepo: JavaScript/TS monorepo toolchain for safe, strict, fast development
I'm surprised this isn't getting any attention. Reading the docs, sounds very promising, thanks for creating this! I see Nx, Turbo and Moon being mentioned in passing in [Alternatives & pitfalls](https://onerepo.tools/concepts/why-onerepo/#alternatives--pi...), but a more in-depth comparison would be interesting. At least something that could be a column in the table at the bottom of [monorepo.tools](https://monorepo.tools/#tools-review).
-
Josh: Just One Single History
> I don't think anyone coming from a multi-repo world really understands the full implications of a monorepo until they've worked in a large scale one
That's entirely fair. My sole experience is the one black-sheep monorepo at my own relatively-recently joined company, which is nowhere even close to approaching true large scale.
Genuine question, though - what _are_ the advantages, as you see them (you didn't explicitly say as much, but I'm reading between the lines that you _can_ see some)? Every positive claim I've seen (primarily at https://monorepo.tools/, but also elsewhere) feels either flimsy, or outright false:
* "No overhead to create new projects - Use the existing CI setup" - I'm pretty confident that the amount of DX tooling work to make it super-smooth to create a new project is _dwarfed_ by the amount of work to make monorepos...work...
* "Atomic commits across projects // One version of everything" - this is...actively bad? If I make a change to my library, I also have to change every consumer of it (or, worse, synchronize with them to make their changes at the same time before I can merge)? Whereas, in a polyrepo situation, I can publish the new version of my library, and decoupled consumers can update their consumption when they want to
* "Developer mobility - Get a consistent way of building and testing applications" - it's perfectly easy to have a consistent experience across polyrepos, and or to have an inconsistent one in a monorepo. In fairness I will concede that a monorepo makes a consistent experience more _likely_, but that's a weak advantage at best. Monorepos _do_ make it significantly harder to _deliberately_ use different languages in different services, though, which is a perfectly cromulent thing to permit.
-
What is the difference between monoliths, microservices, monorepos and multirepos?
The section on what monorepo tools should provide is useful if you are planning to set up an enterprise-level monorepo.
-
Contributing to the cause: doing it the open-source way
The next step would be to familiarize yourself with the codebase. Most of the repositories use monorepos for organizing and managing their code. A rule of the thumb here would be to make yourself familiar with what component lies in which place. It is next to impossible to understand the entire codebase at once. For starters, you can:
-
Joys and woes of monorepos
Monorepos are a great concept, especially in environments like Node.js which encourage having many small packages.
- Desenvolvendo APIs fortemente tipadas de ponta a ponta com tRPC
-
Confuse about TypeScript setup in monorepo
You might want to use monorepo tooling like NX, Lerna, or Turborepo to guide you. https://monorepo.tools/ has a list of tools.
- Monorepo Explained
-
Øyvind Berg and John De Goes discuss Bleep, the new config-as-data build tool
This explains it really well: https://monorepo.tools/
-
Good monorepo tooling
Have a look here to get some good context around monorepo tooling and if it’s something you actually need and want to do - https://monorepo.tools Some of the monorepo tooling can be a steep learning curve so you want to really think about the problem you are trying to solve and whether the effort will be worth it
advanced
-
Contributing to the cause: doing it the open-source way
GitHub advanced search
-
6 ways to find projects for Hacktoberfest 2023
GitHub's advanced search. GitHub advanced search provides tons of filters to find repos and issues according to our preferences. You can filter by language, extension, issue labels, number of stars/forks, etc. 🔗 Link - github.com/search/advanced
-
The Llama Ecosystem: Past, Present, and Future
See https://github.com/search/advanced there are various date options
-
Help finding a project/repository
You can try playing around with advanced search.
-
How to identify technologies ?
Usually when I as a user want to check if a technology exists or is legit I do a GitHub search like a GitHub advanced search or a Google Advanced Search, and for the Google Advanced Search if I want it to search for things in GitHub I will put https://github.com/ in the "site or domain:" field. Google puts more popular results closer to the top so usually I would just click the first result and then look at the number of stars on GitHub and if the number is low (like less than 1000) it's not a sufficiently popular project. You could write code that automates the process of doing a Google Advanced Search or searching GitHub by using Selenium or maybe just making an API call or HTTP request then using something like BeautifulSoup to scrape the site (BeautifulSoup converts the site into an object that you can query). GitHub just uses plain HTML, CSS, and JavaScript without using a framework like React or Angular so it shouldn't be too hard to scrape.
-
What do i do to become hireable?
Next, find a project that takes contributions (many do). You said you know TypeScript and JavaScript, so search for repositories in those languages. You can use GitHub's advanced search to search by language, just set the language to JavaScript or TypeScript and click search, you don't have to fill out anything else. Alternatively, if there's a tool or website you like to use, see if it's hosted on GitHub and check the "Issues" tab in the repository's main page.
-
Codeberg – Fast Open Source Alternative to GitHub
Are you being sarcastic?
If not, GitHub recently updated their search feature and it's pretty good.
https://github.com/search/advanced
-
Best ways to: historically get issues/PRs in a specific periode with some criteria — overview of multiple members tasks like assigned issues, PRs they are requested to review etc?
I can do an advanced search on GitHub: https://github.com/search/advanced, but I find it hard to find open issues in specific repos, that are not assigned to any one.
-
How long did it take you to really grok Nix(OS)?
GitHub advanced search
-
I am a REAL bad software developer and this is my life
I don't know for sure, but it might be possible for you to make the jump from hobby to professional. There are a lot of technical books on Amazon, there are various coding and programming communities and groups on Reddit and Facebooks, and there are lots of potential codebases that you could try working on on GitHub (I personally used GitHub advanced search at https://github.com/search/advanced ). Sometimes on GitHub they label coding issues for beginners with the "easy" label which you can search for using GitHub advanced search. Oh, and there are coding bootcamps which take a percentage of your income after you're hired, plus there are programs in the US like Revature and SkillStorm that will put you into a shitty junior coding position for two years at $15-$20 an hour but then if you do okay or good at that and get good references you can move to a non-junior level position after that at much better pay. In my experience you usually don't know how well you will perform at a job until after you actually have to do that job.
What are some alternatives?
ember-react-example - Example of invoking React components from an Ember app.
legit - web frontend for git
nx-dotnet
lsif-clang - Language Server Indexing Format (LSIF) generator for C, C++ and Objective C
large-monorepo - Benchmarking Nx and Turborepo
supertux - SuperTux source code
bleep - A bleeping fast scala build tool!
latex-french-report - Document class for french reports
lerna - :dragon: Lerna is a fast, modern build system for managing and publishing multiple JavaScript/TypeScript packages from the same repository.
impermanence - Modules to help you handle persistent state on systems with ephemeral root storage [maintainer=@talyz]
nx-recipes - 🧑🍳 Common recipes to productively use Nx with various technologies and in different setups. Made with ❤️ by the Nx Team
gitlab