firebase / firebase-tools
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 439 files with 49,344 lines of code.
    • 3 very long files (4,629 lines of code)
    • 11 long files (6,839 lines of code)
    • 46 medium size files (14,272 lines of codeclsfd_ftr_w_mp_ins)
    • 79 small files (11,162 lines of code)
    • 300 very small files (12,442 lines of code)
9% | 13% | 28% | 22% | 25%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
ts10% | 14% | 29% | 21% | 24%
js0% | 11% | 27% | 32% | 28%
yaml0% | 0% | 0% | 78% | 21%
html0% | 0% | 0% | 0% | 100%
go0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/emulator25% | 28% | 26% | 13% | 6%
scripts/storage-emulator-integration100% | 0% | 0% | 0% | 0%
src/extensions0% | 34% | 19% | 21% | 23%
src0% | 18% | 31% | 21% | 29%
scripts0% | 46% | 25% | 10% | 16%
src/deploy0% | 0% | 32% | 31% | 35%
src/gcp0% | 0% | 43% | 40% | 15%
src/management0% | 0% | 100% | 0% | 0%
src/firestore0% | 0% | 73% | 9% | 17%
src/commands0% | 0% | 8% | 38% | 52%
src/init0% | 0% | 30% | 18% | 50%
standalone0% | 0% | 66% | 23% | 10%
src/hosting0% | 0% | 44% | 27% | 28%
scripts/integration-helpers0% | 0% | 80% | 0% | 19%
src/throttler0% | 0% | 77% | 0% | 22%
src/functions0% | 0% | 51% | 38% | 9%
src/appdistribution0% | 0% | 0% | 65% | 34%
scripts/firepit-builder0% | 0% | 0% | 100% | 0%
scripts/publish0% | 0% | 0% | 100% | 0%
src/serve0% | 0% | 0% | 46% | 53%
src/database0% | 0% | 0% | 0% | 100%
src/remoteconfig0% | 0% | 0% | 0% | 100%
templates/init0% | 0% | 0% | 0% | 100%
templates0% | 0% | 0% | 0% | 100%
templates/extensions0% | 0% | 0% | 0% | 100%
templates/hosting0% | 0% | 0% | 0% | 100%
scripts/test-project0% | 0% | 0% | 0% | 100%
scripts/build0% | 0% | 0% | 0% | 100%
scripts/assets0% | 0% | 0% | 0% | 100%
templates/setup0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
operations.ts
in src/emulator/auth
2406 68
functionsEmulator.ts
in src/emulator
1127 17
tests.ts
in scripts/storage-emulator-integration
1096 24
functionsEmulatorRuntime.ts
in src/emulator
865 46
state.ts
in src/emulator/auth
742 29
extensionsApi.ts
in src/extensions
649 24
controller.ts
in src/emulator
634 11
extensionsHelper.ts
in src/extensions
630 24
profileReport.js
in src
583 40
files.ts
in src/emulator/storage
569 41
gen-auth-api-spec.ts
in scripts
550 9
widget_ui.ts
in src/emulator/auth
544 19
firebase.ts
in src/emulator/storage/apis
537 5
auth.ts
in src
536 34
server.ts
in src/emulator/auth
494 23
github.ts
in src/init/features/hosting
482 23
fabricator.ts
in src/deploy/functions/release
472 19
indexes.ts
in src/firestore
460 6
firepit.js
in standalone
456 14
cloudfunctions.ts
in src/gcp
443 15
utils.ts
in src
408 37
apiv2.ts
in src
407 15
api.ts
in src/hosting
405 16
metadata.ts
in src/emulator/storage
403 10
delete.ts
in src/firestore
384 9
downloadableEmulators.ts
in src/emulator
372 14
cloudfunctionsv2.ts
in src/gcp
365 11
runtime.ts
in src/emulator/storage/rules
362 17
projects.ts
in src/management
361 16
apps.ts
in src/management
349 13
commandUtils.ts
in src/emulator
345 9
ext-install.ts
in src/commands
339 4
backend.ts
in src/deploy/functions
338 19
accountImporter.js
in src
326 11
containerCleaner.ts
in src/deploy/functions
323 13
api.js
in src
314 11
test-functions-deploy.js
in scripts
300 22
handlers.ts
in src/emulator/auth
291 6
framework.ts
in scripts/integration-helpers
276 1
types.ts
in src/emulator
267 9
askUserForParam.ts
in src/extensions
258 10
gcloud.ts
in src/emulator/storage/apis
252 2
emulatorLogger.ts
in src/emulator
252 4
ext-update.ts
in src/commands
249 2
updateHelper.ts
in src/extensions
241 11
database.ts
in src/management
236 7
uploader.ts
in src/deploy/hosting
233 6
functionsEmulatorShared.ts
in src/emulator
232 10
throttler.ts
in src/throttler
230 9
command.ts
in src
229 5
Files With Most Units (Top 20)
File# lines# units
operations.ts
in src/emulator/auth
2406 68
functionsEmulatorRuntime.ts
in src/emulator
865 46
files.ts
in src/emulator/storage
569 41
profileReport.js
in src
583 40
utils.ts
in src
408 37
auth.ts
in src
536 34
state.ts
in src/emulator/auth
742 29
tests.ts
in scripts/storage-emulator-integration
1096 24
extensionsHelper.ts
in src/extensions
630 24
extensionsApi.ts
in src/extensions
649 24
github.ts
in src/init/features/hosting
482 23
server.ts
in src/emulator/auth
494 23
test-functions-deploy.js
in scripts
300 22
widget_ui.ts
in src/emulator/auth
544 19
backend.ts
in src/deploy/functions
338 19
fabricator.ts
in src/deploy/functions/release
472 19
functionsEmulator.ts
in src/emulator
1127 17
runtime.ts
in src/emulator/storage/rules
362 17
projects.ts
in src/management
361 16
api.ts
in src/hosting
405 16
Files With Long Lines (Top 20)

There are 76 files with lines longer than 120 characters. In total, there are 160 long lines.

File# lines# units# long lines
controller.ts
in src/emulator
634 11 11
functionsEmulator.ts
in src/emulator
1127 17 7
askUserForConsent.ts
in src/extensions
77 6 6
warnings.ts
in src/extensions
100 4 6
loginFailure.html
in templates
33 - 5
operations.ts
in src/emulator/auth
2406 68 5
emulatorLogger.ts
in src/emulator
252 4 5
404.html
in templates/init/hosting
32 - 4
loginSuccess.html
in templates
30 - 4
loginSuccessGithub.html
in templates
30 - 4
indexes.ts
in src/firestore
460 6 4
ext-install.ts
in src/commands
339 4 4
gen-auth-api-spec.ts
in scripts
550 9 3
index.html
in templates/init/hosting
79 - 3
database.ts
in src/management
236 7 3
github.ts
in src/init/features/hosting
482 23 3
updateHelper.ts
in src/extensions
241 11 3
prompts.ts
in src/deploy/functions
176 3 3
tests.ts
in scripts/storage-emulator-integration
1096 24 2
init.js
in templates/hosting
24 - 2