Vector35 / Vector35/binaryninja-api
Project Notes
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 1.3k
- Forks
- 298
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 19
Description
What is the feature you'd like to have?
It would be magical to have a "Notes" tab just to the right of the "Files" and "Recents" tab on a Project. It doesn't need to be anything super fancy. It just needs to support Markdown. The goal is to have an easily editable page that can serve as a guide for the Project. For example, if you have a project that is for a malware family, you may have a ton of samples. Some of the samples may have a database. And there are going to be "primary" databases that represent exemplars of variants from the malware family. These are the databases with deep analysis in tags and annotations and work in general. It can be hard to find the exemplar database in a folder of many databases. The Notes tab would give an analyst the ability to write out descriptions and information about the malware family for example. And then leveraging Markdown, links in the descriptions of malware features can link to the appropriate database at the exact location the text is describing using the URL opener syntax. You can even loosely develop a report. Or if you write a report elsewhere, you can paste it here. Options are limitless. Please make an API endpoint for reading and writing this Notes tab if this gets implemented. There are many possibilities for programmatically updating content while working in a database within the project.
Refining this idea a bit: this can can be markdown, html, or plaintext notes. This way it follows the reports paradigm. Markdown and HTML notes will support hyperlinking like those types of reports, except that the hyperlinking can be to or into any file in the project. if the file is a bndb, it opens it. if the file is a binary it opens that. basically all the same behavior that you can do with URL opener links from outside binary ninja. Lastly, and this is where it diverges from binaryview reports: the UI should have edit/save and there should be read/write api endpoints in the project module.
Contributor guide
No contributing guide indexed for this repository
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.
Research direction
Start by reviewing the project module, the reports paradigm, and existing URL opener behavior. Define the scope for a Project Notes tab supporting Markdown, HTML, or plaintext, with editable UI behavior and read/write API endpoints. Done means the chosen note format, project-file hyperlinking, and API behavior are specified and implemented consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, markdown
- Domain
- api, desktop, documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100