Skip to content

raulcastro/GeoSnap

Repository files navigation

GeoSnap: Geolocate and visualize your photos on a map

GeoSnap is an open-source project that allows you to upload photos with metadata, geolocate them, and visualize their exact locations on a map with interactive polygons. Ideal for mapping properties, tracking outdoor activities, and more.

Features

  • Upload photos with metadata
  • Geolocate photos and display them on a Google Map
  • Create albums and draw polygons around photo clusters
  • Open-source and free to use

Getting Started

Prerequisites

  • PHP >= 7.3
  • Composer
  • Laravel
  • MySQL
  • Node.js & npm

Installation

  1. Clone the repository:

    git clone https://github.com/raulcastro/GeoSnap.git
    cd GeoSnap
  2. Install dependencies:

    composer install
    npm install
  3. Copy the .env file:

    cp .env.example .env
  4. Generate the application key:

    php artisan key:generate
  5. Configure your .env file: Update your .env file with your database credentials and other necessary configuration.

  6. Update PHP Configuration: Ensure your PHP configuration allows for file uploads of up to 20MB. Edit your php.ini file to include the following settings:

     upload_max_filesize = 20M
     post_max_size = 20M

    You can find the location of your php.ini file by running:

    php --ini

    After making these changes, restart your web server:

    sudo apachectl restart

    or

    valet restart
  7. Run migrations:

    php artisan migrate
  8. Create storage link:

    php artisan storage:link
  9. Set permissions:

    sudo chmod -R 775 storage bootstrap/cache
    sudo chown -R www-data:www-data storage bootstrap/cache
  10. Serve the application:

    php artisan serve
  11. Access the application: Open your web browser and go to http://localhost:8000.

Technical Stack

  • Backend: Laravel
  • Database: MySQL
  • Storage: Firebase Storage or Amazon S3 (optional)
  • Maps: Google Maps API
  • Admin Panel: AdminLTE

Notes

  • The project is configured to handle photo uploads with a maximum file size of 20MB. Ensure your PHP settings are configured accordingly.

  • If you encounter any issues with file uploads, verify that your php.ini settings are correctly configured and that your web server has been restarted to apply the changes.

License

GeoSnap is licensed under the GPL-3.0 license.

Contributing

We welcome contributions from the community. Please read our contributing guidelines for more information.

Contact

For any questions or suggestions, please contact Raúl Castro.

About

GeoSnap is an open-source project that allows you to upload photos with metadata, geolocate them, and visualize their exact locations on a map with interactive polygons. Ideal for mapping properties, tracking outdoor activities, and more.

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages