An offline, local-only Android application for discovering trails, logging hikes, tracking wildlife sightings, and viewing personal hiking statistics — built with Material Design components and SQLite.
-
🔍 Explore trails with search and difficulty filters
-
📍 View rich trail details:
- Description
- Packing guide
- User reviews
-
📝 Log completed hikes with:
- Date
- Duration
- Notes
-
🗂 Browse hike history with quick summaries
-
🦌 Record wildlife sightings per hike
-
📈 Visualize elevation profiles with interactive charts
-
📊 Personal stats dashboard:
- Total hikes
- Weekly summary
-
👤 Profile management:
- Edit name
- Clear hike data
- Logout
MainActivity.javaactivity_main.xml
LoginActivity.javaRegisterActivity.java
TrailsFragment.java— search & difficulty filtersTrailDetailsActivity.java— detailed trail view
HikeAdapter.java— hike list adapterHikeDetailsActivity.java— hike detail screen
StatsFragment.java
ProfileFragment.java
ℹ️ Note: Always use relative paths in README files. Local
file:///links do not work on GitHub.
All data is stored locally on-device using SQLite.
HikeLogContract.java— table & column definitionsHikeLogDbHelper.java— database creation & migration
TrailRepository.javaTrailReviewRepository.javaHikeRepository.javaWildlifeRepository.java
- Preloaded trails
- Packing checklist items
- Common wildlife entries
-
Material Cards with rounded corners
-
Consistent spacing:
- 16–20dp outer margins
- 8–12dp inner padding
-
Rounded text inputs
-
BottomNavigationViewwith:- Custom icon tint
- Text color state lists
- Ripple feedback
-
📊 Charts:
- MPAndroidChart – LineChart
- Touch gestures & pinch-to-zoom for elevation profiles
- Android Studio (latest stable)
- Android SDK
# Windows
.\gradlew.bat assembleDebug
# macOS / Linux
./gradlew assembleDebug- Open the project in Android Studio
- Click Run ▶ on a connected device or emulator
# Windows
.\gradlew.bat test
# macOS / Linux
./gradlew test# Windows
.\gradlew.bat lint
# macOS / Linux
./gradlew lintapp/src/main/
├─ java/com/example/myapplication/
│ ├─ ui/
│ │ ├─ home
│ │ ├─ trails
│ │ ├─ history
│ │ ├─ stats
│ │ ├─ profile
│ │ └─ auth
│ ├─ data/
│ │ ├─ db # SQLite contracts & helpers
│ │ └─ repository # CRUD repositories
│ └─ model # Entities (Trail, Hike, Review, Wildlife)
│
├─ res/
│ ├─ layout # XML layouts
│ ├─ menu
│ ├─ drawable
│ └─ values # colors, styles, themes
│
└─ docs # Generated artifacts (if any)
activity_login.xmlactivity_register.xml
fragment_trails.xmlactivity_trail_details.xml
item_hike.xmlactivity_hike_details.xml
fragment_stats.xmlfragment_profile.xml
- 🔐 Local-only storage — no remote sync
- 🚫 No hardcoded secrets
- 🧹 Avoid logging sensitive user data
- Fork the repository
- Create a feature branch
- Submit a Pull Request
- Follow existing code style and UI patterns
- Keep accessibility and consistency in mind
No license is currently specified.
🌄 HikeLog — track your hikes, offline and distraction-free.





