{"id":49194272,"url":"https://github.com/packrat-ai/packrat","last_synced_at":"2026-05-08T11:05:32.081Z","repository":{"id":152243165,"uuid":"611845080","full_name":"PackRat-AI/PackRat","owner":"PackRat-AI","description":"PackRat is a versatile adventure planner tailored for outdoor enthusiasts. It simplifies the process of organizing trips from a simple day hike to cross-country journeys.","archived":false,"fork":false,"pushed_at":"2026-04-17T10:44:47.000Z","size":68500,"stargazers_count":32,"open_issues_count":77,"forks_count":38,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-04-17T11:23:39.762Z","etag":null,"topics":["adventure","bun","cloudflare","hiking","maps","nodejs","organization","outdoors","planning","react-native","skiing","social"],"latest_commit_sha":null,"homepage":"https://packratai.com/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PackRat-AI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-03-09T16:57:23.000Z","updated_at":"2026-04-16T13:30:26.000Z","dependencies_parsed_at":"2023-09-27T12:25:49.118Z","dependency_job_id":"9bf02ab5-1a3c-4d6d-b9d1-f3826a9d925b","html_url":"https://github.com/PackRat-AI/PackRat","commit_stats":{"total_commits":1346,"total_committers":47,"mean_commits":"28.638297872340427","dds":"0.37592867756315007","last_synced_commit":"68d820d798c978c7f0baf2b08561f13fb9ae57b0"},"previous_names":["packrat-ai/packrat","andrew-bierman/packrat"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/PackRat-AI/PackRat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PackRat-AI%2FPackRat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PackRat-AI%2FPackRat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PackRat-AI%2FPackRat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PackRat-AI%2FPackRat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PackRat-AI","download_url":"https://codeload.github.com/PackRat-AI/PackRat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PackRat-AI%2FPackRat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32173068,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-23T02:19:40.750Z","status":"ssl_error","status_checked_at":"2026-04-23T02:17:55.737Z","response_time":53,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["adventure","bun","cloudflare","hiking","maps","nodejs","organization","outdoors","planning","react-native","skiing","social"],"created_at":"2026-04-23T09:02:24.842Z","updated_at":"2026-04-23T09:02:27.981Z","avatar_url":"https://github.com/PackRat-AI.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PackRat 🎒\n\nPackRat is the ultimate adventure planner designed for those who love to explore the great outdoors. Our app helps users plan and organize their trips with ease, whether it's a weekend camping trip, a day hike, or a cross-country road trip.\n\nWith PackRat, you can create and manage trips, discover new destinations, and stay informed with up-to-date weather forecasts. Our app integrates with Mapbox to provide you with accurate maps and directions to your destinations, as well as suggestions for popular outdoor activities based on the location and season of your trip.\n\nSo pack your bags, grab your friends, and get ready for your next adventure with PackRat!\n\n\u003e [!NOTE]\n\u003e This project is currently in alpha. Please report any issues or bugs you encounter. Thank you for your patience and support!\n\n\u003e [!IMPORTANT]\n\u003e This project is still in development and may contain bugs or issues. Please use the app with caution and report any problems you encounter. Thank you for your understanding and cooperation.\n\n**Build \u0026 CI:**\n![Checks](https://github.com/PackRat-AI/PackRat/actions/workflows/checks.yml/badge.svg)\n![API Tests](https://github.com/PackRat-AI/PackRat/actions/workflows/api-tests.yml/badge.svg)\n![Database Migrations](https://github.com/PackRat-AI/PackRat/actions/workflows/migrations.yml/badge.svg)\n\n**Repository Info:**\n![GitHub tag](https://img.shields.io/github/tag/PackRat-AI/PackRat?include_prereleases=\u0026sort=semver\u0026color=blue)\n![License](https://img.shields.io/badge/License-GNU-blue)\n![issues - PackRat](https://img.shields.io/github/issues/PackRat-AI/PackRat)\n\n\u003cdiv align=\"center\"\u003e\n\n[![View Beta Site](https://img.shields.io/badge/View%20Beta%20Site-%20-brightgreen)](https://packrat.world)\n\n\u003c/div\u003e\n\n## Table of Contents\n\n- [PackRat 🎒](#packrat-)\n  - [Table of Contents](#table-of-contents)\n  - [Overview 🌐](#overview-)\n  - [Documentation 📚](#documentation-)\n  - [Features 🚀](#features-)\n  - [Technologies used 💻](#technologies-used-)\n  - [🗂 Folder layout](#-folder-layout)\n  - [🆕 Add new dependencies](#-add-new-dependencies)\n    - [Pure JS dependencies](#pure-js-dependencies)\n    - [Native dependencies](#native-dependencies)\n    - [Mobile app dependencies](#mobile-app-dependencies)\n    - [API dependencies](#api-dependencies)\n    - [Web app dependencies](#web-app-dependencies)\n  - [Dependency management](#dependency-management)\n  - [Local installation 📲](#local-installation-)\n    - [Dependencies](#dependencies)\n    - [GitHub Packages Authentication](#github-packages-authentication)\n    - [Environment Setup](#environment-setup)\n    - [Git Hooks Setup](#git-hooks-setup)\n    - [Installation \u0026 Development](#installation--development)\n    - [Debugging 🐛](#debugging-)\n  - [API Architecture](#api-architecture)\n  - [AI-Assisted Development (Compound Engineering) 🤖](#ai-assisted-development-compound-engineering-)\n  - [Contributing 🤝](#contributing-)\n  - [User Stories:](#user-stories)\n  - [User Features:](#user-features)\n    - [Registration and Authentication:](#registration-and-authentication)\n    - [Main Dashboard:](#main-dashboard)\n    - [Destination Search:](#destination-search)\n    - [Accessing Profile Information:](#accessing-profile-information)\n    - [Profile User Overview:](#profile-user-overview)\n    - [Favorite Trips and Packs:](#favorite-trips-and-packs)\n    - [Profile Management:](#profile-management)\n    - [Appearance Theme Customization:](#appearance-theme-customization)\n    - [Profile Editing:](#profile-editing)\n  - [Pack Features:](#pack-features)\n    - [Pack Creation and Access Settings:](#pack-creation-and-access-settings)\n    - [Adding Items to Packs:](#adding-items-to-packs)\n    - [Pack Scoring System:](#pack-scoring-system)\n    - [Navigating to the Dashboard:](#navigating-to-the-dashboard)\n  - [Trip Features:](#trip-features)\n    - [Trip Creation and Management:](#trip-creation-and-management)\n    - [Setting up a Trip:](#setting-up-a-trip)\n    - [Accessing Saved Trips:](#accessing-saved-trips)\n    - [Viewing Trip Details:](#viewing-trip-details)\n  - [Items Feature:](#items-feature)\n    - [Dashboard:](#dashboard)\n    - [Adding Items:](#adding-items)\n  - [Feed Feature:](#feed-feature)\n    - [Exploring Backpackers:](#exploring-backpackers)\n    - [Pack List Interaction:](#pack-list-interaction)\n    - [Item Management:](#item-management)\n    - [Returning to Feed Dashboard:](#returning-to-feed-dashboard)\n  - [👏 Special Thanks](#-special-thanks)\n  - [License 📝](#license-)\n\n## Overview 🌐\n\nWith **PackRat**, you can:\n\n- Create and manage trips.\n- Discover new destinations.\n- Stay informed with up-to-date weather forecasts.\n- Access accurate maps and directions with our integration to Mapbox.\n- Get suggestions for popular outdoor activities based on your trip's location and season.\n\nSo pack your bags, grab your friends, and get ready for your next adventure with **PackRat**!\n\n## Documentation 📚\n\n\u003e [!WARNING]\n\u003e While the app is in alpha, please be aware that there may be bugs or issues. We appreciate your patience and support as we work to improve the app. Data may be lost or corrupted during this time, so please use the app with caution. Thank you for your understanding and cooperation.\n\n\u003cdiv align=\"center\"\u003e\n\n[![view - Documentation](https://img.shields.io/badge/view-Documentation-blue?style=for-the-badge)](/docs/ \"Go to project documentation\")\n\n[![view - Testing Guide](https://img.shields.io/badge/view-Testing_Guide-green?style=for-the-badge)](/TESTING.md \"Go to testing documentation\")\n\n\u003c/div\u003e\n\n## Features 🚀\n\n- Create and manage trips: users can create new trips and manage existing ones by adding details such as dates, locations, and activities.\n- Map integration: PackRat integrates with Mapbox to provide users with accurate maps and directions to their destinations.\n- Activity suggestions: the app suggests popular outdoor activities based on the location and season of the trip.\n- Packing list: users can create and manage packing lists for their trips to ensure they have everything they need.\n- Pack templates: users can save and reuse pack configurations for common trip types.\n- Weather forecast: PackRat provides up-to-date weather forecasts for the trip location to help users prepare accordingly.\n- Trail conditions: users can report and browse real-time trail condition updates from the community.\n- AI assistant: an AI-powered chat assistant provides gear advice, trip suggestions, and more.\n- Weight analysis: users can analyze their pack weight breakdown by category.\n- Season suggestions: the app recommends gear and activities based on the trip's location and time of year.\n- User authentication: the app uses user authentication to ensure privacy and data security.\n\n## Technologies used 💻\n\nPackRat is built using the following modern technologies:\n\n- **React Native + Expo**: Cross-platform mobile development with Expo Router\n- **Next.js**: Server-side rendering for web applications (landing page and guides)\n- **Hono.js**: Fast, lightweight web framework running on Cloudflare Workers\n- **PostgreSQL + Drizzle ORM**: Type-safe database operations with Neon serverless database\n- **Jotai + TanStack Query**: Modern state management and data fetching\n- **AI SDK + OpenAI**: AI-powered features and content generation\n- **Bun**: Fast JavaScript runtime and package manager\n- **Biome**: Modern linting and formatting toolchain\n- **TypeScript**: Full type safety across the entire stack\n- **Tailwind CSS + NativeWind**: Utility-first styling for web and mobile\n- **Mapbox**: Location data platform for mobile and web applications\n\n## 🗂 Folder layout\n\nThe main folders are:\n\n- **`apps/`** - Applications\n  - `expo/` - React Native mobile app with Expo Router\n    - `app/` - App router screens and layouts\n    - `features/` - Feature-based modules (auth, packs, etc.)\n    - `components/` - Reusable UI components\n    - `atoms/` - Jotai atoms for global state\n    - `providers/` - React context providers\n    - `lib/` - Utility libraries and configurations\n    - `assets/` - Images, fonts, and other static assets\n  - `landing/` - Next.js landing page website\n  - `guides/` - Next.js documentation and guides site\n\n- **`packages/`** - Shared packages across apps\n  - `api/` - Hono.js API server running on Cloudflare Workers\n    - `src/` - Source code with routes, middleware, and services\n    - `drizzle/` - Database schema and migrations\n    - `test/` - API tests\n  - `ui/` - Shared UI components and design system\n\n## 🆕 Add new dependencies\n\n### Pure JS dependencies\n\nFor pure JavaScript libraries that work across all platforms (mobile, web, API):\n\n```sh\n# Install in the root to share across all apps\nbun add lodash\n\n# Or install in specific package if only used there\ncd packages/api\nbun add dayjs\n```\n\nThese dependencies work without platform-specific code and can be safely used in any JavaScript environment.\n\n### Native dependencies\n\nFor React Native modules that require platform-specific code (Android/iOS):\n\n```sh\ncd apps/expo\nbun add react-native-reanimated\n\n# Don't forget to rebuild after adding native dependencies\nbun --cwd apps/expo run expo prebuild --clean\n```\n\nNative dependencies often require additional configuration and may need platform-specific setup. Always check the library's installation guide for React Native.\n\n### Mobile app dependencies\n\nFor React Native dependencies, install them in the Expo app:\n\n```sh\ncd apps/expo\nbun add react-native-reanimated\n```\n\n### API dependencies\n\nFor API/server dependencies:\n\n```sh\ncd packages/api\nbun add hono\n```\n\n### Web app dependencies\n\nFor Next.js apps (landing/guides):\n\n```sh\ncd apps/landing  # or apps/guides\nbun add next\n```\n\n## Dependency management\n\nUse ManypKG to check for dependency issues across the monorepo:\n\n```sh\nbun check:deps\nbun fix:deps\n```\n\n## Local installation 📲\n\nPackRat is a modern monorepo with mobile, web, and API applications. Follow the steps below to install and run the applications.\n\n### Dependencies\n\n- [Bun](https://bun.sh) - Primary package manager and runtime\n- [Node.js](https://nodejs.org/) - Required for some tooling\n- [Expo CLI](https://docs.expo.io/workflow/expo-cli/) - For mobile development\n- [Wrangler CLI](https://developers.cloudflare.com/workers/wrangler/) - For API deployment\n- [GitHub CLI](https://cli.github.com/) - For authenticating with GitHub packages\n\n### GitHub Packages Authentication\n\nPackRat uses private packages from GitHub Package Registry. You need to authenticate to install dependencies:\n\n#### Local Development\n\n1. Install GitHub CLI:\n\n   ```bash\n   # macOS\n   brew install gh\n\n   # Windows\n   winget install --id GitHub.cli\n\n   # Linux - see https://github.com/cli/cli#installation\n   ```\n\n2. Authenticate with GitHub CLI:\n\n   ```bash\n   gh auth login\n   ```\n\n3. Add the `read:packages` scope to your authentication:\n\n   ```bash\n   gh auth refresh -h github.com -s read:packages\n   ```\n\n4. Dependencies will now install automatically:\n   ```bash\n   bun install\n   ```\n\n   \u003e **Note**: The `preinstall` script automatically configures GitHub authentication using the GitHub CLI token. The script maps your GitHub CLI token to `PACKRAT_NATIVEWIND_UI_GITHUB_TOKEN` which is used by `bunfig.toml` for package authentication.\n\n#### CI/CD\n\nFor GitHub Actions and other CI platforms:\n\n1. Create a Personal Access Token (PAT) with `read:packages` scope\n2. Add it as a secret named `PACKRAT_NATIVEWIND_UI_GITHUB_TOKEN` in your repository settings\n3. Pass it as an environment variable in your workflow:\n   ```yaml\n   - name: Install dependencies\n     env:\n       PACKRAT_NATIVEWIND_UI_GITHUB_TOKEN: ${{ secrets.PACKRAT_NATIVEWIND_UI_GITHUB_TOKEN }}\n     run: bun install\n   ```\n\n\u003e **Note**: The default `GITHUB_TOKEN` provided by GitHub Actions does not have access to packages in other repositories, even within the same organization. A custom PAT is required.\n\n### Environment Setup\n\n1. Clone the repository:\n   HTTPS:\n\n```bash\ngit clone https://github.com/PackRat-AI/PackRat.git\n```\n\nSSH:\n\n```bash\ngit clone git@github.com:PackRat-AI/PackRat.git\n```\n\n2. Navigate to the `PackRat` directory:\n\n```\ncd PackRat\n```\n\n3. Set up environment variables:\n\n   This project uses a centralized environment configuration strategy. All environment variables are defined in a single source of truth (e.g. .env.local) located at the root of the project.\n\n   A .dev.vars file will be automatically generated for development tools.\n\n   Run bun install to regenerate .dev.vars whenever environment variables are changed.\n\n   Only variables prefixed with PUBLIC\\_ will be bundled into the Expo app (e.g., PUBLIC_API_URL). These are safe to expose in the client environment.\n\n   ⚠️ Do not include secrets (e.g., private API keys) in PUBLIC\\_ variables — they may be exposed in the bundled app.\n\n### Git Hooks Setup\n\nPackRat uses Lefthook for git hooks to ensure code quality. The hooks are automatically installed when you run `bun install`.\n\n- **Pre-commit hook**: Runs `bun check` on staged files to enforce linting before every commit\n- **Configuration**: See `lefthook.yml` in the root directory\n\nIf you need to skip hooks temporarily, use:\n\n```bash\ngit commit --no-verify\n```\n\n### Installation \u0026 Development\n\n#### Install dependencies\n\nFrom the root directory:\n\n```bash\nbun install\n```\n\n#### Running the applications\n\nYou can run each application independently:\n\n**Mobile App (Expo):**\n\n```bash\n# Start Expo development server\nbun expo\n\n# Or run directly on device/simulator\nbun android  # for Android\nbun ios       # for iOS\n```\n\n**API Server:**\n\n```bash\n# Start API in development mode\nbun api\n```\n\n**Landing Page:**\n\n```bash\ncd apps/landing\nbun dev\n```\n\n**Guides Site:**\n\n```bash\ncd apps/guides\nbun dev\n```\n\n#### Development workflow\n\nFor mobile development, you'll typically run:\n\n```bash\n# Terminal 1: Start the API\nbun api\n\n# Terminal 2: Start the mobile app\nbun expo\n```\n\n### Debugging 🐛\n\n#### Common Issues\n\n**Expo/Mobile App Issues:**\n\n```bash\n# Doctor check for Expo setup\nbun --cwd apps/expo expo doctor\n\n# Fix dependencies\nbun --cwd apps/expo run expo install --fix\n\n# Clean build\nbun --cwd apps/expo run expo prebuild --clean\n\n# Clear cache\nbun expo --clear\n```\n\n**Dependency Issues:**\n\n```bash\n# Check monorepo dependencies\nbun check:deps\n\n# Fix dependency mismatches\nbun fix:deps\n\n# Clean and reinstall\nbun clean\nbun install\n```\n\n**API/Cloudflare Issues:**\n\n- Check that your `wrangler.jsonc` is configured correctly in `packages/api/`\n- Ensure your Cloudflare environment variables are set\n- Use `bun api` to start the development server locally\n\n### Code Quality\n\nPackRat uses modern tools for code quality and consistency:\n\n```bash\n# Format all code\nbun format\n\n# Lint and fix issues\nbun lint\n\n# Type checking\nbun check-types\n\n# Check dependency consistency\nbun check:deps\n```\n\nThe project uses [Lefthook](https://github.com/evilmartians/lefthook) for git hooks - these run automatically on push to ensure code quality.\n\n## API Architecture\n\nThe PackRat API is built with:\n\n- **Hono.js** - Fast, lightweight web framework\n- **Cloudflare Workers** - Serverless edge computing platform\n- **Drizzle ORM** - Type-safe database operations\n- **PostgreSQL** - Database hosted on Neon\n- **OpenAI integration** - AI-powered features\n\nSee `packages/api/` for the complete API implementation.\n\n## AI-Assisted Development (Compound Engineering) 🤖\n\nPackRat ships a [Compound Engineering](https://compound.engineering) plugin for GitHub Copilot. This gives every contributor access to a set of specialized AI agents and reusable skills that accelerate the full development cycle — from ideation through planning, implementation, review, and documentation.\n\n### How it works\n\nThe plugin installs:\n\n| Path | What it contains |\n|------|-----------------|\n| `.github/agents/` | 29 specialist agent personas (security, architecture, performance, etc.) |\n| `.github/skills/` | 45+ reusable slash-command workflows |\n| `.github/copilot-mcp-config.json` | MCP server config (Context7 for live docs lookup) |\n\n### Core workflow\n\nThe `/lfg` (Let's F*** Go) command runs the full autonomous engineering cycle in one shot:\n\n```\n/lfg \u003cfeature description\u003e\n```\n\nOr run the individual steps manually:\n\n| Command | Description |\n|---------|-------------|\n| `/ce:ideate [area]` | Generate ranked improvement ideas |\n| `/ce:brainstorm \u003cidea\u003e` | Explore requirements and write a feature brief |\n| `/ce:plan \u003cdescription\u003e` | Transform a brief into a structured implementation plan |\n| `/ce:work \u003cplan file\u003e` | Execute a plan — ship the feature |\n| `/ce:review [PR / branch]` | Multi-agent exhaustive code review |\n| `/ce:compound` | Document a just-solved problem to compound team knowledge |\n| `/ce:compound-refresh` | Refresh stale docs after refactors or upgrades |\n| `/setup` | Interactive wizard to configure which agents run for this project |\n\n### Specialist agents\n\nAgents are invoked automatically based on context, or explicitly:\n\n| Agent | Purpose |\n|-------|---------|\n| `security-sentinel` | OWASP / auth / secrets audits |\n| `architecture-strategist` | Pattern compliance, service boundaries |\n| `performance-oracle` | Latency, bundle size, query optimisation |\n| `data-integrity-guardian` | Migration safety, schema drift |\n| `design-implementation-reviewer` | Figma ↔ code fidelity |\n| `kieran-typescript-reviewer` | TypeScript idioms and type safety |\n| `dhh-rails-reviewer` | Rails conventions |\n| `lint` | Automated linting agent |\n| …and 21 more | See `.github/agents/` |\n\n### Useful one-off skills\n\n```\n/ce:ideate              # What should we build next?\n/reproduce-bug          # Minimal repro from a bug report\n/triage                 # Prioritise an issue backlog\n/changelog              # Generate a changelog entry\n/feature-video          # Record a walkthrough of a feature\n/proof                  # Share a doc via Proof for async review\n```\n\nFor the full list run `/ce:help` in Copilot Chat, or browse `.github/skills/`.\n\n## Contributing 🤝\n\n\u003e [!TIP]\n\u003e We have an active community of contributors and users who are happy to help. Join us on Discord to get involved!\n\nContributions to PackRat are welcome! To contribute, follow these steps:\n\n1. Clone this repository.\n2. Create a new branch.\n3. Make your changes and commit them.\n4. Push your changes to the remote branch.\n5. Open a pull request.\n6. Wait for your pull request to be reviewed and merged.\n7. Celebrate! 🎉\n\n## User Stories:\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eUser Stories 📖\u003c/b\u003e (Click to expand)\u003c/summary\u003e\n\n## User Features:\n\n### Registration and Authentication:\n\n- Users can create an account by accessing the menu and selecting the 'Register' option. Additionally, they have the option to sign up directly from the login page.\n\n### Main Dashboard:\n\n- On the main page, users have several options to choose from:\n- Quick actions\n- Search for new trails\n- Access other menu options\n- View their feed, which displays previously created packs.\n- Users can search for a destination directly on the main dashboard, which will then redirect them to the maps interface.\n\n### Destination Search:\n\n- Users have the capability to search for a destination directly on the main dashboard.\n- Upon initiating a search, users are redirected to the maps interface for further exploration and planning.\n\n### Accessing Profile Information:\n\n- Users can conveniently access their profile information from the menu under the Profile feature.\n\n### Profile User Overview:\n\n- The dashboard provides users with a comprehensive overview of their profile.\n- It prominently displays the user's username and account photo for quick identification.\n\n### Favorite Trips and Packs:\n\n- Users have immediate access to their favorite trips and packs directly from the dashboard.\n- By selecting the \"View details\" option, users can delve into more details about their favorite trips and packs.\n\n### Profile Management:\n\n- Users can effortlessly manage their profile information from the dashboard.\n- By clicking on the settings button icon, users are directed to the profile settings section where they can make necessary updates seamlessly.\n\n### Appearance Theme Customization:\n\n- Users have the option to personalize their experience by changing the theme.\n- They can choose between light mode or dark mode based on their preference.\n- Additionally, users have the option to purchase additional themes for further customization. (Note: This feature may require updates.)\n\n### Profile Editing:\n\n- Users can easily edit their profile settings by clicking the \"show dialog\" option.\n- This allows them to update their name and “food preferences”, with a wide range of options to choose from. (Note: This feature may require updates.)\n\n## Pack Features:\n\n### Pack Creation and Access Settings:\n\n- Users are prompted to input a name for their pack when creating it.\n- Users have the option to choose the accessibility setting for their pack, deciding whether it will be public or private.\n\n### Adding Items to Packs:\n\n- When users add an item to the pack, they are required to provide:\n- The name of the item.\n- The weight of the item.\n- The quantity of the item.\n- The category the item belongs to (food, water, essentials).\n- After providing the necessary details, users click \"Add Item\" to include it in the pack dashboard.\n\n### Pack Scoring System:\n\n- Users can view their pack score, which is generated based on several criteria:\n- The total weight of the pack.\n- The presence of essential items.\n- The degree of redundancy in items.\n- The versatility of the items included.\n\n### Navigating to the Dashboard:\n\n- Users can easily return to the dashboard by following these steps:\n\n1. Access the menu.\n2. Select the \"Home\" option.\n\n## Trip Features:\n\n### Trip Creation and Management:\n\n- Users have two methods for creating a trip:\n- Directly from the main page dashboard using the quick actions feature.\n- By navigating to the 'Trips' option in the menu.\n\n### Setting up a Trip:\n\n- Users initiate trip setup by selecting their backpacking destination.\n- Nearby trails and parks are displayed for exploration.\n- Users can:\n- Choose gear from their saved packs.\n- Create a new pack and add items directly on the page.\n- Select the target date for their trip using a calendar to specify the duration.\n- A map showcasing the trip destination is provided for reference.\n- Once all details are confirmed, users:\n- Save their trip.\n- Input a name and description.\n- Choose the trip's accessibility setting (public or private).\n- A weather forecast and summary of the destination, trails, dates, and trip duration are displayed for easy reference.\n\n### Accessing Saved Trips:\n\n- Users can easily access their saved trips from the menu by selecting the 'Trips' option.\n- Within the 'Trips' section, users can:\n- Organize their trips by sorting them from favorites to most recent.\n- Utilize a search bar to quickly locate a specific trip by name.\n\n### Viewing Trip Details:\n\n- When users select a trip from the dashboard, they are presented with detailed information including:\n- The trip's description.\n- Destination.\n- Start and end dates.\n- Additionally, users can:\n- Conveniently view the weather forecast for the selected dates directly on the same page.\n- Access the maps interface for further exploration.\n- At the bottom of the page, users can find the Trip Score, providing an overall assessment of the trip's suitability and preparedness.\n\n## Items Feature:\n\n### Dashboard:\n\n- Users are able to view their items used in their saved packs.\n- They can sort how many items will show up on screen. They can choose from 10, 20, and 50.\n- Users have the option to add new items.\n\n### Adding Items:\n\n- User needs to fill out the following fields:\n- Item Name\n- Weight – they can choose the unit of measurement. Includes lb, kg, oz, and g.\n- Quantity\n- Category\n\n## Feed Feature:\n\n### Exploring Backpackers:\n\n- Users can browse through a list of other backpackers.\n- Navigate the page using the search and sort options.\n\n### Pack List Interaction:\n\n- Upon opening a pack list, users have several options available:\n- They can view the profile of the backpacker associated with the pack.\n- Users also have the ability to copy the pack list for their own use.\n- The pack list includes detailed information such as item name, weight, quantity, and category.\n\n### Item Management:\n\n- Users can interact with items on the pack list by:\n- Editing, deleting, or ignoring items as needed.\n- The total weight of the pack is dynamically calculated and displayed at the bottom of the page.\n- Users can easily add new items to the pack list as well.\n- At the bottom of the page, users can view the Pack Score.\n\n### Returning to Feed Dashboard:\n\n- Users can navigate back to the feed dashboard by accessing the menu and selecting the \"feed\" option.\n\n\u003c/details\u003e\n\n## 👏 Special Thanks\n\n- [React Native Developers](https://twitter.com/reactnative)\n- [OpenStreetMap Developers](https://www.openstreetmap.org/)\n- [RN MapBox Developers](https://github.com/rnmapbox/maps)\n- [Cloudflare Developers](https://twitter.com/CloudflareDev)\n- [Yusuke Wada](https://twitter.com/yusukebe) - Creator of Hono.js\n- [Nate Birdman](https://twitter.com/natebirdman) - Creator of Tamagui\n- [Fernando Rojo](https://twitter.com/fernandotherojo) - Creator of Zeego\n- [Tanner Linsley](https://twitter.com/tannerlinsley) - Creator of TanStack\n- [Timothy Miller](https://twitter.com/ogtimothymiller) - Creator of T4 Stack\n- [Expo Developers](https://twitter.com/expo) - Office hours\n- [Shopify Developers](https://twitter.com/ShopifyDevs)\n\n## License 📝\n\nPackRat is licensed under the terms of the [GNU General Public License v3.0](LICENSE). See `LICENSE` for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpackrat-ai%2Fpackrat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpackrat-ai%2Fpackrat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpackrat-ai%2Fpackrat/lists"}