mirror of
https://github.com/tauri-apps/tauri.git
synced 2024-12-19 08:31:35 +03:00
43a8c4d2bc
* Create recipes
A recipe consists of:
* Name
* List of NPM dependencies required (dev and production)
* Sub-commands needed
For example, the react recipes run create-react-app to set
up the UI. Future recipes can do anything, they could pull
down a sample UI, clone a repository, download a static HTML
file, initialize another environment that compiles to JS/wasm etc.
The devPath and dist folders nomally configured by the init command
are overridden by the recipe definition.
* Fix no recipe prompts
* Fix linter unsafe assignment error
* Add `beforeXCommand` settings to recipes
This is so good, it makes it possible to just run:
> yarn init
> yarn add tauri
> yarn tauri init # with recipe selected, adds app ui
> yarn tauri dev # starts app ui dev server and rust component
* Rename init to create
Also improve so it exports a function that can be passed
arguments, instead of just reading directly from command line
* Add new tauri init command aliased to create
* Update changes file
* Remove unneeded import
* Add customized splash page for react recipes
* Remove unneeded recipe buildconfig property
* Add no-browser setting to start react dev server
* Revert "Add no-browser setting to start react dev server"
This reverts commit 22bcf3ac5a
.
58 lines
1.5 KiB
JavaScript
58 lines
1.5 KiB
JavaScript
const parseArgs = require('minimist')
|
|
const tauriCreate = require('./tauri-create')
|
|
|
|
/**
|
|
* init is an alias for create -r none, same as
|
|
* creating a fresh tauri project with no UI recipe applied.
|
|
*
|
|
* @type {object}
|
|
* @property {boolean} h
|
|
* @property {boolean} help
|
|
* @property {string|boolean} f
|
|
* @property {string|boolean} force
|
|
* @property {boolean} l
|
|
* @property {boolean} log
|
|
* @property {boolean} d
|
|
* @property {boolean} directory
|
|
*/
|
|
function main(cliArgs) {
|
|
const argv = parseArgs(cliArgs, {
|
|
alias: {
|
|
h: 'help',
|
|
},
|
|
boolean: ['h']
|
|
})
|
|
|
|
if (argv.help) {
|
|
printUsage()
|
|
process.exit(0)
|
|
}
|
|
|
|
// delegate actual work to create command
|
|
tauriCreate([...cliArgs, '-r', 'none'])
|
|
}
|
|
|
|
|
|
function printUsage() {
|
|
console.log(`
|
|
Description
|
|
Inits the Tauri template. If Tauri cannot find the tauri.conf.json
|
|
it will create one.
|
|
Usage
|
|
$ tauri init
|
|
Options
|
|
--help, -h Displays this message
|
|
--ci Skip prompts
|
|
--force, -f Force init to overwrite [conf|template|all]
|
|
--log, -l Logging [boolean]
|
|
--directory, -d Set target directory for init
|
|
--tauri-path, -t Path of the Tauri project to use (relative to the cwd)
|
|
--app-name, -A Name of your Tauri application
|
|
--window-title, -W Window title of your Tauri application
|
|
--dist-dir, -D Web assets location, relative to <project-dir>/src-tauri
|
|
--dev-path, -P Url of your dev server
|
|
`)
|
|
}
|
|
|
|
module.exports = main
|