refactoring the project modal. also adding a loader