TODO: restructure the @type/is source files into categorized subfolders
The current structure of the @type/is project is a mostly flat folder full of files,
spanning a wide range of different topics and purposes. This not only makes it difficult
to maintain the project, but also makes it difficult to navigate the hierarchy of its
source code in even the most mundane of ways.
This is a tracking issue for my goal to restructure the package into a more organized,
categorized format, grouping together the modules based on the general purpose or API
they are a part of. These groups will roughly align with the synthetic directories that
already exist as entry points in the package manifest, except they will actually exist
in those locations on disk.
When all is said and done this should prove to be a much more intuitive pattern than the
current project structure...which is really starting to feel claustrophobic with the
roughly ~160+ modules all living in the same ./src folder.
Related Tasks and Notes-to-Self
TODO: restructure the
@type/issource files into categorized subfoldersThe current structure of the
@type/isproject is a mostly flat folder full of files,spanning a wide range of different topics and purposes. This not only makes it difficult
to maintain the project, but also makes it difficult to navigate the hierarchy of its
source code in even the most mundane of ways.
This is a tracking issue for my goal to restructure the package into a more organized,
categorized format, grouping together the modules based on the general purpose or API
they are a part of. These groups will roughly align with the synthetic directories that
already exist as entry points in the package manifest, except they will actually exist
in those locations on disk.
When all is said and done this should prove to be a much more intuitive pattern than the
current project structure...which is really starting to feel claustrophobic with the
roughly ~160+ modules all living in the same
./srcfolder.Related Tasks and Notes-to-Self
./testsfolder into the same locations astheir corresponding source files. This will make it much easier to jump between a
source file and its unit tests, and will also make it more obvious which files are
missing unit tests.
./src/iterable-iterator.ts./tests/iterable-iterator.test.ts./src/iteration/iterable-iterator.ts./src/iteration/iterable-iterator.test.ts./iterable.ts,./iterator.ts,./iterable-iterator.tsbe groupedtogether in an
./iterablefolder? Or./iterators? Or./iteration? 🤔./weak-map.tsis exposed as./weak-map,./weakmap, and./weak/map.This pattern quickly becomes hard to manage when its applied to nearly 200 files.
./_internal.tsfile into granular submodules within./_internal/to include in the primary
isnamespace. (is this idea even feasible? it sounds neat,potentially allowing "lite" / custom "builds" of the library. we'll see.)
from the existing type guard functions. How will this new project structure impact it?