Skip to main content

Installation Guide

This guide will walk you through setting up your development environment and installing Wonderous on your local machine.

Prerequisites

1

Install Flutter SDK

If you’re new to Flutter, follow the official Flutter installation guide for your operating system:
Wonderous requires Flutter 3.32.0 or higher and Dart SDK 3.8.0 or higher.
2

Verify Flutter Installation

After installing Flutter, verify your installation:
flutter doctor
This command checks your environment and displays a report. Make sure all required dependencies are installed.
3

Switch to Stable Channel

Wonderous works best with Flutter’s stable channel:
flutter channel stable
flutter upgrade

Platform-Specific Setup

iOS Requirements

To run Wonderous on iOS, you’ll need:
  • macOS computer
  • Xcode 14.0 or higher
  • CocoaPods (usually installed with Xcode)
  • iOS device or simulator

Install Xcode

# Install from Mac App Store or download from:
# https://developer.apple.com/xcode/

# Accept Xcode license
sudo xcodebuild -license accept

# Install command line tools
sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer

Install CocoaPods

sudo gem install cocoapods
Wonderous uses the new Impeller Runtime by default on iOS for enhanced rendering performance.

Clone the Repository

Get the Wonderous source code from GitHub:
git clone https://github.com/gskinnerTeam/flutter-wonderous-app.git
cd flutter-wonderous-app

Install Dependencies

Once you’ve cloned the repository, install all required packages:
flutter pub get
This will download and install all dependencies listed in pubspec.yaml, including:
  • flutter_animate (v4.5.0) - Advanced animations
  • go_router (v17.0.1) - Declarative routing
  • get_it (v7.2.0) - Service locator for dependency injection
  • provider (v6.0.5) - State management
  • flutter_svg (v2.0.1) - SVG rendering
  • image_fade (v0.6.2) - Image transitions
  • flutter_staggered_grid_view (v0.7.0) - Flexible grid layouts
  • extra_alignments (v1.0.0) - Additional alignment options
  • google_maps_flutter (v2.2.8) - Google Maps integration
  • unsplash_client (v3.0.0) - Unsplash API client
  • youtube_player_iframe (v5.2.2) - YouTube video player
  • home_widget (v0.9.0) - Native home screen widgets
  • shared_preferences (v2.0.17) - Local storage
  • package_info_plus (v9.0.0) - App package information
  • url_launcher (v6.1.14) - URL handling
  • intl (v0.20.2) - Internationalization support

Verify Installation

Check that everything is set up correctly:
flutter doctor -v
This command provides detailed information about your Flutter installation. All checkmarks should be green for your target platform.
If you see any issues with flutter doctor, resolve them before proceeding to run the app. Common issues include missing SDK tools or unsigned licenses.

Project Structure

Familiarize yourself with the Wonderous project structure:
flutter-wonderous-app/
├── lib/
│   ├── logic/              # Business logic and data models
│   │   ├── data/           # Wonder data and models
│   │   ├── artifact_api_logic.dart
│   │   ├── wonders_logic.dart
│   │   └── ...
│   ├── ui/                 # User interface
│   │   ├── screens/        # Screen widgets
│   │   ├── common/         # Shared UI components
│   │   └── ...
│   ├── styles/             # Theme and styling
│   ├── l10n/               # Localization files
│   ├── router.dart         # App routing configuration
│   └── main.dart           # App entry point
├── assets/                 # Images, fonts, and other assets
│   ├── images/
│   └── fonts/
├── android/                # Android-specific code
├── ios/                    # iOS-specific code
├── web/                    # Web-specific code
├── macos/                  # macOS-specific code
├── windows/                # Windows-specific code
└── pubspec.yaml            # Project dependencies

Next Steps

Quick Start

Now that you have everything installed, learn how to run Wonderous on your device

Troubleshooting

Make sure Flutter is added to your PATH. Add this to your shell configuration file:
# For bash (~/.bashrc) or zsh (~/.zshrc)
export PATH="$PATH:[PATH_TO_FLUTTER_GIT_DIRECTORY]/flutter/bin"
Try updating Ruby and reinstalling CocoaPods:
brew install ruby
gem install cocoapods
pod setup
Run the following command and accept all licenses:
flutter doctor --android-licenses
Clear Flutter’s cache and reinstall dependencies:
flutter clean
flutter pub cache clean
flutter pub get

Build docs developers (and LLMs) love