{"id":18320908,"url":"https://github.com/1407arjun/create-any-app","last_synced_at":"2026-02-16T20:35:42.826Z","repository":{"id":57150479,"uuid":"464790843","full_name":"1407arjun/create-any-app","owner":"1407arjun","description":"A command line interface for rapid creation, configuration and development of JavaScript apps.","archived":false,"fork":false,"pushed_at":"2022-04-02T17:20:15.000Z","size":680,"stargazers_count":3,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-23T23:00:06.219Z","etag":null,"topics":["boilerplate","cli","create-any-app","npm-package","templates"],"latest_commit_sha":null,"homepage":"https://npmjs.com/package/create-any-app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/1407arjun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-03-01T07:37:53.000Z","updated_at":"2022-04-02T08:48:58.000Z","dependencies_parsed_at":"2022-09-03T16:50:41.460Z","dependency_job_id":null,"html_url":"https://github.com/1407arjun/create-any-app","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/1407arjun/create-any-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/1407arjun%2Fcreate-any-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/1407arjun%2Fcreate-any-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/1407arjun%2Fcreate-any-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/1407arjun%2Fcreate-any-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/1407arjun","download_url":"https://codeload.github.com/1407arjun/create-any-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/1407arjun%2Fcreate-any-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29517617,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T18:37:19.720Z","status":"ssl_error","status_checked_at":"2026-02-16T18:36:46.920Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boilerplate","cli","create-any-app","npm-package","templates"],"created_at":"2024-11-05T18:17:53.881Z","updated_at":"2026-02-16T20:35:42.805Z","avatar_url":"https://github.com/1407arjun.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Create Any App\n\nCreate Any App is a command line interface for rapid creation, configuration and development of JavaScript apps.\n\n## Quick Start\n\n```sh\nnpx create-any-app \u003cframework\u003e my-app\n```\n\n\u003e If you've previously installed `create-any-app` globally via `npm install -g create-any-app`, we recommend you uninstall the package using `npm uninstall -g create-any-app` to ensure that `npx` always uses the latest version.\n\nCheck out the package README [here](packages/README.md).\n\n## Templates\n\nAll templates used can be found in the `templates` directory. The following conventions are followed:\n\n-   All templates for a particular framework are located at `templates/\u003cframework\u003e`\n-   Each framework template directory contains two main subdirectories - `default` and `typescript` for the JavaScript and TypeScript base versions respectively.\n-   Directories starting with `--` contain the files for the particular configuration corresponding to the name of the directory which are either added or overwritten during configuration. (For example `--tw` would contain files for TailwindCSS.)\n-   The templates do not contain a `package.json` file as they are generated when the project is initialized.\n\n### Local Development\n\nTo get a local copy up and running follow these simple steps.\n\n#### Prerequisites\n\nIn order to get a copy of the project you will require you to have Node.js (v14+) and the NPM package manager installed. If you don't have it, you can download the latest version of Node.js from the [official website](https://nodejs.org/en/download/) which also installs the NPM package manager by default.\n\n#### Installation\n\nOpen the terminal in the folder in which you wish to clone the repository and enter the following command:\n\n```sh\ngit clone https://github.com/1407arjun/create-any-app.git\ncd create-any-app\n```\n\nInstall all the NPM packages:\n\n```sh\ncd packages\nnpm i\n```\n\nTo add the project to PATH run:\n\n```sh\nnpm link\n```\n\nRun on the command line:\n\n```sh\ncreate-any-app --help\n```\n\n#### Project Structure\n\n```\ncreate-any-app\n├── README.md\n├── LICENSE\n├── CONTRIBUTING.md\n├── .eslintrc.json\n├── .prettierrc\n├── packages\n│   ├── bin\n│   │   └── caa.js           //Entry point to the CLI\n│   ├── data                 // Data about supported configurations\n│   └── lib\n│       ├── fs\n│       │   ├── types        // File system operations specific to each framework\n│       │   ├── utils        // Utility functions for file system operations\n│       │   ├── download.js  // Function to download template from GitHub archive\n│       │   ├── npm.js       // NPM packages corresponding to all configurations\n│       │   └── main.js      // Entry point to project setup\n│       ├── inquirer\n│       │   ├── features     // Prompts for all configurations\n│       │   ├── dir.js\n│       │   └── features.js  // Prompt for main menu\n│       ├── cli.js           // Entry point for any framework command\n│       ├── create.js        // Entry point for create command\n│       ├── preset.js        // Entry point for preset command\n│       ├── settings.js      // Returns the configurations recorded from all prompts\n│       └── conf.js          // Configure the conf package (for config files)\n└── templates\n    └── framework\n        ├── default\n        └── typescript\n```\n\n## Contributing\n\nContributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**. Read [CONTRIBUTING.md](CONTRIBUTING.md).\n\n1. Fork the Project. [(Refer the local development instructions)](#local-development)\n2. Create your Feature Branch. (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes. (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the Branch. (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request.\n\n### Contributing to the templates\n\nFollowing are some of the guidelines that have to be followed when creating/modifying a template:\n\n-   The base versions of the templates (`default` or `typescript`) are generated from the default templates of the framework itself and have the same project structure except the `tsconfig.json` and other type decalaration files.\n-   Modification or addition of configurations must be made in both, the `default` and `typescript` templates, so as to maintain the same structure and functionality across the base templates.\n-   Create `--*` directories where necessary. The files in this directory will replace the default template files with the same name in its parent directory. (For example, if the default template contains an `index.js` file made using CSS and you want to add a TailwindCSS configuartion to it, then keep the `index.js` file as it is and in the same directory create a `--tw` directory and add an `index.js` file to it which is made with TailwindCSS)\n\n### Contributing to the frameworks:\n\nFollowing are some of the guidelines that have to be followed when adding/modifying a framework configuration:\n\n-   Add the base versions of the templates (`default` or `typescript`) which are generated from the default templates of the framework itself and have the same project structure except the `tsconfig.json` and other type decalaration files.\n-   Add your framework as a seperate command to `bin/caa.js` and give it a type name to be used throughout the package.\n-   Append the same name from the step above to the `switch` case in `main.js`.\n-   Create a new file by the name of the framework from above inside `lib/fs/types` and add all the file operations required for various options to it. (Refer `lib/fs/types/next.js` as an example)\n-   Use the functions provided under `lib/fs/util` to ease some of the file system operations.\n-   Finally, follow the [guidelines](#contributing-to-the-templates) to modify the base templates to cater to all options.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F1407arjun%2Fcreate-any-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F1407arjun%2Fcreate-any-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F1407arjun%2Fcreate-any-app/lists"}