feat: add core features