add new javascript architecture based on features