Skip to main content

UniChem 2.0


UniChem new beta interface and web services

We are excited to announce that our UniChem beta site will become the default one on the 11th of May.
The new system will allow us to better maintain UniChem and to bring new functionality in a more sustainable way.
The current interface and web services will still be reachable for a period of time at https://www.ebi.ac.uk/unichem/legacy.
In addition to it, the most popular legacy REST endpoints will also remain implemented in the new web services: https://www.ebi.ac.uk/unichem/api/docs#/Legacy
Some downtime is expected during the swap. 

What's new?

UniChem’s current API and web application is implemented with a framework version that’s not maintained and the cost of updating it surpasses the cost of rebuilding it. In order to improve stability, security, and support the implementation and fast delivery of new features, we have decided to revamp our user-facing systems using the latest version of widely used and maintained frameworks, infrastructure, and the best practices in our software engineering processes.

We have separated the API (backend) to the Web Application systems, which contributes to the system’s overall availability and stability, as well as facilitating features delivery. Both built using popular programming languages and frameworks.

Modern API

Our web services are now implementing current REST standards such as JSON payloads for the request and response, allowing a more intuitive experience for the users. The way the services are called and its response has been simplified but retaining the same functionality.

To improve usability we provide a live and interactive documentation where users can explore the functionalities by reading and directly trying them.

In-depth documentation and information can be found here.

Modern Web Interface

Built using the latest version of a very popular frontend framework and widely used libraries which allow us to provide enhanced user experience and a more pleasant user interface, while at the same time providing better accessibility features. 

Get more information about the exciting new and upcoming features, as well as how to use it here.

Compound sources and connectivity searches

Searches for a specific compound can be done using the traditional InChI, InChI Key, or its ID on an specific source database, additional to that users can now search by drawing their molecule on the sketcher

Drawing a compound to search using the Sketcher

As part of the web services simplification we changed the way the endpoint is used, by moving the information requested to a JSON payload.

Here is an example of how it works on the current version:

And this is an example for the same search on the new UniChEM:

Backwards compatibility

We have identified which endpoints are used the most and have re implemented them in order to offer backwards compatibility and ease the transition between the current and new system.


We do encourage users to switch to the new endpoints as they are implemented using the latest standards and best practices. 

More information about our legacy endpoints here.




Comments

Popular posts from this blog

LSH-based similarity search in MongoDB is faster than postgres cartridge.

TL;DR: In his excellent blog post , Matt Swain described the implementation of compound similarity searches in MongoDB . Unfortunately, Matt's approach had suboptimal ( polynomial ) time complexity with respect to decreasing similarity thresholds, which renders unsuitable for production environments. In this article, we improve on the method by enhancing it with Locality Sensitive Hashing algorithm, which significantly reduces query time and outperforms RDKit PostgreSQL cartridge . myChEMBL 21 - NoSQL edition    Given that NoSQL technologies applied to computational chemistry and cheminformatics are gaining traction and popularity, we decided to include a taster in future myChEMBL releases. Two especially appealing technologies are Neo4j and MongoDB . The former is a graph database and the latter is a BSON document storage. We would like to provide IPython notebook -based tutorials explaining how to use this software to deal with common cheminformatics p