OpenCRVS
v1.5
v1.5
  • 👋Welcome!
  • CRVS Systems
    • Understanding CRVS
    • Effective digital CRVS systems
    • OpenCRVS within a government systems architecture
    • OpenCRVS Value Proposition
  • Product Specifications
    • Functional Architecture
    • Workflow management
    • Status Flow Diagram
    • Users
      • Examples
    • Core functions
      • 1. Notify event
      • 2. Declare event
      • 3. Validate event
      • 4. Register event
      • 5. Print certificate
      • 6. Issue certificate
      • 7. Search for a record
      • 8. View record
      • 9. Correct record
      • 10. Verify record
      • 11. Archive record
      • 12. Vital statistics export
    • Support functions
      • 13. Login
      • 14. Audit
      • 15. Deduplication
      • 16. Performance management
      • 17. Payment
      • 18. Learning
      • 19. User support
      • 20. User onboarding
    • Admin functions
      • 21. User management
      • 22. Comms management
      • 23. Content management
      • 24. Config management
    • Data functions
      • 25. Legacy data import
      • 26. Legacy paper import
  • Technology
    • Architecture
      • Performance tests
    • Standards
      • FHIR Documents
        • Event Composition
        • Person
        • Registration Task
        • Event Observations
        • Locations
    • Security
    • Interoperability
      • Create a client
      • Authenticate a client
      • Event Notification clients
      • Record Search clients
      • Webhook clients
      • National ID client
      • FHIR Location REST API
      • Other ways to interoperate
  • Default configuration
    • Intro to Farajaland
    • Civil registration in Farajaland
    • OpenCRVS configuration in Farajaland
      • Application settings
      • User / role mapping
      • Declaration forms
      • Certificate templates
    • Business process flows in Farajaland
  • Setup
    • 1. Planning an OpenCRVS Implementation
    • 2. Establish project and team
    • 3. Gather requirements
      • 3.1 Mapping business processes
      • 3.2 Mapping offices and user types
      • 3.3 Define your application settings
      • 3.4 Designing event declaration forms
      • 3.5 Designing a certificate template
    • 4. Installation
      • 4.1 Set-up a local development environment
        • 4.1.1 Install the required dependencies
        • 4.1.2 Install OpenCRVS locally
        • 4.1.3 Starting and stopping OpenCRVS
        • 4.1.4 Log in to OpenCRVS locally
        • 4.1.5 Tooling
          • 4.1.5.1 WSL Support
      • 4.2 Set-up your own, local, country configuration
        • 4.2.1 Fork your own country configuration repository
        • 4.2.2 Set up administrative address divisions
          • 4.2.2.1 Prepare source file for administrative structure
          • 4.2.2.2 Prepare source file for statistics
        • 4.2.3 Set up CR offices and Health facilities
          • 4.2.3.1 Prepare source file for CRVS Office facilities
          • 4.2.3.2 Prepare source file for health facilities
        • 4.2.4 Set up employees & roles for testing or production
          • 4.2.3.1 Prepare source file for employees
          • 4.2.3.2 Configure role titles
        • 4.2.5 Set up application settings
          • 4.2.5.1 Managing language content
            • 4.2.5.1.1 Informant and staff notifications
          • 4.2.5.2 Configuring Metabase Dashboards
        • 4.2.6 Configure certificate templates
        • 4.2.7 Configure declaration forms
          • 4.2.7.1 Configuring an event form
        • 4.2.8 Seeding & clearing your local databases
        • 4.2.9 Countryconfig API endpoints explained
      • 4.3 Set-up a server-hosted environment
        • 4.3.1 Verify servers & create a "provision" user
        • 4.3.2 TLS / SSL & DNS
          • 4.3.2.1 LetsEncrypt https challenge in development environments
          • 4.3.2.2 LetsEncrypt DNS challenge in production
          • 4.3.2.3 Static TLS certificates
        • 4.3.3 Configure inventory files
        • 4.3.4 Create a Github environment
          • 4.3.4.1 Environment secrets and variables explained
          • 4.3.4.2 VPN Recipes
        • 4.3.5 Provisioning servers
          • 4.3.5.1 SSH access
          • 4.3.5.2 Building, pushing & releasing your countryconfig code
          • 4.3.5.3 Ansible tasks when provisioning
        • 4.3.6 Deploy
          • 4.3.6.1 Running a deployment
          • 4.3.6.2 Seeding a server environment
          • 4.3.6.3 Login to an OpenCRVS server
          • 4.3.6.5 Resetting a server environment
        • 4.3.7 Backup & Restore
          • 4.3.7.1 Restoring a backup
          • 4.3.7.2 Off-boarding from OpenCRVS
    • 5. Functional configuration
      • 5.1 Configure application settings
      • 5.2 Configure registration periods and fees
      • 5.3 Managing system users
    • 6. Quality assurance testing
    • 7. Go-live
      • 7.1 Pre-Deployment Checklist
    • 8. Operational Support
    • 9. Monitoring
      • 9.1 Application logs
      • 9.2 Infrastructure health
      • 9.3 Routine monitoring checklist
      • 9.4 Setting up alerts
      • 9.5 Managing a Docker Swarm
  • General
    • Community
    • Contributing
    • Releases
      • v1.5.1: Release notes
      • v1.5.0: Release notes
      • v1.4.1: Release notes
      • v1.4.0 to v1.4.1 Migration notes
      • v1.4.0 Release notes
      • v1.3.* to v1.4.* Migration notes
      • v1.3.5: Release notes
      • v1.3.4: Release notes
      • v1.3.3: Release notes
      • v1.3.1: Release notes
      • v1.3.0: Release notes
      • v1.2.1: Release notes
      • Patch: Elasticsearch 7.10.2
      • v1.2.0: Release notes
      • v.1.1.2: Release notes
      • v.1.1.1: Release notes
      • v1.1.0: Release notes
    • Roadmap
