ccs-amsterdam / ccs_annotator Goto Github PK
View Code? Open in Web Editor NEWA ReactJS client for manual anntations with AmCAT4
A ReactJS client for manual anntations with AmCAT4
You can use electron to make a standalone desktop application. In this way, users can use the tool like any other desktop application.
This will also help people with limited technical knowledge to start using the tool right away. Also, people concerned about privacy can use it offline.
The repository has two lock files package-lock.json
and yarn.lock
. As the instructions suggests using npm, yarn.lock
should be removed.
It would be nice to have a more descriptive information about the tool. Users should be able to understand what the tool provides and what not.
It will be useful to write a blog post to get feedback from the community. This will also help deciding the new features and getting users onboard in early stages of the development.
It would be nice to add link to AmCAT4 for users not familiar with AmCAT4.
It is good to have an idea about a data size the tool can handle. Maybe users can be suggested not to use a very big text as this going to create some performance issues.
The code runs in user's web-browser and annotated data stays in web-browser cache. If users are not informed about this, they may hesitate to use the tool due to privacy issues.
If you create a DOI and suggest users to cite your software in their publications, you can get a credit for this work.
Users can use existing Codes for annotation. It would be nice if users can also add a new code in Annotate page.
Please have a look at the link below for an example.
https://github.com/matchms/matchms/blob/master/CONTRIBUTING.md
Annotation data can be downloaded as JSON file but uploading is not possible. Can you add JSON upload support?
When on the annotation page the 'reset' button is shown in the top right.
I would expect that it would clear all annotations, but instead it resets the whole app and browsers.
Adding issue templates helps to get structured information when user creates a ticket.
Please see https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository for instructions on adding issue templates.
I suggest templates for the following topics:
You can find some examples here:
https://github.com/research-software-directory/research-software-directory/tree/master/.github/ISSUE_TEMPLATE
When the user visits the interface for the first time, a guided tour will be very useful. https://introjs.com can be used for that.
GitHub action can automatically test the build of the software on every push. This will be very beneficial to figure out the problems before merging to the main branch.
One way of quickly annotating is to (following the example):
When downloading the annotations, the resulting json file is strange, something seems to go wrong with the printing of the annotation object.
Currently, the annotations are converted to a string (containing the json), and this string itself is added as "annotations":
"annotations": "[\n {\n \"code\": \"Mark Rutte\",\n \"offset\": 318,\n \"length\": 10\n },\n
Expected output, a json array of annotation objects:
"annotations": [ { "code": "Mark Rutte", "offset": 318, "length": 10 }, ],
It would be nice to have visual feedback (ie. progress bar?) to see how far you are on the annotation task.
There is no obvious way to go to the next (and possibly previous) document to label.
I can click on the top drowdown, but that does not scale for many sentences, and it is not clear from the start.
Users may want to try the online demo before using the tool locally.
It would be nice if you could
Adding unit tests will help you avoid unexpected issues. It will also give users more trust. You can use Jest, Mocha or any other testing framework.
Please see https://jestjs.io/docs/tutorial-react for Jest documentation.
A screencast will be extremely useful for users to see how the tool works. You could record your screen while showing the features using the online demo.
When annotating large datasets, using the mouse quickly become tiresome.
Currently the software does not have a license. Legally speaking, without a license the tool cannot be used and developers cannot contribute.
I suggest to use Apache 2.0 License.
Please see the link below for the instructions to add a license.
https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.