mirror of
https://github.com/chenasraf/pantry-flutter.git
synced 2026-05-17 17:28:03 +00:00
docs: update readme, license, add funding
This commit is contained in:
13
.github/FUNDING.yml
vendored
Executable file
13
.github/FUNDING.yml
vendored
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
# These are supported funding model platforms
|
||||||
|
|
||||||
|
github: chenasraf
|
||||||
|
patreon: # Replace with a single Patreon username
|
||||||
|
open_collective: # Replace with a single Open Collective username
|
||||||
|
ko_fi: casraf
|
||||||
|
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||||
|
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||||
|
liberapay: # Replace with a single Liberapay username
|
||||||
|
issuehunt: # Replace with a single IssueHunt username
|
||||||
|
otechie: # Replace with a single Otechie username
|
||||||
|
custom:
|
||||||
|
- "https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=TSH3C3ABGQM22¤cy_code=ILS&source=url"
|
||||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright © 2026 Chen Asraf
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
129
README.md
129
README.md
@@ -1,17 +1,124 @@
|
|||||||
# pantry
|
# Pantry
|
||||||
|
|
||||||
A new Flutter project.
|
A Flutter mobile client for [Nextcloud Pantry](https://github.com/chenasraf/nextcloud-pantry) —
|
||||||
|
household management for your self-hosted Nextcloud.
|
||||||
|
|
||||||
## Getting Started
|
## Features
|
||||||
|
|
||||||
This project is a starting point for a Flutter application.
|
- **Checklists**: Shared checklists with categories, quantities, images, and recurring items.
|
||||||
|
- **Photo Board**: Upload and organize shared photos in folders with captions.
|
||||||
|
- **Notes Wall**: Color-coded shared notes for household reminders.
|
||||||
|
- **Drag-and-drop reordering** everywhere.
|
||||||
|
- **Multi-select** for bulk actions.
|
||||||
|
- **Offline caching** for fast loading.
|
||||||
|
- **Material Design 3** with dark mode.
|
||||||
|
- **Self-hosted** — connects directly to your own Nextcloud server via Login Flow v2.
|
||||||
|
|
||||||
A few resources to get you started if this is your first Flutter project:
|
## Requirements
|
||||||
|
|
||||||
- [Learn Flutter](https://docs.flutter.dev/get-started/learn-flutter)
|
A Nextcloud server with the [Pantry server app](https://github.com/chenasraf/nextcloud-pantry)
|
||||||
- [Write your first Flutter app](https://docs.flutter.dev/get-started/codelab)
|
installed.
|
||||||
- [Flutter learning resources](https://docs.flutter.dev/reference/learning-resources)
|
|
||||||
|
|
||||||
For help getting started with Flutter development, view the
|
## Installation
|
||||||
[online documentation](https://docs.flutter.dev/), which offers tutorials,
|
|
||||||
samples, guidance on mobile development, and a full API reference.
|
### Google Play
|
||||||
|
|
||||||
|
[Install from Google Play](https://play.google.com/store/apps/details?id=dev.casraf.pantry)
|
||||||
|
|
||||||
|
### Beta testing
|
||||||
|
|
||||||
|
Want early access to new features? Join the beta program:
|
||||||
|
|
||||||
|
1. Visit the [beta opt-in page](https://play.google.com/apps/testing/dev.casraf.pantry) on your
|
||||||
|
Android device.
|
||||||
|
2. Tap **Become a tester**.
|
||||||
|
3. Install or update Pantry from the
|
||||||
|
[Play Store listing](https://play.google.com/store/apps/details?id=dev.casraf.pantry) — you'll
|
||||||
|
automatically receive beta builds.
|
||||||
|
|
||||||
|
It may take a few minutes for your tester status to propagate.
|
||||||
|
|
||||||
|
### Manual (APK)
|
||||||
|
|
||||||
|
Download the latest APK from the
|
||||||
|
[releases page](https://github.com/chenasraf/pantry-flutter/releases) and sideload onto your device.
|
||||||
|
|
||||||
|
### iOS
|
||||||
|
|
||||||
|
[Coming soon — TestFlight]
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
|
||||||
|
- [Flutter](https://docs.flutter.dev/get-started/install) (stable channel)
|
||||||
|
- Android Studio / Xcode for platform builds
|
||||||
|
- A Nextcloud instance with the Pantry server app for testing
|
||||||
|
|
||||||
|
### Quick Start
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make get # install dependencies
|
||||||
|
make i18n # generate i18n code
|
||||||
|
make run # run in debug mode
|
||||||
|
```
|
||||||
|
|
||||||
|
### Common Tasks
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make analyze # analyze staged files
|
||||||
|
make format # format staged files
|
||||||
|
make check # analyze + format check
|
||||||
|
make test # run tests
|
||||||
|
```
|
||||||
|
|
||||||
|
See `make help` for the full list.
|
||||||
|
|
||||||
|
### Project Layout
|
||||||
|
|
||||||
|
```
|
||||||
|
lib/
|
||||||
|
├─ main.dart # App entry + theming
|
||||||
|
├─ models/ # Data models (Photo, Note, Checklist, etc.)
|
||||||
|
├─ services/ # API clients, cache, auth
|
||||||
|
├─ utils/ # Pure utilities (rrule, icons)
|
||||||
|
├─ widgets/ # Reusable widgets (recurrence dialog, category picker)
|
||||||
|
└─ views/
|
||||||
|
├─ checklists/
|
||||||
|
├─ photos/
|
||||||
|
├─ notes/
|
||||||
|
├─ home/
|
||||||
|
└─ login/
|
||||||
|
```
|
||||||
|
|
||||||
|
### API
|
||||||
|
|
||||||
|
The app consumes the Nextcloud Pantry OCS API. The OpenAPI spec is kept in sync via:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make fetch-openapi
|
||||||
|
```
|
||||||
|
|
||||||
|
## Privacy
|
||||||
|
|
||||||
|
Pantry is a self-hosted client. Your data never leaves your Nextcloud server. See the
|
||||||
|
[privacy policy](https://casraf.dev/pantry-privacy-policy) for details.
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
I am developing this app on my free time, so any support, whether code, issues, or just stars is
|
||||||
|
very helpful to sustaining its life. If you are feeling incredibly generous and would like to donate
|
||||||
|
just a small amount to help sustain this project, I would be very very thankful!
|
||||||
|
|
||||||
|
<a href='https://ko-fi.com/casraf' target='_blank'>
|
||||||
|
<img height='36' style='border:0px;height:36px;'
|
||||||
|
src='https://cdn.ko-fi.com/cdn/kofi1.png?v=3'
|
||||||
|
alt='Buy Me a Coffee at ko-fi.com' />
|
||||||
|
</a>
|
||||||
|
|
||||||
|
I welcome any issues or pull requests on GitHub. If you find a bug, or would like a new feature,
|
||||||
|
don't hesitate to open an appropriate issue and I will do my best to reply promptly.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
This app is licensed under the [MIT](LICENSE) license.
|
||||||
|
|||||||
Reference in New Issue
Block a user