Powered by GitBook
On this page
  1. Setup

2. Establish project and team

Create a team that has the skills to be able to setup, implement, manage and maintain your OpenCRVS instance.

Previous1. Planning an OpenCRVS ImplementationNext3. Gather requirements

OpenCRVS has been specifically designed to require minimal technical effort to setup and configure. The individuals who do so should however have the right knowledge and skills to be successful. These roles are defined below.

  1. Technical System Administrator: in order to run OpenCRVS, this resource will need to have a working knowledge of Linux / Unix operating systems and be able to run terminal commands. OpenCRVS consists of multiple servers which run in Docker containers and requires Node JS. They should be familiar with the concepts of Docker and Node.js web application software development.

  2. Business Analyst / National System Administrator: to configure application details, forms and vital event certificates, this resource will need to have strong business analysis skills, as well as be experienced in managing systems for enterprise level organisations.

For countries where additional software development effort is required, we suggest building a team with the following skills. Note that the size of the team will depend on the scope of work and time available.

  1. Designer: a resource with UI and UX experience is required to translate business and system requirements into user interfaces and experiences that reflect their needs. The component library can be used to design pages with ease and consistently with the rest of the product.

  2. Scrum Master: a qualified Scrum Master is needed to manage agile development of additional features and functionality in line with OpenCRVS standards.

  3. Full Stack Developers: experienced full-stack developer with expertise and experience in using Node.js (HapiJS or Express), React and Typescript. This person will also require a working knowledge of Unix operating systems (MacOS / Linux), Git, MongoDB & Docker. Should be familiar with DevOps and software testing practices.

  4. Quality Assurance Engineer(s): experienced QA engineers are critical to perform comprehensive testing in advance of implementation.

Technology alone cannot transform civil registration services. Integrated programme components are required to ensure effective buy-in and take-up of the new system and services. Consider the following team members:

  1. Change Management Lead: design and implement an effective change management strategy that ensures effective buy-in and take-up of the new system and services.

  2. Training Lead: design and implement an effective training programme that equips users with the skills required to efficiently use the system and deliver excellent services.

  3. Deployment Lead: design and implement a deployment approach and plan that enables efficient rollout of the system across the country.

  4. Monitoring & Evaluation Lead: design and implement a continuous improvement approach that allows you to continuously learn and improve both the product and implementation approach over time.

For any questions about establishing a team to configure, further develop, or manage and maintain OpenCRVS effectively, get in touch at team@opencrvs.org.

These are the resources required to setup OpenCRVS. As part of a digitisation programme many other roles will be required to successfully implement and ensure adoption of the new technology. See the for more details.

CRVS Digitisation Guidebook
How to resource an OpenCRVS implementation programme