Retrieving Project Name

Is there something similar to "EditorApplication.currentScene" for the currently opened project? I'm doing some batch processing of the project and would like to grab it's name. Seems like there should be something in the API to easily do this already, but I can't seem to find it.

You can use the Application class to find the directory name where your Project Assets are stored - then cut up the path. That's the closest I know. Sample JS code would be:

function Start() {
    var dp : String = Application.dataPath;
    var s : Array;
    s = dp.Split("/"[0]);
    Debug.Log("project = " + s[s.length - 2]);

So if your Project Assets was in: C:\Current Projects\Labs\01 Box Demo\Assets, the output would be project = 01 Box Demo.

Just for the C# crowd:

public string GetProjectName()
    string[] s = Application.dataPath.Split('/');
    string projectName = s[s.Length - 2];
    Debug.Log("project = " + projectName);
    return projectName;

PlayerSettings.productName might also return what you want.

I was trying to find an unique identifier for project and many google search results ended up to this thread. If anyone else is looking for a unique unchanging identifier for projects, this seems to do the trick: