AI prompts
base on # Dailies Tracker
## [All original credit goes to Juls for their amazing idea](https://twitter.com/milkhatersinc)
## WIP
## Architecture
### Source of truth
The first time you set up the app on your device, that device will be seen as the source of truth. Any subsequent connections to that data will be seen as secondary sources. What this looks like in terms of data is:
1. Device gets registered as source of truth, creating a one-of-a-kind ticket key.
2. When the device is asked to generate a connecting ticket (via QR code), it will submit to the server a token that will then be one time use to sync.
3. Any changes that occur on either end will then sync to other devices with the matching token.
### UI
The UI for both the app and the web-version are built on a shared React library using:
- styled-components
- feather icons
- MDXEditor
- react-calendar
- react-modal
### App
The app is built using Wails (Go backend, Web front-end)
### Web
TBD :)
## Translation help
I'm not multilingual, so translations are ALWAYS welcome. You can look at `packages/i18n` to see the current state of internationalization and contribute!
### Current translations
- Spanish (credit @anjosmelanie and @amukasekon)
- French (credit @Honeyxilia)
- Brazilian Portuguese (credit @rebsilva)
- Russian (credit @hllwrld7)
- Indonesian (credit @a0z0u)
- Vietnamese (credit @xuanhaivptthn)
- German (credit @justjustie)
- Dutch (credit @SnooLuna)
### Adding translations
1. Navigate to `packages/i18n` and add your localization. Required fields are described in `index.d.ts`.
2. Once you've created your translations, ensure it is exported through `index.js` and declared in `index.d.ts` with `{language_lowercased_2_chars}{COUNTRY_UPPERCASED_2_CHARS}`.
3. Navigate to `packages/app/frontend/src/main.tsx` and update the switch `localeSwitch`
4. Open a pull request and I'll merge it in!
", Assign "at most 3 tags" to the expected json: {"id":"9801","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"