Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/se7entyse7en/npm-packages-deps-retrieval
https://github.com/se7entyse7en/npm-packages-deps-retrieval
Last synced: 24 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/se7entyse7en/npm-packages-deps-retrieval
- Owner: se7entyse7en
- License: apache-2.0
- Created: 2019-11-08T20:11:02.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T00:44:57.000Z (almost 2 years ago)
- Last Synced: 2024-06-21T03:11:43.204Z (5 months ago)
- Language: JavaScript
- Size: 2.68 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# npm-packages-deps-retrieval
## Running
The requirements are: `docker`, `docker-compose`, `make`.
To run the application, you need to clone the repository and run the following commands:
```
$ make docker-build
$ make start
```Go to `http://localhost:8000`.
## TODOs
- [ ] Add diagram of the architecture
- [ ] Add a way to observe components stats
- [ ] Add tests
- [ ] Add error message in web page
- [ ] Dockerize application## Ideas
- Use npm registry webhook to point to the `dispatcher`
- Use a graph database that should be much more suitable for this data
- Add an in-memory LRU cache to both workers and APIs
- Add a distributed in-memory LRU cache (redis)
- Before hitting the DB it may worth adding a bloom filter on top
- For each package with unpinned dependencies, consider each compatible ones## Limitations
- Dependencies prefixed with `~` `^` are threated as pinned
- Dependencies with different qualifiers (`>=`, `<`, etc.) are ignored