diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000000..43c994c2d3 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b8f56eaa22..72775d9351 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -56,7 +56,7 @@ TL;DR Clone the repo and run `cargo run` from each folder (e.g. `cli` or `server - Run `cargo run` to start the server - Go to `browser`, run `pnpm install` (if you haven't already), and run `pnpm dev` to start the browser -- Visit your `localhost` in your locally running `atomic-data-browser` instance: (e.g. `http://localhost:5173/app/show?subject=http%3A%2F%2Flocalhost`) +- Visit your `localhost` in your locally running `atomic-data-browser` instance: (e.g. `http://localhost:6747/app/show?subject=http%3A%2F%2Flocalhost`) - use `cargo watch -- cargo run` to automatically recompile `atomic-server` when you update JS assets in `browser` ### IDE setup (VSCode) diff --git a/browser/CONTRIBUTING.md b/browser/CONTRIBUTING.md index b67c225fcc..01ae911e39 100644 --- a/browser/CONTRIBUTING.md +++ b/browser/CONTRIBUTING.md @@ -5,7 +5,6 @@ Note that your code changes will be distributed under the MIT license of this re Check out the [Roadmap](https://docs.atomicdata.dev/roadmap.html) if you want to learn more about our plans and the history of the project. Talk with other devs on our [Discord][discord-url]! -[discord-badge]: https://img.shields.io/discord/723588174747533393.svg?logo=discord [discord-url]: https://discord.gg/a72Rv2P ## Publishing @@ -50,6 +49,6 @@ If you run `pnpm start` from the root, these will be run automatically. Atomic Data Browser uses [Wuchale](https://wuchale.dev/) for localization. When adding new text to the app wuchale will automatically extract it and add it to the locale files (When running the vite dev server). Make sure you provide translations for the any new text you add. -To help with this you can provide a Google Gemini API key, Wuchale will then use this to generate translations for you automatically. -To do so export the key in your terminal or use something like direnv to set the key: `export GEMINI_API_KEY=your_api_key` -More info: [How to use Gemini live translation](https://wuchale.dev/guides/gemini/) +To help with this you can provide an OpenRouter API key, Wuchale will then use this to generate translations for you automatically. +To do so export the key in your terminal or use something like direnv to set the key: `export OPENROUTER_API_KEY=your_api_key` +More info: [AI live translation](https://wuchale.dev/guides/ai/) diff --git a/browser/README.md b/browser/README.md index a63788c5e7..8fffe3ab54 100644 --- a/browser/README.md +++ b/browser/README.md @@ -13,7 +13,7 @@ Designed for interacting with [atomic-server](https://github.com/atomicdata-dev/ **demo on [atomicdata.dev](https://atomicdata.dev)** -https://user-images.githubusercontent.com/2183313/139728539-d69b899f-6f9b-44cb-a1b7-bbab68beac0c.mp4 + ```sh # To run, simply run the following commands: diff --git a/planning/Findings 2026-07-22.md b/planning/Findings 2026-07-22.md new file mode 100644 index 0000000000..a81eca3554 --- /dev/null +++ b/planning/Findings 2026-07-22.md @@ -0,0 +1,21 @@ +# Findings 2026-07-22 + +- Share dialog should be a popover +- AI onboarding is to visually overwhelming, change it from overlay to fill the sidebar (white bg), no card. +- "meet" should be either "start meeting" or it should create a new meeting without starting. +- Meetings always show 'leave' button even when it ended or when you already left. +- Kanban board can be rendered in a document but it's too tall. +- REGRESSION: Dropdowns can show two focus/hover states, one for mouse and one for keyboard. They should take over instead. +- Opening a new tab to a different drive should auto-switch to the drive. +- On Chrome, site instantly asks for loopback network permission. +- Signup flow with password manager is weird. It saves your recovery password as a normal password. You then have to save your secret manually. +- Sync page is confusing, 'Connect a device' button shown above 'Sync a device' section. Both do something different. +- User page: 'Open a drive by URL or DID' is ugly and feels out of place on the user page. +- BUG: Go to drive, click share, copy link. Open link in new tab: + + ```output + Could not fetch url 'https://node1.atomicserver.eu/did:ad:RNYhcSSD4oDoPLBS1_EUtSRpuwqGQssgm_K7CH81NqNOsAQFQNgPP31MKhWdeKsBZ55wS6Zj7a5t50Mq8ItyAA'. Status: 401. Body: {"https://atomicdata.dev/properties/description":"Unauthorized. This resource is not publicly readable. Try signing in","https://atomicdata.dev/properties/errorCode":0,"https://atomicdata.dev/properties/isA":["https://atomicdata.dev/classes/Error"],"https://atomicdata.dev/properties/loroUpdate":"bG9ybwAAAAAAAAAAAAAAAJwCjCEAA8MBAABMT1JPAAQiTRhgQIKIAQAA9QwB1YfVjqi2uaR6AAACAHZ2Apm9+JPfjIOtfggaAPZhAgAMAHpI5bKB1UPVAAAAAAABBAEBGwLVQ9WBsuVIepkefvJlDFp+AQEBAQEBBgAAAAkBivmDpg0AAQAGAQQBAAACNytodHRwczovL2F0b21pY2RhdGEuZGV2L3Byb3BlcnRpZXMvZXJyb3JDb2RlChUAcQAOAQQCAQADAPEECwIBAQACAwAADAB+Wgxl8n4emY0AZgQABAEQAYUAARUABoIA/wQQAwQBAAAEBAEAAAYEAAEAAmkljAAPT2lzQS0mAA/4BmRlc2NyaXB0aW9uCWRhdGF0eXBlc74A/x0UAQQGAQAEAgEBBAYAAQICCAsCCAEAfwUNcmVzb3VyY2VBcnJheQkBBwEFJG8ABPQTY2xhc3Nlcy9FcnJvcgVEVW5hdXRob3JpemVkLiBUaGlzIEwA8CQgaXMgbm90IHB1YmxpY2x5IHJlYWRhYmxlLiBUcnkgc2lnbmluZyBpbgAACwAlALIABAAAAAAADtfafAEAAAAFAAAAAgBmcgEMAH5aDGXyfh6ZAAAAANmhNjagAQAAZQEAAExPUk8ABCJNGGBAgh8BAAD/TwECAQAKcHJvcGVydGllcwEBBCRodHRwczovL2F0b21pY2RhdGEuZGV2L2NsYXNzZXMvRXJyb3IBmR5+8mUMWn4BAwIBAAIBBAIBAAALAIAJZGF0YXR5cGVzAAEAASVLAAQGcAD1BS9pc0EEDXJlc291cmNlQXJyYXkAXABnAAAADACAngBfAAEAAyufAAQHVAC/ZXJyb3JDb2RlAwCCABPvBwGZvfiT34yDrX4CAi1hAA/0EWRlc2NyaXB0aW9uBERVbmF1dGhvcml6ZWQuIFRoaXMg0AD0HCBpcyBub3QgcHVibGljbHkgcmVhZGFibGUuIFRyeSBzaWduaW5nIGluAAJQAfAH1UPVgbLlSHoAAwEEAAEAAEsAngADAAAAAABWQaoUAQAAAAUAAAANAAGZHn7yZQxafgEAAAABDACACnByb3BlcnRpZXPazroiNwEAAAAAAAA="} + ``` + +- Private drives: Should the be different? Right now a new user starts in their private drive. We dump things like AI chats in here. It's presented as their default drive, users might want to invite others to their drive but that would negate the private nature of it. +- BUG: Created a folder on a new drive, sync error. `Drive did:ad:US4w7uggpjkLS5FtXfsuGPEiE13qeUqhkolhVtMCQFFF_etoNT2CJbRcAa1pkO8p2axiLtOZN7sevJK0SW4yDQ is not enrolled for sync on this node.`