molgenis
8.0
8.0
  • Introduction
  • What is MOLGENIS
  • Try out MOLGENIS
  • Quick start (docker)
  • Find, view, query
    • Using the navigator
    • Using the search-all
    • Using the dataexplorer
    • Setup authentication
  • Data management
    • EMX format
    • Quickly import data
    • Advanced data import
    • Modify metadata
    • Questionnaires
    • Downloading data
    • Using expressions
  • Access control
    • Users
    • Groups and roles
    • Finegrained permissions
  • Data processing
    • Scripts
    • R
    • Python
    • Schedule jobs
  • Configuration
    • Settings
    • Customize MOLGENIS
    • Localization
    • Apps in MOLGENIS
    • Creating themes
  • Interoperability
    • Swagger specification
    • REST api v1
    • REST api v2
    • Files api
    • Import api
    • Python-api client
    • R-api client
    • Beacon api
    • FAIR api
    • RSQL operators
  • For developers
    • Developing MOLGENIS
    • Developing frontend in MOLGENIS
    • Developing Apps in MOLGENIS
    • Using an IDE (Intellij)
    • Technologies
    • Dynamic decorators
    • Running the integration tests
    • Jobs
    • Security
  • For system administrators
    • Kubernetes (experimental)
    • Standalone server (tomcat)
    • Migration guide
Powered by GitBook
On this page
  • Technologies
  • Development
  • Middleware
  • Frontend
  • Backend
  • Quality
  1. For developers

Technologies

Technologies

We are happy to reuse as much as we can from high-quality existing open source software projects. Find below a listing of the technologies we use:

Development

  • YourKit Java profiler - for profiling our apps with a full-featured intelligent Java Profiler. YourKit, LLC supports our open source project

  • IntelliJ IDEA - for writing Java code. Jetbrains supports our open source project

  • WebStorm - for writing JavaScript code. Jetbrains supports our open source project

  • myBalsamiq - for rapid wireframing. Balsamiq, LLC supports our open source project

Middleware

  • Maven - to organize, compile and build modules

  • Spring framework - to assemble modules at runtime

  • Spring MVC framework - to assemble modules at runtime

  • Spring framework - to create web service 'controllers'

  • Freemarker template language - for server-side layout

  • Various great Apache projects - for utilities such as commons, commons-io, logging

  • Google guava - for utilities

Frontend

  • Bootstrap - for responsible HTML layouts

  • React - to create module user interface components

  • jQuery - to ease javascript + DOM interaction

Backend

  • PostGreSQL - our work-horse for simple database storage

  • ElasticSearch - for smart indexing and search

  • OWL api - for semantic data imports

  • Open CSV - for reading tab/csv delimited files

  • Apache POI - for reading Microsoft Excel files

Quality

  • Github - for our code versioning, bug lists and code reviews

  • Jenkins - our continuous integration build and automatic test server

  • TestNG - for unit tests

  • Selenium+Java - for user interface tests

  • TRAC - for managing our scrum backlog

PreviousUsing an IDE (Intellij)NextDynamic decorators

Last updated 5 years ago