Rails does time zones very well, and you will have a hard time replicating the results ActiveSupport::TimeWithZone#in_time_zonewithout using it.
For example, as you indicated:
>> t = Time.parse "2018-04-02T14:30:00Z"
>> t.in_time_zone('Eastern Time (US & Canada)')
Mon, 02 Apr 2018 10:30:00 EDT -04:00
But keep in mind that you can also do:
>> t = Time.parse "2018-01-02T14:30:00Z"
>> t.in_time_zone('Eastern Time (US & Canada)')
Tue, 02 Jan 2018 09:30:00 EST -05:00
, ActiveSupport , / , . .js (, , , ).
require 'active_support', , Rails?