datproject-discussions
datproject-discussions copied to clipboard
Improving the dat project repository organization
(NOTE This proposal is part 1c of Positioning, vision and future direction of the Dat Project)
In https://github.com/datproject/discussions/issues/70 you'll find a chart of the current dat-ecosystem, and a conclusion that it can be improved. This issue has a proposal for improvement:
datecosystem
Github organization for official modules of the Dat ecosystem
Repo name | Current name | Remarks |
---|---|---|
dat-node-cli |
dat | remove one overloaded use of 'dat' |
dat-node-api |
dat-node | |
dat-js-api |
dat-js | |
dat-hyperdrive |
hyperdrive | |
dat-hyperdrive-http |
hyperdrive-http | |
dat-hyperdrive-network-speed |
hyperdrive-network-speed | |
dat-hypercore |
hypercore | |
dat-hypercore-protocol |
hypercore-protocol | |
dat-hyperdiscovery |
hyperdiscovery | |
dat-multidat |
multidat | |
dat-multidrive |
multidrive | |
(other official dat -*) |
(same) | remainder of green modules, 16 modules |
Every repository is self-contained:
- user manual (markdown)
- api documentation (inline with code, e.g. jsdoc)
- examples (code snippets included in user manual, api docs)
- code
- tests
datproject
Github organization for community-facing websites, non-code repositories
Repo name | Remarks |
---|---|
web |
datproject.org , the central community hub |
docs |
docs.datproject.org , architecture-, protocol-, user- and API- documentation
|
discussions |
discussion, questions, feature requests, ideas |
roadmaps |
roadmaps, release planning, development strategy, ongoing projects |
style |
visual design, assets, branding, renamed from design |
awesome |
awesome page, renamed from awesome-dat |
datattic
Github organization for archived repositories that are old, outdated, abandoned or just experiments
Next part: Provide high-level project tracking of ongoing work and roadmaps
Given that a lot of the 'official' dat project modules currently are dispersed in repositories belonging to @mafintosh @karissa @joehand @juliangruber and others leads me to following questions:
- Does this subdivision reflect who is the primary responsible person for a particular module?
- Does every core team member have full access to each of these repositories?
- Does every core team member actively monitor the whole of the 'official' ecosystem and jump in if other members are unavailable (respond to issues, merge PR's, change project config, TravisCI, etc.)?
- Do you have overview yourself of all modules, to maintain consistency and compatibility?
Some of the modules exist independently from dat, like for example hypercore and hyperdrive
Yes, they have their independent uses. But they are foundational to the dat project. Without them no dat project. Its just a move to make it more consistent, nothing else changes. Besides the README's state they are part of dat project.
The reason you don't like the dat-
prefix is maybe more to do with the term dat
being overloaded about 4 or 5 times (dat = [dat project, dat archive, dat cli, dat api, dat technology, dat et al, ...]
). In my proposed awesome page I correct a number of wrong uses of terminology and changed dat
to dat archive
in many occasions to get a more consistent use of domain language.
Since nodejs is also foundational to the dat project, shall we rename it to dat-node
? :P
Ha ha, no, because it is not created by dat core team, does not mention it belongs to dat project..