Feature Request: Per Project / Root Folder Data Dirs


Just a general idea / feature request that could be useful to extension developers in the future: per-project package data folders, would probably require a more rigid definition of a ‘project root’ vs a ‘root folder’ i.e. /my-project/.atom/{package-name}

jetbrains IDE’s does this as do many others, the idea being to just have 1 .atom dir in a root folder to contain per-project package data, categorized by folder and given the implementation context of Atom probably capable of using the built-in serializer framework.

this would make it easier to develop packages that operate within the context of a project, first example that pops into my head being Mark’s live-archive but off the top of my head many other potential use cases come to mind, embedded web server configs for project testing, autocomplete databases, sticky notes… - and avoiding the pollution of many different packages in the project folder.

an API if I imagined it, would probably support registering ‘folderProviders’ from packages, deserializing on project load with the registered serializers & project state when root folders are added, checking for the existence of / creating a package-name folder in the current project’s data folder.

hope this makes sense to y’all i’m writing this just before going to bed, as always feedback / comments appreciated. cheers folks,