Creating cross-platform layer and basic framework