smart framework