├── .dockerignore ├── .github └── workflows │ └── test.yml ├── .gitignore ├── .secrets └── .gitkeep ├── .vscode └── settings.json ├── Dockerfile ├── README.md ├── db.sqlite ├── deploy.sh ├── litestream.yml ├── package.json ├── renovate.json ├── run.sh ├── server ├── .eslintrc.cjs ├── cli.ts ├── index.ts ├── package.json ├── src │ ├── app.ts │ ├── config.ts │ ├── handler │ │ ├── actor.ts │ │ ├── ap │ │ │ ├── activity.ts │ │ │ ├── api.ts │ │ │ ├── delivery.ts │ │ │ └── note.ts │ │ ├── app.ts │ │ ├── delivery.ts │ │ ├── inbox.ts │ │ └── note.ts │ ├── helper │ │ ├── fetcher.ts │ │ ├── pem.ts │ │ ├── signature.ts │ │ ├── signedFetcher.ts │ │ ├── transform.ts │ │ └── zod.ts │ ├── infra │ │ ├── actorRepository.ts │ │ ├── db.ts │ │ ├── delivery.ts │ │ ├── fetchClient.ts │ │ ├── followRelationRepository.ts │ │ ├── inboxRepository.ts │ │ ├── jobScheduleRepository.ts │ │ ├── noteRepository.ts │ │ ├── shareRepository.ts │ │ └── signer.ts │ ├── middleware │ │ ├── auth.ts │ │ ├── parseBody.ts │ │ └── serve.ts │ ├── plugin │ │ └── rssfeed │ │ │ ├── infra │ │ │ └── rssConfigRepository.ts │ │ │ ├── model │ │ │ └── rssConfig.ts │ │ │ └── plugin.ts │ ├── protocols │ │ └── ap │ │ │ ├── activity.ts │ │ │ └── object.ts │ └── router.ts ├── test │ ├── ap │ │ └── actor.spec.ts │ ├── handlers.spec.ts │ └── helper │ │ ├── signature.spec.ts │ │ └── transform.spec.ts └── tsconfig.json ├── shared ├── model │ ├── actor.ts │ ├── follow.ts │ ├── inbox.ts │ ├── jobScheduler.ts │ ├── note.ts │ ├── person.ts │ ├── share.ts │ └── timeline.ts └── request │ ├── follow.ts │ ├── inbox.ts │ └── note.ts ├── web ├── .eslintrc.cjs ├── .gitignore ├── .vscode │ └── settings.json ├── README.md ├── index.html ├── package.json ├── public │ ├── android-chrome-96x96.png │ ├── apple-touch-icon.png │ ├── favicon.ico │ └── timeline.png ├── src │ ├── App.tsx │ ├── api │ │ ├── api.ts │ │ ├── auth.ts │ │ └── firebase.ts │ ├── components │ │ ├── button.tsx │ │ └── input.tsx │ ├── helper │ │ └── assert.ts │ ├── index.css │ ├── layout │ │ └── Index.tsx │ ├── main.tsx │ ├── pages │ │ ├── Index.tsx │ │ ├── Login.tsx │ │ ├── RssFeedPlugin.tsx │ │ ├── User.tsx │ │ └── features │ │ │ └── note │ │ │ └── Note.tsx │ └── vite-env.d.ts ├── tsconfig.json ├── tsconfig.node.json ├── vite.config.ts └── yarn.lock └── yarn.lock /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/.dockerignore -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/.gitignore -------------------------------------------------------------------------------- /.secrets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/Dockerfile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Timeline 2 | -------------------------------------------------------------------------------- /db.sqlite: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /deploy.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/deploy.sh -------------------------------------------------------------------------------- /litestream.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/litestream.yml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/package.json -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/renovate.json -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/run.sh -------------------------------------------------------------------------------- /server/.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/.eslintrc.cjs -------------------------------------------------------------------------------- /server/cli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/cli.ts -------------------------------------------------------------------------------- /server/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/index.ts -------------------------------------------------------------------------------- /server/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/package.json -------------------------------------------------------------------------------- /server/src/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/app.ts -------------------------------------------------------------------------------- /server/src/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/config.ts -------------------------------------------------------------------------------- /server/src/handler/actor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/actor.ts -------------------------------------------------------------------------------- /server/src/handler/ap/activity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/ap/activity.ts -------------------------------------------------------------------------------- /server/src/handler/ap/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/ap/api.ts -------------------------------------------------------------------------------- /server/src/handler/ap/delivery.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/ap/delivery.ts -------------------------------------------------------------------------------- /server/src/handler/ap/note.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/ap/note.ts -------------------------------------------------------------------------------- /server/src/handler/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/app.ts -------------------------------------------------------------------------------- /server/src/handler/delivery.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/delivery.ts -------------------------------------------------------------------------------- /server/src/handler/inbox.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/inbox.ts -------------------------------------------------------------------------------- /server/src/handler/note.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/handler/note.ts -------------------------------------------------------------------------------- /server/src/helper/fetcher.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/helper/fetcher.ts -------------------------------------------------------------------------------- /server/src/helper/pem.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/helper/pem.ts -------------------------------------------------------------------------------- /server/src/helper/signature.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/helper/signature.ts -------------------------------------------------------------------------------- /server/src/helper/signedFetcher.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/helper/signedFetcher.ts -------------------------------------------------------------------------------- /server/src/helper/transform.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/helper/transform.ts -------------------------------------------------------------------------------- /server/src/helper/zod.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/helper/zod.ts -------------------------------------------------------------------------------- /server/src/infra/actorRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/actorRepository.ts -------------------------------------------------------------------------------- /server/src/infra/db.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/db.ts -------------------------------------------------------------------------------- /server/src/infra/delivery.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/delivery.ts -------------------------------------------------------------------------------- /server/src/infra/fetchClient.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/fetchClient.ts -------------------------------------------------------------------------------- /server/src/infra/followRelationRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/followRelationRepository.ts -------------------------------------------------------------------------------- /server/src/infra/inboxRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/inboxRepository.ts -------------------------------------------------------------------------------- /server/src/infra/jobScheduleRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/jobScheduleRepository.ts -------------------------------------------------------------------------------- /server/src/infra/noteRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/noteRepository.ts -------------------------------------------------------------------------------- /server/src/infra/shareRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/shareRepository.ts -------------------------------------------------------------------------------- /server/src/infra/signer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/infra/signer.ts -------------------------------------------------------------------------------- /server/src/middleware/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/middleware/auth.ts -------------------------------------------------------------------------------- /server/src/middleware/parseBody.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/middleware/parseBody.ts -------------------------------------------------------------------------------- /server/src/middleware/serve.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/middleware/serve.ts -------------------------------------------------------------------------------- /server/src/plugin/rssfeed/infra/rssConfigRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/plugin/rssfeed/infra/rssConfigRepository.ts -------------------------------------------------------------------------------- /server/src/plugin/rssfeed/model/rssConfig.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/plugin/rssfeed/model/rssConfig.ts -------------------------------------------------------------------------------- /server/src/plugin/rssfeed/plugin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/plugin/rssfeed/plugin.ts -------------------------------------------------------------------------------- /server/src/protocols/ap/activity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/protocols/ap/activity.ts -------------------------------------------------------------------------------- /server/src/protocols/ap/object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/protocols/ap/object.ts -------------------------------------------------------------------------------- /server/src/router.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/src/router.ts -------------------------------------------------------------------------------- /server/test/ap/actor.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/test/ap/actor.spec.ts -------------------------------------------------------------------------------- /server/test/handlers.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/test/handlers.spec.ts -------------------------------------------------------------------------------- /server/test/helper/signature.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/test/helper/signature.spec.ts -------------------------------------------------------------------------------- /server/test/helper/transform.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/test/helper/transform.spec.ts -------------------------------------------------------------------------------- /server/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/server/tsconfig.json -------------------------------------------------------------------------------- /shared/model/actor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/actor.ts -------------------------------------------------------------------------------- /shared/model/follow.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/follow.ts -------------------------------------------------------------------------------- /shared/model/inbox.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/inbox.ts -------------------------------------------------------------------------------- /shared/model/jobScheduler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/jobScheduler.ts -------------------------------------------------------------------------------- /shared/model/note.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/note.ts -------------------------------------------------------------------------------- /shared/model/person.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/person.ts -------------------------------------------------------------------------------- /shared/model/share.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/share.ts -------------------------------------------------------------------------------- /shared/model/timeline.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/model/timeline.ts -------------------------------------------------------------------------------- /shared/request/follow.ts: -------------------------------------------------------------------------------- 1 | export interface ApiFollowRequest { 2 | id: string; 3 | } 4 | -------------------------------------------------------------------------------- /shared/request/inbox.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/shared/request/inbox.ts -------------------------------------------------------------------------------- /shared/request/note.ts: -------------------------------------------------------------------------------- 1 | export interface CreateNoteRequest { 2 | content: string; 3 | } 4 | -------------------------------------------------------------------------------- /web/.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/.eslintrc.cjs -------------------------------------------------------------------------------- /web/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/.gitignore -------------------------------------------------------------------------------- /web/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/.vscode/settings.json -------------------------------------------------------------------------------- /web/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/README.md -------------------------------------------------------------------------------- /web/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/index.html -------------------------------------------------------------------------------- /web/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/package.json -------------------------------------------------------------------------------- /web/public/android-chrome-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/public/android-chrome-96x96.png -------------------------------------------------------------------------------- /web/public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/public/apple-touch-icon.png -------------------------------------------------------------------------------- /web/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/public/favicon.ico -------------------------------------------------------------------------------- /web/public/timeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/public/timeline.png -------------------------------------------------------------------------------- /web/src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/App.tsx -------------------------------------------------------------------------------- /web/src/api/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/api/api.ts -------------------------------------------------------------------------------- /web/src/api/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/api/auth.ts -------------------------------------------------------------------------------- /web/src/api/firebase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/api/firebase.ts -------------------------------------------------------------------------------- /web/src/components/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/components/button.tsx -------------------------------------------------------------------------------- /web/src/components/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/components/input.tsx -------------------------------------------------------------------------------- /web/src/helper/assert.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/helper/assert.ts -------------------------------------------------------------------------------- /web/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/index.css -------------------------------------------------------------------------------- /web/src/layout/Index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/layout/Index.tsx -------------------------------------------------------------------------------- /web/src/main.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/main.tsx -------------------------------------------------------------------------------- /web/src/pages/Index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/pages/Index.tsx -------------------------------------------------------------------------------- /web/src/pages/Login.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/pages/Login.tsx -------------------------------------------------------------------------------- /web/src/pages/RssFeedPlugin.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/pages/RssFeedPlugin.tsx -------------------------------------------------------------------------------- /web/src/pages/User.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/pages/User.tsx -------------------------------------------------------------------------------- /web/src/pages/features/note/Note.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/src/pages/features/note/Note.tsx -------------------------------------------------------------------------------- /web/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /web/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/tsconfig.json -------------------------------------------------------------------------------- /web/tsconfig.node.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/tsconfig.node.json -------------------------------------------------------------------------------- /web/vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/vite.config.ts -------------------------------------------------------------------------------- /web/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/web/yarn.lock -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/myuon/timeline/HEAD/yarn.lock --------------------------------------------------------------------------------