{"id":13912325,"url":"https://github.com/Xetera/me","last_synced_at":"2025-07-18T12:30:47.332Z","repository":{"id":183653585,"uuid":"626081643","full_name":"Xetera/me","owner":"Xetera","description":"🧍‍♀️ An API for your online presence","archived":false,"fork":false,"pushed_at":"2024-06-29T17:48:35.000Z","size":384,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-16T01:25:22.081Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://me.xetera.dev/graphiql","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Xetera.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-10T18:58:51.000Z","updated_at":"2024-08-04T00:31:04.000Z","dependencies_parsed_at":"2024-06-29T17:03:37.621Z","dependency_job_id":null,"html_url":"https://github.com/Xetera/me","commit_stats":null,"previous_names":["xetera/me"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xetera%2Fme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xetera%2Fme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xetera%2Fme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xetera%2Fme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xetera","download_url":"https://codeload.github.com/Xetera/me/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226403759,"owners_count":17619717,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-07T01:01:09.571Z","updated_at":"2024-11-25T21:31:09.226Z","avatar_url":"https://github.com/Xetera.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# Me\n\nAn API for your online presence.\n\nhttps://me.xetera.dev/graphiql\n\n## Providers\n\nSupported services, implemented in the order of what's applicable to me in https://xetera.dev\n\n- [x] Amazon Kindle\n  - Book title, cover image, author, etc\n  - Last read date including device\n- [x] Spotify\n  - [x] Liked songs\n  - [ ] Playlists\n- [x] Simkl (Plex, Netflix, Crunchyroll, etc)\n- [ ] Discord\n- [ ] Anilist\n- [ ] Osu\n\n## Setting up\n\n1. `pnpm i`\n2. Copy `.env.example` to `.env` and fill in the relevant fields. Make sure to also get a planetscale db set up for convenience. You can also use a local db if you want.\n3. Copy `config.example.toml` to `config.toml` and fill in the relevant fields.\n4. `pnpm dev`\n\n## Deploying\n\nI personally use [Dokku](https://dokku.com/docs/getting-started/installation/) for deployment, but you can use whatever you want.\n\nIn case you want to deploy my way:\n\n1. Run `pnpm encrypt` to move your encrypted configuration file to `.dokku/ansible/config.toml.enc`\n2. Add `IP` and `PRIVATE_KEY` in github secrets corresponding to the private key you use to deploy in Dokku.\n3. Change the `domains` and `database_url` `.dokku/ansible/playbook.yml` to your own.\n\nNow, whenever you push to `main`, it will automatically deploy.\n\n## Can you make this a service?\n\nMaybe, but it would only be available for services with publicly accessible data. You'd need to give me access to your entire amazon account to get your Kindle data, which you shouldn't be doing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FXetera%2Fme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FXetera%2Fme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FXetera%2Fme/lists"}