{"id":17080951,"url":"https://github.com/aero31aero/fuzzquire","last_synced_at":"2025-04-12T20:50:19.704Z","repository":{"id":57158662,"uuid":"104281308","full_name":"aero31aero/fuzzquire","owner":"aero31aero","description":"Somewhat fuzzy intra-project module loading for NodeJS.","archived":false,"fork":false,"pushed_at":"2020-09-15T20:33:06.000Z","size":10,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-09T23:28:57.784Z","etag":null,"topics":["nodejs-modules","readability","require"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aero31aero.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-09-21T00:21:12.000Z","updated_at":"2024-04-02T17:40:32.000Z","dependencies_parsed_at":"2022-09-07T06:24:18.159Z","dependency_job_id":null,"html_url":"https://github.com/aero31aero/fuzzquire","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aero31aero%2Ffuzzquire","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aero31aero%2Ffuzzquire/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aero31aero%2Ffuzzquire/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aero31aero%2Ffuzzquire/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aero31aero","download_url":"https://codeload.github.com/aero31aero/fuzzquire/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248186044,"owners_count":21061592,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nodejs-modules","readability","require"],"created_at":"2024-10-14T12:48:38.107Z","updated_at":"2025-04-12T20:50:19.662Z","avatar_url":"https://github.com/aero31aero.png","language":"JavaScript","readme":"# Fuzzquire\n\nEasier in-project module loading for cleaner and more readable code.\n\nFuzzquire is a wrapper around require. You only need to specify the minimum number of file path parts and the file name to load the file in your project, and thus, you increase the code readability as well as reduce the cognitive load on yourself while coding as you do not have to remember the relative file paths anymore. Bliss!\n\nTry it out: `npm install fuzzquire --save`.\n\n## Example\n\nLet's take a directory structure like:\n\n```\nproject-folder\n├── app.js\n├── package.json\n├── routes\n│   ├── api\n│   │   ├── index.js\n│   │   ├── notify.js\n│   │   ├── services\n│   │   │   ├── events.js\n│   │   │   └── users.js\n│   │   └── typeahead.js\n│   ├── auth.js\n│   ├── components\n│   │   ├── custom\n│   │   │   └── pybits.js\n│   │   ├── custom.js\n│   │   ├── dashboard.js\n│   │   ├── index.js\n│   │   ├── login.js\n│   │   └── portals.js\n│   ├── export.js\n│   ├── index.js\n│   ├── transaction.js\n│   └── upload.js\n├── utils\n│   ├── authentication.js\n│   ├── config-loader.js\n│   ├── service.constructor.js\n│   └── state.js\n```\n\nNow, this is what some file would look before `fuzzquire`:\n\n```js\nconst Users = require('../api/services/users');\nconst auth = require('../../utils/authentication');\nconst config = require('../../utils/config-loader');\nconst pybits = require('./custom/pybits');\nconst app = require('../../app').express;\n...\n```\n\nAnd this would be the same file after `fuzzquire`:\n\n```js\nconst fq = require('fuzzquire');\nconst Users = fq('api/users');\nconst auth = fq('authentication');\nconst config = fq('config-loader');\nconst pybits = fq('pybits');\nconst app = fq('app').express;\n```\n\n## Contributing\n\nContributions are welcomed. If you want a feature or find a bug, please open an issue and I'll try to resolve it quickly.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faero31aero%2Ffuzzquire","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faero31aero%2Ffuzzquire","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faero31aero%2Ffuzzquire/lists"}