1# Project creator
2
3This script will create a new library project and associated Gradle module using
4a `groupId` and `artifactId`.
5
6It will use the `groupId` and `artifactId` to guess which configuration is most
7appropriate for the project you are creating.
8
9## Basic usage
10
11```bash
12./create_project.py androidx.foo foo-bar
13```
14
15## Project types
16
17The script leverages
18`buildSrc/public/src/main/kotlin/androidx/build/SoftwareType.kt` to create the
19recommended defaults for your project. However, you can override the options to
20best fit your requirements.
21
22## Additional documentation
23
24See go/androidx-api-guidelines#module-creation (internal-only) or the
25[equivalent page](https://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:docs/api_guidelines/modules.md#module-creation)
26on public Android Code Search for advanced usage and solutions to common issues.
27
28## Development
29
30If you make any changes to the script, please update this `README` and make
31corresponding updates at go/androidx-api-guidelines#module-creation.
32
33### Testing the script
34
35Generic project integration test
36```bash
37./create_project.py androidx.foo.bar bar-qux
38```
39
40Script test suite
41```bash
42./test_project_creator.py
43```
44