Skip to content

Storizon is an Android app for sharing short stories with optional location tags. Stories appear on an interactive map powered by Google Maps API

License

Notifications You must be signed in to change notification settings

zyrridian/storizon-app

Repository files navigation

Storizon

Storizon is an Android application where users can share short stories, similar to a social media platform. Users can optionally include their location in their stories, which will be displayed on an interactive map powered by Google Maps API. The app supports night mode and multiple languages, enhancing user experience. Additionally, it tracks daily login streaks and the word count of stories saved locally using Room Database. Users can register, log in, and manage their accounts seamlessly.

Screenshots

Screenshots

Table of Contents

Features

  • Story Sharing: Share short stories with optional location tagging.
  • Interactive Map: View user stories pinned on a map using Google Maps API.
  • Daily Login Streaks: Track daily app usage with streak counters.
  • Word Count Tracker: Monitor the number of words written in stories.
  • Dark Mode: Switch between light and dark themes.
  • Multi-Language Support: Choose from multiple languages for a personalized experience.
  • User Authentication: Register and log in to manage your account securely.

Technologies Used

  • Language: Kotlin
  • Architecture: MVVM (Model-View-ViewModel)
  • Data Binding: LiveData, ViewModel
  • Networking: Retrofit
  • Local Storage: Room Database
  • Map Integration: Google Maps API
  • UI Components: RecyclerView, Material Components, View Binding
  • Testing: JUnit, Espresso
  • Others: AndroidX, Navigation Component, Dark Mode, SharedPreferences

Architecture

Storizon follows the MVVM (Model-View-ViewModel) architecture pattern for clean separation of concerns, better organization, and ease of testing:

  • Model: Handles data operations (e.g., Room Database and API calls).
  • View: Displays data on the UI and observes ViewModel changes.
  • ViewModel: Acts as a bridge between the View and the Model, managing UI-related data and business logic.

Getting Started

To set up the project locally, follow these steps:

Prerequisites

Ensure you have the following installed:

  • Android Studio (latest stable version recommended)
  • Git (for cloning the repository)
  • Google Maps API Key (required for map functionality)

Installation

  1. Clone the repository:

    git clone https://github.com/your-repository/storizon.git
  2. Open the project in Android Studio:

    • Open Android Studio.
    • Select "Open an existing Android Studio project."
    • Navigate to the cloned repository and select it.
  3. Configure the Google Maps API Key:

    • Obtain a key from the Google Cloud Console.
    • Add the key to your local.properties file:
      MAPS_API_KEY=your_api_key
      
  4. Build the project:

    • Android Studio will automatically build the project.
    • If the build does not start automatically, select Build > Make Project from the menu.
  5. Run the app:

    • Connect an Android device or use an emulator.
    • Click the green play button to run the app.

App Structure

  • Home: Displays user stories and provides access to the map view.
  • Map View: Shows pins for stories with location tags on an interactive map.
  • Profile: Allows users to manage their accounts, toggle dark mode, and change the app language.
  • Settings: Provides access to account settings and logout functionality.

Usage

  1. Register/Login: Create an account or log in to access features.
  2. Share Stories: Post short stories with optional location tags.
  3. Explore Stories: View stories shared by others on the home page or map view.
  4. Track Progress: Check your daily login streaks and word count.
  5. Personalize Settings: Enable dark mode and switch languages.

Contributing

Contributions are welcome! Follow these steps to contribute:

  1. Fork the repository.

  2. Create a new branch:

    git checkout -b feature/your-feature
  3. Make your changes.

  4. Commit your changes:

    git commit -m 'Add some feature'
  5. Push to the branch:

    git push origin feature/your-feature
  6. Create a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

About

Storizon is an Android app for sharing short stories with optional location tags. Stories appear on an interactive map powered by Google Maps API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages