Getting Started

Getting Started with VistA

OSEHRA and its community offer expertise and resources to help guide you in exploring the OSEHRA VistA ecosystem.

Trying it out

If you are completely new to VistA and just want to give it a try, you are able to download a demo version of Computerized Patient Record System (CPRS), the primary clinician client for VistA. To learn how to use CPRS, check out the CPRS User Guide: GUI Version or for a more in depth training, see the free, online interactive CPRS training course available from VA eHealth University (VeHU).

If you want to develop software on VistA, OSEHRA offers either a Docker container-based or VirtualBox VM-based installation that builds a VistA development environment based on the OSEHRA VistA. The Docker container installation will take about 15 minutes, while the VirtualBox installation will need about an hour to complete.

Learning to use the system

To get a feel for how to use OSEHRA VistA, OSEHRA's Multimedia Education Portal offers a variety of training resources gathered from community members. In addition, the Department of Veterans Affairs offers basic training resources to help new users orient themselves in the system through the VeHU and our other community members offer a number of resources, as well.

Programming in VistA

VistA’s platform is primarily written in M or MUMPS, a very common language in healthcare. In addition, it has its own custom implementations of operating system-like components, such as a database management system and task manager. This architecture can make learning to develop and support VistA challenging. OSEHRA offers a community maintained index of resources to help developers understand how to program in VistA.

Understanding the system’s architecture

OSEHRA VistA can be viewed as a core platform and a series of components that can be used in conjunction with the platform. Due to the way VistA has been engineered, the platform contains many modules that are in varying states of functionality. Drawing a cohesive view of the platform’s functionality and its relationship with various components is a community effort, maintained on an OSEHRA hosted wiki available through It is an excellent starting point to get a better understanding of what VistA does and does not do.

Contributing code

OSEHRA welcomes contributions to VistA big and small. If you are contributing M/MUMPS code that is part of the VistA platform, OSEHRA provides a simple methodology, modeled on Linux’s approach and powered by Git. If you want to contribute new components or more general contributions, OSEHRA receives them via the technical journal, which helps the community index and understand what is available.

VistA’s road ahead

OSEHRA VistA exists in order to allow adopters to have an easy method of internalizing contributions made by the community into their solutions. To ensure this is done in the most effective way possible, the members who draw code from OSEHRA VistA drive the product roadmap, and contributions are accepted through a structured certification process to ensure the code is of acceptable quality. This process is done transparently with the community. To see what is currently being worked on and what is planned, visit