Description
doccano is an open source text annotation tool for human. It provides annotation features for text classification, sequence labeling and sequence to sequence. So, you can create labeled data for sentiment analysis, named entity recognition, text summarization and so on. Just create project, upload data and start annotation. You can build dataset in hours.
doccano alternatives and similar packages
Based on the "Django" category.
Alternatively, view doccano alternatives based on common mentions on social networks and blogs.
-
django-tastypie
Creating delicious APIs for Django apps since 2010. -
Django REST Swagger
Swagger Documentation Generator for Django REST Framework: deprecated -
django-sql-explorer
Easily share data across your company via SQL queries. From Grove Collab. -
django-admin-interface
:superhero: :zap: django's default admin interface with superpowers - customizable themes, popup windows replaced by modals and many other features. -
django-treenode
:deciduous_tree: probably the best abstract model/admin for your tree based stuff. -
django-maintenance-mode
:construction: :hammer_and_wrench: shows a 503 error page when maintenance-mode is on. -
django-newsfeed
A news curator and newsletter subscription package for Django -
django-modern-rpc
Simple XML-RPC and JSON-RPC server for modern Django -
django-template
A battle-tested Django 2.1 project template with configurations for AWS, Heroku, App Engine, and Docker. -
django-formapi
Django API creation with signed requests utilizing forms for validation. -
django-classifier
Flexible constructor to create dynamic list of heterogeneous properties for some kind of entity. This set of helpers useful to create properties like contacts or attributes for describe car/computer/etc. -
fuzzy-couscous
A cli tool to bootstrap your django projects and enhance your development experience. -
dj-shop-cart
A simple and flexible cart manager for your django projects.
Access the most powerful time series database as a service
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of doccano or a related project?
README
doccano
doccano is an open source text annotation tool for humans. It provides annotation features for text classification, sequence labeling and sequence to sequence tasks. So, you can create labeled data for sentiment analysis, named entity recognition, text summarization and so on. Just create a project, upload data and start annotating. You can build a dataset in hours.
Demo
You can try the annotation demo.
Documentation
Read the documentation at the https://doccano.github.io/doccano/.
Features
- Collaborative annotation
- Multi-language support
- Mobile support
- Emoji :smile: support
- Dark theme
- RESTful API
Usage
Three options to run doccano:
- pip (Python 3.8+)
- Docker
- Docker Compose
pip
To install doccano, simply run:
pip install doccano
By default, SQLite 3 is used for the default database. If you want to use PostgreSQL, install the additional dependencies:
pip install 'doccano[postgresql]'
and set DATABASE_URL
environment variable according to your PostgreSQL credentials:
DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}?sslmode=disable"
After installation, run the following commands:
# Initialize database.
doccano init
# Create a super user.
doccano createuser --username admin --password pass
# Start a web server.
doccano webserver --port 8000
In another terminal, run the following command:
# Start the task queue to handle file upload/download.
doccano task
Go to http://127.0.0.1:8000/.
Docker
As a one-time setup, create a Docker container as follows:
docker pull doccano/doccano
docker container create --name doccano \
-e "ADMIN_USERNAME=admin" \
-e "[email protected]" \
-e "ADMIN_PASSWORD=password" \
-v doccano-db:/data \
-p 8000:8000 doccano/doccano
Next, start doccano by running the container:
docker container start doccano
Go to http://127.0.0.1:8000/.
To stop the container, run docker container stop doccano -t 5
. All data created in the container will persist across restarts.
If you want to use the latest features, please specify nightly
tag:
docker pull doccano/doccano:nightly
Docker Compose
You need to install Git and to clone the repository:
git clone https://github.com/doccano/doccano.git
cd doccano
Note for Windows developers: Be sure to configure git to correctly handle line endings or you may encounter status code 127
errors while running the services in future steps. Running with the git config options below will ensure your git directory correctly handles line endings.
git clone https://github.com/doccano/doccano.git --config core.autocrlf=input
Then, create an .env
file with variables in the following format (see ./docker/.env.example):
# platform settings
ADMIN_USERNAME=admin
ADMIN_PASSWORD=password
[email protected]
# rabbit mq settings
RABBITMQ_DEFAULT_USER=doccano
RABBITMQ_DEFAULT_PASS=doccano
# database settings
POSTGRES_USER=doccano
POSTGRES_PASSWORD=doccano
POSTGRES_DB=doccano
After running the following command, access http://127.0.0.1/.
docker-compose -f docker/docker-compose.prod.yml --env-file .env up
One-click Deployment
Service | Button |
---|---|
AWS[1] | |
Heroku | |
<!-- | GCP[2] |
[1]: (1) EC2 KeyPair cannot be created automatically, so make sure you have an existing EC2 KeyPair in one region. Or create one yourself. (2) If you want to access doccano via HTTPS in AWS, here is an instruction. <!-- > [2]: Although this is a very cheap option, it is only suitable for very small teams (up to 80 concurrent requests). Read more on Cloud Run docs. -->
FAQ
See the documentation for details.
Contribution
As with any software, doccano is under continuous development. If you have requests for features, please file an issue describing your request. Also, if you want to see work towards a specific feature, feel free to contribute by working towards it. The standard procedure is to fork the repository, add a feature, fix a bug, then file a pull request that your changes are to be merged into the main repository and included in the next release.
Here are some tips might be helpful. How to Contribute to Doccano Project
Citation
@misc{doccano,
title={{doccano}: Text Annotation Tool for Human},
url={https://github.com/doccano/doccano},
note={Software available from https://github.com/doccano/doccano},
author={
Hiroki Nakayama and
Takahiro Kubo and
Junya Kamura and
Yasufumi Taniguchi and
Xu Liang},
year={2018},
}
Contact
For help and feedback, please feel free to contact the author.