Commitments and contingencies - Schedule of Future Minimum Rental Payments for Operating Leases (Details)  | 
 Dec. 31, 2017  
USD ($) 
 | 
|---|---|
| Future minimum lease payments under all non-cancelable operating leases | |
| 2018 | $ 588,021 | 
| 2019 | 511,382 | 
| 2020 | 513,742 | 
| 2021 | 521,375 | 
| 2022 | 529,115 | 
| 2023 and thereafter | 671,553 | 
| Total | $ 3,335,188 | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for leases having an initial or remaining non-cancelable letter-terms in excess of one year. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  | 
| X | ||||||||||
- References No definition available. 
  | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  | 
| X | ||||||||||
- Definition Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. Reference 1: http://www.xbrl.org/2003/role/presentationRef 
  |