id = "meteor" name = "Meteor" homepage = "https://www.meteor.com" description = "Meteor is an ultra-simple environment for building modern web applications." icon = "theSVG:meteor" executables = ["meteor"] [dotfiles] # The meteor tool is configured per app (.meteor/ inside the project) and by # environment variables. The one thing it writes into the home directory is the # login file below; ~/.meteor is the tool's own installed release tree, not # something the user wrote. paths = [] exclude = [] # tools/meteor-services/config.js, whose comment says it outright: # # // Path to file that contains our credentials for any services that # // we're logged in to. Typically .meteorsession in the user's home # // directory. # export function getSessionFilePath() { # return process.env.METEOR_SESSION_FILE || # pathJoin(getHomeDir(), '.meteorsession'); # } # # (METEOR_SESSION_FILE is annotated "for automated testing purposes only", so # the home-directory path is the real one.) The file is JSON: per accounts # domain a `token`, its `tokenId`, the `username` and `userId`, written with # mode 0600 by `writeSessionData` in tools/meteor-services/auth.js. # https://github.com/meteor/meteor/blob/devel/tools/meteor-services/config.js # https://github.com/meteor/meteor/blob/devel/tools/meteor-services/auth.js # # Despite the name it is not per-machine session state: `token` is a Meteor # Accounts login token that authenticates the user against www.meteor.com and # Galaxy from anywhere until it is revoked, which is why logging out has to send # the server a `pendingRevoke` list rather than just deleting the file. Carrying # it to another machine keeps you logged in — so it is a credential worth # naming, not a device-bound cookie. secret = ["~/.meteorsession"] [commands] format = 1 label = "Meteor" description = "Run, create and extend a Meteor project. Pick a job below; deploy, build, test and publish are left out." quality = "ai-draft" base = "fig:meteor" parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/meteor.ts" license = "MIT" [[commands.subcommand]] path = ["run"] label = "Run dev server" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/meteor.ts" license = "MIT" [[commands.subcommand.field]] id = "port" label = "Port" type = "integer" option = ["--port", "-p"] sources = ["fig"] [[commands.subcommand.field]] id = "settings" label = "Settings JSON file" type = "path" option = ["--settings", "-s"] path = { kind = "file", role = "input" } sources = ["fig"] [[commands.subcommand.field]] id = "production" label = "Simulate production mode" type = "boolean" option = ["--production"] sources = ["fig"] [[commands.subcommand.field]] id = "no_lint" label = "Skip linters on rebuild" type = "boolean" option = ["--no-lint"] sources = ["fig"] [[commands.subcommand.field]] id = "verbose" label = "Verbose build logs" type = "boolean" option = ["--verbose"] sources = ["fig"] [[commands.subcommand.task]] id = "dev" label = "Dev server" fields = ["port", "settings"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["port", "settings", "production", "no_lint", "verbose"] [[commands.subcommand]] path = ["create"] label = "Create project" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/meteor.ts" license = "MIT" [[commands.subcommand.field]] id = "path" label = "Project path" type = "path" position = 0 path = { kind = "directory", role = "output" } sources = ["fig"] [[commands.subcommand.field]] id = "react" label = "React template" type = "boolean" option = ["--react"] sources = ["fig"] [[commands.subcommand.field]] id = "vue" label = "Vue template" type = "boolean" option = ["--vue"] sources = ["fig"] [[commands.subcommand.field]] id = "svelte" label = "Svelte template" type = "boolean" option = ["--svelte"] sources = ["fig"] [[commands.subcommand.field]] id = "typescript" label = "TypeScript React template" type = "boolean" option = ["--typescript"] sources = ["fig"] [[commands.subcommand.field]] id = "minimal" label = "Minimal app" type = "boolean" option = ["--minimal"] sources = ["fig"] [[commands.subcommand.field]] id = "bare" label = "Empty app" type = "boolean" option = ["--bare"] sources = ["fig"] [[commands.subcommand.task]] id = "new_app" label = "New React app" fields = ["path"] required = ["path"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["path", "react", "vue", "svelte", "typescript", "minimal", "bare"] [[commands.subcommand]] path = ["add"] label = "Add packages" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/meteor.ts" license = "MIT" [[commands.subcommand.field]] id = "packages" label = "Packages" type = "string" position = 0 multiple = true sources = ["fig"] [[commands.subcommand.task]] id = "add" label = "Add packages" fields = ["packages"] required = ["packages"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["packages"]