CrysX – AR Documentation

The following is the documentation for CrysX – AR version 1.0

For the documentations of CrysX-3D Viewer and CrysX: Crystallographic Tools, visit and respectively.


CrysX – AR is an Android app that let’s you visualize molecules and crystals in Augmented Reality. The tool is powered by Google ARCore. The app can open .cif and .xyz files. This tool can help you make your poster presentations stand apart. Even classroom presentations can be made more intuitive.

Application Details

CrysX – AR runs on ARCore, which is provided by Google LLC and governed by the Google Privacy Policy.

Download and Installation:

CrysX – AR is available as a .apk file for the Android platform. The .apk file can be downloaded from here (CrysX-AR_v1.0) or installed directly from the Google Play Store. The advantage of installing it from the Google Play Store is that the app will get updated automatically. However, if you do download it from the former link, then you might have to enable a setting to ‘Allow apps from external sources’ in your Android settings, to be able to install it successfully.


The app version 1.0 contains the Following Features:

  1. Can read .CIF, and .XYZ files.
  2. Detect horizontal and vertical planes.
  3. Visualize structures (from .cif or .xyz files) on the detected plane at the click of a button.

Supported Devices:

Note: ARCore, isn’t certified/ supported on all Android devices. You can find a list of officially supported devices and more details here:

Report a Bug:

You can report a bug by either leaving a review on the Google Play Store, or leaving a comment here, or reaching out to the developer via email: [email protected]If you find a bug or have any queries or want to request a feature you can also post your question here: with the tag ‘CrysX‘.

Request a Feature:

You can request a feature by either leaving a review on the Google Play Store, or leaving a comment here, or reaching out to the developer via email: [email protected]

Usage Instructions, Tips and Examples

Using CrysX-AR is simple and easy. Launch the app, once installed. Give it the necessary permissions regarding CAMERA and STORAGE Access. These are essential for making the app work. Once you give the permissions, you would see the screen acting as a Camera. Aim the camera at any plane such as a floor, table surface, etc. Make sure to hold the device stable so that the planes can be detected successfully. Once the plane is detected, it would be shown as a colored virtual web of dots. Once this is visible, just tap anywhere on this virtual surface/web and the default TiO2 anatase system would be anchored to that point. You can then use the magnifying glass icons to increase or decrease the size of the molecules. You can rotate the molecule or crystal about two axes, by swiping on the screen either vertically or horizontally. You can also open your own custom molecule or crystal.

The app currently supports only .CIF or .XYZ format files. To open these files in CrysX-AR they need to be on your Android devices’s storage. If you don’t have such a file you can download a ZIP containing some samples from this link. Note: The ZIP file would need to be extracted (unzipped). Once unzipped, there is a directory containing CIF files and a directory containing XYZ files. The files in this directory can be read by CrysX-AR.

Once you have the necessary readable files, you can launch the app, and click on the ‘Folder’ icon in the top-left corner of the screen, to bring up the File Browser. You can use the File Browser to navigate to the location where the .CIF or .XYZ files are located, and then click on the file to open it. Once selected, just aim the camera at a surface, and wait for it to detect the plane. Once the plane is detected just tap on it to place the structure at that point. NOTE: The .CIF might take a few seconds to be read. You might therefore notice a freeze of about 2-7 seconds.

TIP #1: Usually, once the molecule or structure is placed on the plane the app would hide the virtual plane/web of dots. However, if it still doesn’t go away, just click on the second-last ‘Hide Plane’ icon at the top of your screen.

TIP #2: If you click on the detected virtual plane and the object doesn’t get placed there, just press the ‘Trash’ icon to delete the previously created structure. NOTE: You can only visualize one molecule/structure at a time.

TIP #3: Sometimes, when you resume the app, then you might not be able to place the object on the detected virtual plane even after deleting the previous object by pressing the ‘Delete’ icon. In this case, just restart the app.

TIP #4: If you press the ‘Hide Plane’ button by mistake, and want show the detected planes again, just press the ‘Trash’ icon.


This slideshow requires JavaScript.

YouTube Tutorial

Open Source Libraries

The app uses the following open source libraries, and the developer thanks the awesome community:

  1. mXParser
  2. Unity Simple File Browser
  3. Google ARCore

Special Notes

It should be noted, that due to the large variety of .CIF formats out there, CrysX may not yet support all of them as the application is still in the budding stage. However, if you ever encounter a file that fails to be parsed, let me know and mail the file to me. I will try to add the compatibility for the various formats. Please let me know if you encounter a problem.

Legal Disclaimer

While I try to make everything as accurate as possible, with honesty, the following disclaimer applies to all the softwares I create:

This software and any accompanying documentation are released “as is.” I make no warranty of any kind, expressed or implied, concerning this software and any accompanying documentation, including without limitation, any warranties of merchantability or fitness for a particular purpose. In no event will I be liable for any damages, including any lost profits, lost savings, or other incidental or consequential damages arising out of the use, or inability of use, of this software or any accompanying documentation, even if informed in advance of the possibility of such damages.

Users are advised to make sure and confirm that the results obtained through CrysX – AR are correct or not on their own and I cannot be held responsible for faulty results. Users are responsible for their results, not me.


CrysX – AR is currently copyrighted with its source code not open to the public; we wish to control the development and future of CrysX – AR by ourselves. This software is distributed free of charge for academic, scientific, educational, and commercial users. Permission to use this software is hereby granted under the following conditions:

  1. Results or calculations done/ produced by CrysX – AR may be used in any publications (original and review articles) provided that its use is explicitly acknowledged. A suitable reference for CrysX – AR is:

Sharma, M. & Mishra, D. (2019). J. Appl. Cryst. 52, 1449-1454.

Article link


CrysX – AR FAQ (Frequently Asked Question)

How to cite this product?

You can cite this by including the following note:

M. Sharma and D. Mishra, Journal of Applied Crystallography 52, (2019).

Article link


Is it free?

Yup! It’s completely free to use.

Will it get updates?

CrysX is always in development and will get regular updates. I still have a lot of features planned that I have to add. So updates are gonna be frequent.

Where can I download the supported .xyz or .cif files from?

CrysX works best with .cif files downloaded from AMCSD database as well as
For .xyz files, you can download the mol files from ChemSpider or CACTUS and then convert it to .xyz format using Open Babel or this tool. You can also download some of the sample files that we provide with CrysX by clicking here.

Can I visualize DNA or biomolecules?

Technically yes, BUT since biomolecules or DNA are extremely large molecules, the application may slow down drastically and become unusable. CrysX is mainly suitable for viewing crystal structures and molecules with less than 500 atoms. Although depending on your system, this number will be different.