API / Code
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 15/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Domain
- api, backend-api-design
Research direction
This issue is a broad API roadmap discussion and names no files, tests, or entry points. Start by reviewing the existing code and tests from snap, bluepyemodel, and bbp-workflow, then compare their APIs, repository structures, tooling, and search approaches. The work is not complete until the project agrees on a concrete scope and implementation plan.
Written by the indexing model from the issue text.
Description
Opened to discuss the API side of the matters. Obviously, not all the issues need to be resolved on the spot but these are some of my thoughts and questions of the general road map.
Some points of discussion (non-exhaustive, in no particular order)
- From which tools APIs will be added
- snap, bluepyemodel, bbp-workflow, etc
- Uniform "look-and-feel" (for the lack of a better word)
- naming of actions/items: e.g., get/fetch/retrieve, search/find/query, register/push, resource/entity/item...
- should probably have a common/core nexus class for everything and inherit/use that in the domain-specific APIs
- should we try to have somewhat uniform documentation (e.g., same topics: Introduction, Usage, Examples, API doc, changelog)?
- Structure of the repository
- Same as in the in bbp docs "Suites" + common code?
- what would this mean in terms of existing APIs? divide them if they cover more than one suite?
- Code style/linting/testing
- Should decide which tools are used if big differences between existing projects
- test coverage
- running tests with live data in nexus
- Conflicting dependencies, if they exist
- is anything dependant on a specific version of a library
- will probably remain to be seen
- Searching for data
- search method(s) to use
- how are search filters input (dictionary, kwargs)
- do we provide "easy-access-classes", e.g. DetailedCircuitApi().get(species=mouse)
- First steps
- I guess, moving the code/tests of different projects to have an overall picture what we are dealing with
Please feel free to add questions issues to the list (I'll update if necessary) as there is stuff missing, for sure.
@jdcourcol , @mgeplf , @DrTaDa , @GianlucaFicarelli , @genric
- Dominant language
- Jupyter Notebook
- Stars
- 5
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from BlueBrain/bluepyentity
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
BlueBrain/bluepyentity#20 ·
-
CLI Wishlist Open
Difficulty 5/5 Over a week Newbie friendliness 15/100
BlueBrain/bluepyentity#1 · 14 comments ·
All issues in BlueBrain/bluepyentity
Similar issues
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
AXERA-TECH/ax-llm#77 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
games-on-whales/wolf#509 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100