project refactoring to use blueprints