Skip to content

A free and open source camera app for Android written in Flutter and Dart

License

Notifications You must be signed in to change notification settings

woaloo/librecamera

 
 

Repository files navigation

Libre Camera app icon

Libre Camera

A free and open source camera app for Android written in Flutter and Dart licensed under the GPLv3

Get it on F-Droid

Table of Contents

  1. About Libre Camera
  2. Roadmap
  3. Contributing
  4. Packages used
  5. License

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4

Download

You can get Libre Camera on F-Droid by tapping on the badge below. Alternatively, download and install the apk directly from the GitHub releases page. Downloading directly from the GitHub releases page will typically download a more recent version. Notice that the F-Droid and the GitHub versions aren't compatible with one another. You will have to reinstall the app – make sure you remember your settings.

Get it on F-Droid

Features

  • Take pictures and record videos with your rear and front camera
  • Privacy: No EXIF Metadata saved by default when taking pictures (enable optionally in settings) – and obviously no ads and tracking!
  • Themes: Material Design with a Dark, Light or system theme
  • Languages currently supported: English, German, Spanish, Portuguese, Russian, Japanese, Turkish – Contribute translating your language!
  • Zoom: Zoom with 2 fingers or with an optional slider
  • Timer/Delay: Select a photo capture timer to get ready for your photo
  • Flashlight modes: On at capture, Off, Auto, Always on
  • Focus: Auto focus, locked focus and manual focus by touching the screen
  • Exposure: Auto exposure, locked exposure and manual exposure with an optional slider
  • Image compression: Set the compression amount in the settings
  • Formats: Switch between 3 camera formats (JPEG, PNG, WebP)
  • Resolutions: Switch between different camera resolutions
  • Save location: Choose your preferred save location
  • Small size (~21 MB)
  • Customizable: Open the settings to customize the app to your liking!

Roadmap

  • More supported languages (See Contributing below) and Weblate integration
  • Your feature
  • Feature: Add integrated QR-Scanner
  • Feature: Add "photo capture at phone volume button press" as an option in settings
  • Feature: Make focus and exposure controls collapsable
  • Theme: Add a black Dark mode for AMOLED screens
  • Settings: Add a search bar for the settings
  • Settings: Add the ability to export and import settings
  • Check tablet support
  • (Included in version 1.3.0) Feature: Add photo capture delay option
  • (Included in version 1.3.0) Feature: Add a capture sound as an option in settings

Contributing

  • Translate

Currently supported languages:

  • English 🇬🇧
  • German 🇩🇪
  • Japanese 🇯🇵 (special thanks to @vladkorotnev)
  • Spanish 🇪🇸 (special thanks to @Loughty)
  • Portuguese 🇧🇷 (special thanks to @zehrique)
  • Russian 🇷🇺 (special thanks to @vladkorotnev)
  • Turkish 🇹🇷 (special thanks to @metezd!)

Get started:

  1. If not already supported (see above), request a new language by opening an issue on GitHub and I will add the necessary code for the second step
  2. Translate an already existing language (see below)

Translating guide: See if there are any untranslated strings in this file: untranslatedMessages.txt. Go to the .arb file of the language you want to translate (for example, app_de.arb file for German) and change the text inside the "" quotation marks. If the keys listed in the untranslatedMessages.txt don't exist, simply create them just like the others. Use the English translation as a reference for the text to be translated to the target language.

Additionally, if you want to translate the local app name (default: "Libre Camera"), go to the strings.xml file of the language you want to translate (for example, this file for German and translate the "Libre Camera" text inside the string elements, like this German translation: <string name="AppName">Libre Kamera</string>

Send in your translated files as a Pull Request

  • Bug Reporting or a Feature Request

Open an issue on GitHub: Open issue

  • Code

Feel free to send in a Pull Request! To get started with Flutter, follow this link: https://docs.flutter.dev/get-started/install

  1. Clone this repository
  2. Switch to the project's directory and run flutter pub get. To test the app, run the project in debug mode by selecting an Android device or emulator in your preferred Flutter IDE and running the app in debug mode
  3. To build the final app, run the app by installing the apk on an Android device or emulator. To get the apk, run the following command in your terminal: flutter build apk --split-per-abi – the output apk's will be generated at``librecamera/build/app/outputs/apk/release/. If you want only one apk without splitting the platforms (results in slightly bigger size, used by Libre Camera) use flutter build apk`

Packages used

The packages used for this app, also listed in the pubspec.yaml file. See their respective licenses.

License

This project is licensed under the GNU General Public License Version 3. For details, see LICENSE

About

A free and open source camera app for Android written in Flutter and Dart

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Dart 96.5%
  • Kotlin 3.5%