X-ray powder diffraction (XRD) is a ubiquitous method for the characterization of crystal structures of inorganic materials. To solve a crystal structure from XRD, the diffraction pattern obtained from a sample is compared to reference patterns of structures from the target chemical space. Subsequently, the matching structure(s) can be further refined with techniques such as Rietveld refinement. However, when a completely new crystal structure is encountered, the interpretation and subsequent solution of the structure from the XRD pattern may be time consuming and indeterminate even for domain experts. Several steps are needed to characterize a new inorganic crystal structure from experimental XRD patterns. First, the measured patterns may be processed to account for background, and to identify peak locations and intensities. Next, the lattice parameters and space group are identified. These first two steps of solving a crystal structure may be difficult when the XRD patterns are low resolution or the sample contains multiple phases. However, established figures of merit (M 20 , F N , WRIP20) , and multiple open source software programs have been developed to automate and clarify the unit cell classification process. The final, and often most challenging step is to determine the atomic positions within a unit cell. Reciprocal space methods can determine the crystal structure exactly, but are limited by peak overlap and resolution limits. For most samples, especially those available in the form of microcrystalline powder, direct space approaches are generally more practical and widely used. These techniques involve global optimization of free parameters describing the crystal structure, and utilize domain knowledge to reduce the available degrees of freedom as much as possible. Methods including simulated annealing, genetic algorithms, and particle swarm have all been used to deduce the atomic positions. While these approaches have been shown to be effective in solving a wide range of crystal structures across chemistries, many rely on the specification of an expected structure or atomic building blocks such as oxygen tetrahedra or prototype structures to reduce the free parameters as much as possible. In some cases, these heuristics can introduce a barrier by limiting relevant degrees of freedom or a bias by way of structure sampling which can influence the structure solution technique. In addition, this task may be especially difficult in less common chemical systems such as sulfides and nitrides, which are becoming fertile grounds for materials discovery. To avoid these biases and limitations, methods utilizing structure generation schemes such as CALYPSO do not place restraints on the starting symmetry. However, this greatly expands the structural search space and complexity to all 230 space groups. FPASS, which implements a genetic algorithm, similarly generalizes the search space by parameterizing all degrees of freedom associated with the symmetry groups consistent with XRD. In this paper, we introduce an automated, open-source Python framework for solving inorganic crystal structures by XRD, coupling systematic, exhaustive structure generation with first-principles density functional theory (DFT) simulations. Given an indexed XRD pattern, together with the associated lattice parameters, space group, and expected elemental composition, our Automated XRD to Structure (AXS) framework follows an efficient path that utilizes the symmetry operations of the space group and subsequent degrees of freedom to generate crystal structures which span the space of possible structures in the space group and chemical system. These structures are filtered to avoid atomic overlap, ranked based on their goodness-of-fit to the diffraction pattern, and then high-ranking structures are relaxed with DFT to obtain the optimal atomic positions while assessing energetic viability of the structure. This software is unique from other direct space approaches in that candidate structures span the constrained space of possible structures, sampling the search space with a user specified density. The AXS procedure is guaranteed to encompass the correct solution to a single phase inorganic crystalline XRD sample with known chemical composition as atomic positions are sampled on finer grids, and hence is improvable by increasing the computational budget. For this reason, we hope this methodology can be a benchmark for automated XRD structure solution in the future as computational power becomes more and more accessible. The success of direct space methods to solve crystal structures, including this one, is generally limited by the high dimensionality of the search space. However, the use of crystal symmetry, physically-motivated filter, and increased compute power allows for efficient structure generation. We demonstrate that AXS obtains the correct solution for 91 out of 99 structures under reasonable computational costs for both structure generation and DFT, and also use AXS to solve three light element containing crystal structures (one previously unsolved). We offer this algorithm as a basic framework for any user to solve crystal structure from XRD patterns as well as a proof of concept for brute force direct space structure solution framework to solve novel structures containing light elements from diffraction patterns. Our implementation of AXS takes an indexed XRD pattern as the starting point for the algorithm. Many reliable software packages for this indexing are widely available. In addition, AXS expects the space group and unit cell parameters corresponding to the indexed pattern as input, as well as the chemical identity and number of atoms in the unit cell. A flowchart detailing the workflow is presented in Figure .