# 🌀 FleetingViews — View Management & Navigation for Flet

FleetingViews is a lightweight and powerful view management system for [Flet](https://flet.dev) apps.  
It helps you structure your app around clean views, guards, transitions, and reactive state — inspired by the best practices of modern frontend frameworks.

Think of it as a **router + state manager + lifecycle engine** for Flet.

---

## 🚀 Features at a Glance

✅ Easy view registration  
✅ Route-based navigation with history  
✅ Lifecycle hooks (`on_mount`, `on_dismount`)  
✅ Guards (protect views based on logic)  
✅ Reactive observables (`define_observable`, `subscribe`)  
✅ Two-way data binding with controls (`bind_to_control`)  
✅ Dynamic view transitions with animations  
✅ Built-in fallback 404 view  
✅ Shared global state (`set_shared`, `get_shared`)  
✅ JSON state persistence (coming soon)

---

## 📦 Installation

```bash
pip install fleetingviews
```

To upgrade:

```bash
pip install fleetingviews --upgrade
```

## 📹 Quick Start Tutorial (Video)

Watch this [YouTube tutorial](https://www.youtube.com/watch?v=eCoyLg9uHiY) for a hands-on guide:

    🔐 Protect views with guards

    🎛️ Configure AppBars dynamically

    🔁 Use view_go() to navigate

    🧠 Structure your app cleanly using FleetingViews



## 📄 Documentation
Full API and usage guide:
🔗 https://arellanobrunoc.github.io/FleetingViews/




    
