pub fn from_path(path: impl AsRef<Path>) -> anyhow::Result<Self> {
		let config_root = normalize(
			std::env::current_dir().unwrap(),
			path.as_ref().parent().unwrap(),
		);

		let config_file = ConfigFile::from_path(&path)?;
		let state_directory =
			normalize(config_root.clone(), config_file.state_directory);

		let stacks_node_url = Url::parse(&config_file.stacks_node_url)?;
		let bitcoin_node_url = Url::parse(&config_file.bitcoin_node_url)?;
		let electrum_node_url = Url::parse(&config_file.electrum_node_url)?;

		let wallet = Wallet::new(&config_file.mnemonic)?;

		let stacks_credentials =
			wallet.credentials(config_file.stacks_network, 0)?;
		let bitcoin_credentials =
			wallet.bitcoin_credentials(config_file.bitcoin_network, 0)?;
		let hiro_api_key = config_file.hiro_api_key;

		Ok(Self {
			state_directory,
			stacks_network: config_file.stacks_network,
			bitcoin_network: config_file.bitcoin_network,
			stacks_credentials,
			bitcoin_credentials,
			stacks_node_url,
			bitcoin_node_url,
			electrum_node_url,
			contract_name: ContractName::from(
				config_file.contract_name.as_str(),
			),
			hiro_api_key,
			strict: config_file.strict.unwrap_or_default(),
		})
	}
Read the config file in the path
romeo/src/config.rs