AI prompts
base on Simple macOS menu bar application to view and interact with reminders. Developed with SwiftUI and using Apple Reminders as a source. <div align="center">
<img
src="docs/images/reminders-icon.png"
alt="Reminders MenuBar"
>
<h1>
Reminders MenuBar
</h1>
<p>
Simple macOS menu bar app to view and interact with reminders.
</p>
<p>
<a href="#features">Features</a> •
<a href="#installation">Installation</a> •
<a href="#permission-request">Permission Request</a> •
<a href="#contributing">Contributing</a> •
<a href="#languages">Languages</a> •
<a href="#license">License</a>
</p>
</div>
<div align="center">
<img
max-width="400"
width="45%"
src="docs/images/reminder-menubar-light.png"
alt="Reminders MenuBar in light mode"
>
<img
max-width="400"
width="45%"
src="docs/images/reminder-menubar-dark.png"
alt="Reminders MenuBar in dark mode"
>
</div>
## Features
* All interactions through the macOS menu bar
* Keep everything in sync with Apple Reminders
* Create new reminders in your chosen list
* Set a reminder's due date using natural language
* Mark reminders as completed / uncompleted
* Edit reminders, Remove reminders or Move reminders between lists
* View a list of upcoming reminders
* Filter reminders through lists or through completed status
<div align="center">
<img
src="docs/images/reminders-menubar-demo.gif"
alt="Reminders MenuBar demo"
>
</div>
## Installation
*Reminders MenuBar requires macOS Big Sur 11 or later.*
### Homebrew
Reminders MenuBar can be installed using [Homebrew](http://brew.sh).
```bash
brew install --cask reminders-menubar
```
### Direct Download
Direct downloads can be found on the [releases page](https://github.com/DamascenoRafael/reminders-menubar/releases).
After downloading and extracting, just drag the *.app* file to the *Applications* folder.
## Permission Request
Reminders MenuBar uses [EKEventStore](https://developer.apple.com/documentation/eventkit/ekeventstore) to access reminders on macOS (which are available in Apple Reminders and can be synced through iCloud). On first use, the app should request permission to access reminders as shown in the image below. Also, in *System Settings > Privacy & Security > Reminders* it is possible to manage this permission.
<div>
<img
width="250"
src="docs/images/reminders-permission.png"
alt="macOS window asking permission for Reminders MenuBar to access reminders"
>
</div>
### OpenCore Legacy Patcher
[▶︎ Click here if you are using *OpenCore Legacy Patcher*](docs/fix-for-opencore-legacy-patcher.md)
## Contributing
Feel free to share, open issues and contribute to this project! :heart:
## Languages
🇺🇸 English • 🇧🇷 Brazilian Portuguese • 🇨🇳 Chinese (Simplified and Traditional) • 🇳🇱 Dutch • 🇫🇷 French • 🇩🇪 German • 🇮🇹 Italian • 🇯🇵 Japanese • 🇰🇷 Korean • 🇵🇱 Polish • 🇷🇺 Russian • 🇸🇰 Slovak • 🇲🇽 Spanish (Latin America) • 🇹🇷 Turkish • 🇺🇦 Ukrainian • 🇻🇳 Vietnamese
[▶︎ Click here to learn how to add new languages :globe_with_meridians:](docs/adding-new-languages.md)
## License
This project is licensed under the terms of the GNU General Public License v3.0.
See [LICENSE](LICENSE) for details.
", Assign "at most 3 tags" to the expected json: {"id":"11812","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"