TrainLCD / MobileApp
🚃 TrainLCD is a mobile application that simulates Japanese railway company LCDs, providing real-time navigation and station information for train passengers.
View on GitHubAI Architecture Analysis
This repository is indexed by RepoMind. By analyzing TrainLCD/MobileApp in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler viewTrainLCD **TrainLCD is a mobile application that simulates Japanese railway company LCDs, providing real-time navigation and station information for train passengers.** This app recreates the authentic experience of Japanese train travel by displaying station information in the same style as actual train LCD screens. Whether you're a tourist visiting Japan, a daily commuter, or simply fascinated by Japanese railway systems, TrainLCD offers an immersive and practical navigation experience. Table of Contents • Screenshots • Features • Getting Started • Prerequisites • Installation • Running the App • Download • Development • Project Structure • Available Scripts • Testing • Contributing • Code of Conduct • Architecture • Support • Join our Community • Data Sources • Contributors • Related Projects • License Screenshots *Screenshots and demo videos coming soon...* Features • **🚆 Authentic LCD**: Experience genuine Japanese train LCD interfaces with accurate styling from major railway companies • **📍 Real-time Location Tracking**: Automatically detect your current position and display relevant station information • **🔔 Smart Notifications**: Get notified when approaching or arriving at your destination station • **🎨 Multiple Themes**: Choose from various railway company themes including JR East, JR West, Tokyo Metro, and more • **📱 Cross-platform**: Available on both iOS and Android devices • **🌐 Offline Support**: Core functionality works without internet connection • **🗾 Comprehensive Coverage**: Supports major railway lines across Japan Getting Started Prerequisites Before you begin, ensure you have met the following requirements: • **Node.js 22.x** • **npm 10.x** • **React Native development environment** set up • **Expo CLI** installed globally • **Firebase CLI** (for Cloud Functions development) • **Android Studio** (for Android development) • **Xcode** (for iOS development, macOS only) Installation • Clone the repository: • Install dependencies: Note: Configure before running to regenerate GraphQL types. Running the App Development Mode To start the development server: Platform-specific Commands • **iOS**: • **Android**: • **Web**: Download Join our Community If you like this project, join our Discord community! **NOTE: English is welcome, but in the community, we usually use Japanese for discussions, announcements, etc.** https://discord.gg/7sQhQhnvvw Development Project Structure Available Scripts • - Start the Expo development server • / - Build and launch native binaries • - Serve the Expo web build • - Run Biome linter • - Format code with Biome • - Run Jest tests • - Run TypeScript type checking • - Run tests in watch mode • - Regenerate GraphQL types after schema or documents change (requires ) Testing This project uses Jest for testing. Run the test suite with: For watch mode during development: Firebase Cloud Functions This project includes Firebase Cloud Functions located in the directory. To work with Cloud Functions: • Navigate to the functions directory: • Install function dependencies: • Build the functions: • Run functions locally (requires Firebase CLI): Contributing We welcome contributions from the community! Here's how you can help: How to Contribute • **Fork the repository** • **Create a feature branch**: • **Make your changes** and ensure they follow our coding standards • **Run tests**: • **Run linting**: • **Commit your changes**: • **Push to the branch**: • **Open a Pull Request** Development Guidelines • Follow the existing code style and conventions • Write clear, descriptive commit messages • Add tests for new features • Update documentation as needed • Ensure all tests pass before submitting Reporting Issues If you encounter any bugs or have feature requests: • Check if the issue already exists in our Issues • If not, create a new issue with: • Clear description of the problem • Steps to reproduce (for bugs) • Expected vs actual behavior • Device/platform information • Screenshots if applicable Code of Conduct This project adheres to a code of conduct that we expect all contributors to follow. Please be respectful and professional in all interactions. Our Standards • Be welcoming and inclusive • Respect differing viewpoints and experiences • Give and gracefully accept constructive feedback • Focus on what is best for the community • Show empathy towards other community members Architecture TrainLCD is built with: • **React Native** with **Expo** - Cross-platform mobile development • **TypeScript** - Type safety and better developer experience • **React Navigation** - Navigation library • **Tanstack Query** - Data fetching and caching • **Firebase** - Backend services (Analytics, Auth, Firestore, Storage) • **Sentry** - Error tracking and performance monitoring • **GraphQL** with Code Generator - Typed queries and operations Support Community Support • Join our Discord community for discussions and support • Check out existing Issues and Discussions Professional Support For professional support or custom development, please contact the maintainers. Acknowledgments • Thanks to all contributors who have helped improve this project • Special thanks to the Japanese railway companies for providing inspiration • The open-source community for the excellent tools and libraries Data Sources • Bus-related data provided by Tokyo Metropolitan Bureau of Transportation (Toei), licensed under CC BY 4.0 • Station data provided by 駅データ.jp Contributors ✨ Thanks goes to these wonderful people (emoji key): makotia 📖 📓 👀 Kanta Demizu 🔣 📓 👀 SAIGUSA Tomotada 📓 🔣 yasuto masuda 📓 Katabame Miaya 🔣 📓 📖 CodeRabbit 👀 This project follows the all-contributors specification. Contributions of any kind welcome! Related Projects • StationAPI - Backend API for station data License This project is licensed under the MIT License - see the LICENSE file for details.