## Set up your application

### Create a new Flutter application

Create a new project using Flutter CLI:

```bash
flutter create budget_tracker
```

### Add Amplify to your application

Amplify Flutter is distributed via [pub.dev](https://pub.dev/packages/amplify_flutter).

1. From your project root directory, find and modify your `pubspec.yaml` and add the Amplify plugins to the project dependencies.

    ```yaml
    environment:
      sdk: ">=2.18.0 <3.0.0"

    dependencies:
      amplify_api: ^1.0.0
      amplify_auth_cognito: ^1.0.0
      amplify_authenticator: ^1.0.0
      amplify_flutter: ^1.0.0
      flutter:
        sdk: flutter
      go_router: ^6.5.5
    ```

2. Install the dependencies by running the following command. Depending on your development environment, you may perform this step via your IDE (or it may even be performed for you automatically).

    ```bash
    flutter pub get
    ```

### Platform Setup

Depending on the platform you're building for, some extra set up may be required. 

<BlockSwitcher>

<Block name="iOS">

import ios from '/src/fragments/lib/project-setup/flutter/platform-setup/ios.mdx';

<Fragments fragments={{ flutter: ios }} />

</Block>

<Block name="Android">

import android from '/src/fragments/lib/project-setup/flutter/platform-setup/android.mdx';

<Fragments fragments={{ flutter: android }} />

</Block>

<Block name="Web">

import web from '/src/fragments/lib/project-setup/flutter/platform-setup/web.mdx';

<Fragments fragments={{ flutter: web }} />

</Block>

<Block name="macOS">

import macos from '/src/fragments/lib/project-setup/flutter/platform-setup/macos.mdx';

<Fragments fragments={{ flutter: macos }} />

</Block>

<Block name="Windows">

import windows from '/src/fragments/lib/project-setup/flutter/platform-setup/windows.mdx';

<Fragments fragments={{ flutter: windows }} />

</Block>

<Block name="Linux">

import linux from '/src/fragments/lib/project-setup/flutter/platform-setup/linux.mdx';

<Fragments fragments={{ flutter: linux }} />

</Block>

</BlockSwitcher>
