From 2b98498873d343077d20944f4e17f2f3c6c43c3c Mon Sep 17 00:00:00 2001
From: Aaron Leopold <36278431+aaronleopold@users.noreply.github.com>
Date: Thu, 16 Jun 2022 15:05:59 -0700
Subject: [PATCH] repo restructured (#20)
---
packages/core/.dockerignore => .dockerignore | 2 +-
.gitattributes | 2 +-
.github/scripts/setup.ps1 | 4 +-
.github/scripts/setup.sh | 8 ++--
.gitignore | 2 +-
Cargo.lock | 2 +-
Cargo.toml | 2 +-
packages/core/Dockerfile => Dockerfile | 10 +---
README.md | 43 +++++++++++-------
apps/README.md | 7 +++
.../frontend => apps/client}/.env.template | 0
.../frontend => apps/client}/@types/epub.d.ts | 0
.../client}/@types/index.d.ts | 0
.../frontend => apps/client}/@types/job.d.ts | 0
.../client}/@types/library.d.ts | 0
.../client}/@types/list-directory.d.ts | 0
.../frontend => apps/client}/@types/log.d.ts | 0
.../client}/@types/media.d.ts | 0
.../client}/@types/preference.d.ts | 0
.../client}/@types/read-progress.d.ts | 0
.../client}/@types/series.d.ts | 0
.../frontend => apps/client}/@types/tag.d.ts | 0
.../frontend => apps/client}/@types/user.d.ts | 0
.../core/frontend => apps/client}/index.html | 0
.../frontend => apps/client}/package.json | 9 ++--
.../client}/postcss.config.js | 0
.../client}/public/fallbacks/image-file.svg | 0
.../client}/public/favicon.ico | Bin
.../client}/public/favicon.png | Bin
.../public/stump-logo--irregular-lg.png | Bin
.../public/stump-logo--irregular-sm.png | Bin
.../public/stump-logo--irregular-xs.png | Bin
.../client}/public/stump-logo--irregular.png | Bin
.../client}/public/stump-logo--square.png | Bin
.../core/frontend => apps/client}/src/App.tsx | 0
.../client}/src/api/client.ts | 0
.../frontend => apps/client}/src/api/index.ts | 0
.../client}/src/api/mutation/auth.ts | 0
.../client}/src/api/mutation/library.ts | 0
.../client}/src/api/mutation/media.ts | 0
.../client}/src/api/mutation/tag.ts | 0
.../client}/src/api/query/auth.ts | 0
.../client}/src/api/query/epub.ts | 0
.../client}/src/api/query/filesystem.ts | 0
.../client}/src/api/query/library.ts | 0
.../client}/src/api/query/media.ts | 0
.../client}/src/api/query/series.ts | 0
.../client}/src/api/query/server.ts | 0
.../client}/src/api/query/tag.ts | 0
.../src/components/ApplicationVersion.tsx | 0
.../client}/src/components/Card.tsx | 0
.../src/components/DirectoryPickerModal.tsx | 0
.../client}/src/components/ErrorBoundary.tsx | 0
.../src/components/Home/KeepReading.tsx | 0
.../src/components/Home/NoLibraries.tsx | 0
.../client}/src/components/JobOverlay.tsx | 0
.../src/components/Layouts/BaseLayout.tsx | 0
.../src/components/Layouts/MainLayout.tsx | 0
.../src/components/Layouts/ReadingLayout.tsx | 0
.../client}/src/components/Lazy.tsx | 0
.../components/Library/CreateLibraryModal.tsx | 0
.../components/Library/DeleteLibraryModal.tsx | 0
.../components/Library/EditLibraryModal.tsx | 0
.../components/Library/LibraryModalForm.tsx | 0
.../components/Library/LibraryOptionsMenu.tsx | 0
.../client}/src/components/ListItem.tsx | 0
.../src/components/Media/ComicBookReader.tsx | 0
.../components/Media/Epub/EpubControls.tsx | 0
.../components/Media/Epub/EpubTocDrawer.tsx | 0
.../components/Media/Epub/FontSelection.tsx | 0
.../src/components/Media/EpubReader.tsx | 0
.../src/components/Media/LazyEpubReader.tsx | 0
.../src/components/Media/MediaCard.tsx | 0
.../src/components/Media/MediaGrid.tsx | 0
.../src/components/Media/MediaList.tsx | 0
.../client}/src/components/Media/Toolbar.tsx | 0
.../client}/src/components/Notifications.tsx | 0
.../src/components/Series/SeriesCard.tsx | 0
.../src/components/Series/SeriesGrid.tsx | 0
.../src/components/Series/SeriesList.tsx | 0
.../src/components/Settings/SettingsNav.tsx | 0
.../client}/src/components/Sidebar/Logout.tsx | 0
.../src/components/Sidebar/MobileDrawer.tsx | 0
.../src/components/Sidebar/Sidebar.tsx | 0
.../src/components/Sidebar/ThemeToggle.tsx | 0
.../client}/src/components/TagSelect.tsx | 0
.../client}/src/components/Topbar/Search.tsx | 0
.../src/components/Topbar/SortConfig.tsx | 0
.../src/components/Topbar/ViewModeConfig.tsx | 0
.../client}/src/components/Topbar/index.tsx | 18 ++++----
.../client}/src/components/UiDemo.tsx | 0
.../client}/src/components/ui/Button.tsx | 0
.../client}/src/components/ui/Form.tsx | 0
.../client}/src/components/ui/Input.tsx | 0
.../client}/src/components/ui/Link.tsx | 0
.../client}/src/components/ui/MoreLink.tsx | 0
.../client}/src/components/ui/Tabs.tsx | 0
.../client}/src/components/ui/TextArea.tsx | 0
.../frontend => apps/client}/src/favicon.ico | Bin
.../client}/src/hooks/useDirectoryListing.ts | 0
.../client}/src/hooks/useEpub.ts | 0
.../client}/src/hooks/useJobsListener.ts | 0
.../client}/src/hooks/useTags.ts | 0
.../client}/src/hooks/useUser.ts | 0
.../client}/src/hooks/useViewMode.ts | 0
.../frontend => apps/client}/src/index.css | 0
.../client}/src/locales/en.json | 0
.../frontend => apps/client}/src/main.tsx | 0
.../client}/src/pages/Auth/Login.tsx | 0
.../client}/src/pages/Book/BookOverview.tsx | 0
.../client}/src/pages/Book/ReadBook.tsx | 0
.../client}/src/pages/Book/ReadEpub.tsx | 0
.../client}/src/pages/FourOhFour.tsx | 0
.../client}/src/pages/Home.tsx | 0
.../client}/src/pages/Library.tsx | 0
.../client}/src/pages/SeriesOverview.tsx | 0
.../src/pages/Settings/GeneralSettings.tsx | 0
.../src/pages/Settings/ServerSettings.tsx | 0
.../client}/src/pages/Settings/index.tsx | 0
.../client}/src/store/StoreProvider.tsx | 0
.../client}/src/store/store.ts | 0
.../client}/src/util/chakraTheme.ts | 0
.../client}/src/util/common.ts | 0
.../client}/src/util/epubTheme.ts | 0
.../client}/src/util/pluralize.ts | 0
.../client}/src/util/restricted.ts | 0
.../client}/src/vite-env.d.ts | 0
.../client}/tailwind.config.js | 0
.../frontend => apps/client}/tsconfig.json | 0
.../client}/tsconfig.node.json | 0
.../frontend => apps/client}/vite.config.ts | 0
{packages => apps}/website/.eslintrc.json | 0
{packages => apps}/website/next-env.d.ts | 0
{packages => apps}/website/next-seo.config.js | 2 +-
{packages => apps}/website/next.config.js | 0
{packages => apps}/website/package.json | 0
{packages => apps}/website/postcss.config.js | 0
.../website/public/demo-fallback--dark.png | Bin
.../website/public/demo-fallback--light.png | Bin
.../website/public/demo-fallback.png | Bin
{packages => apps}/website/public/favicon.ico | Bin
{packages => apps}/website/public/favicon.png | Bin
.../website/public/images/1folder1series.gif | Bin
.../public/images/chunky-reader-logo.png | Bin
.../website/public/images/kybook-logo.png | Bin
.../public/images/moon-reader-logo.png | Bin
.../panels/iphone-12--black-compressed.png | Bin
.../public/images/panels/iphone-12--black.png | Bin
.../images/panels/iphone-12--black@2x.png | Bin
.../images/panels/panels-logo--black-text.jpg | Bin
.../images/panels/panels-logo--black.png | Bin
.../panels/panels-logo--white-text.jpeg | Bin
.../images/panels/panels-logo--white.png | Bin
.../website/public/images/pixel-5--TODO.png | Bin
{packages => apps}/website/public/og.png | Bin
.../website/src/components/AppPreview.tsx | 0
.../website/src/components/Footer.tsx | 0
.../website/src/components/Hero.tsx | 0
.../website/src/components/Layout.tsx | 0
.../website/src/components/NProgress.tsx | 0
.../website/src/components/NavBar.tsx | 0
.../website/src/components/ThemeToggle.tsx | 0
.../src/components/features/ComingSoon.tsx | 0
.../src/components/features/Compatibility.tsx | 0
.../src/components/features/FeatureHeader.tsx | 0
.../src/components/features/FormatSupport.tsx | 0
.../src/components/features/PhoneDemo.tsx | 0
.../website/src/components/features/index.tsx | 0
.../src/components/markdoc/Callout.tsx | 0
.../website/src/components/markdoc/Code.tsx | 0
.../src/components/markdoc/Heading.tsx | 0
.../website/src/components/markdoc/List.tsx | 0
.../src/components/markdoc/Section.tsx | 0
.../src/components/markdoc/Sidebar.tsx | 0
.../website/src/components/markdoc/Table.tsx | 0
.../components/markdoc/TableOfContents.tsx | 0
.../src/components/markdoc/sidebarItems.ts | 0
.../website/src/components/ui/Button.tsx | 0
.../src/components/ui/ButtonOrLink.tsx | 0
.../website/src/components/ui/IconButton.tsx | 0
.../website/src/components/ui/Link.tsx | 0
.../website/src/hooks/useAnimateOnInView.ts | 0
.../src/hooks/useIsomorphicLayoutEffect.ts | 0
.../website/src/hooks/useMediaQuery.ts | 0
.../website/src/hooks/usePrevious.ts | 0
.../website/src/markdoc/functions.js | 0
.../src/markdoc/nodes/fence.markdoc.js | 0
.../src/markdoc/nodes/heading.markdoc.js | 0
.../website/src/markdoc/nodes/index.js | 0
.../website/src/markdoc/nodes/link.markdoc.js | 0
.../website/src/markdoc/nodes/list.markdoc.js | 0
.../src/markdoc/nodes/table.markdoc.js | 0
.../src/markdoc/tags/callout.markdoc.js | 0
.../website/src/markdoc/tags/code.markdoc.js | 0
.../website/src/markdoc/tags/index.js | 0
{packages => apps}/website/src/pages/_app.tsx | 0
.../website/src/pages/_document.tsx | 0
.../website/src/pages/contributing.md | 0
{packages => apps}/website/src/pages/faq.md | 0
.../website/src/pages/guides/configuration.md | 0
.../src/pages/guides/docker-examples.md | 0
.../website/src/pages/guides/fs-scanning.md | 0
.../src/pages/guides/full-text-search.md | 0
apps/website/src/pages/guides/index.md | 23 ++++++++++
.../website/src/pages/guides/libraries.md | 0
.../website/src/pages/guides/opds-clients.md | 0
.../website/src/pages/guides/read-progress.md | 0
.../website/src/pages/guides/rest-api.md | 6 +--
.../website/src/pages/guides/series.md | 0
.../website/src/pages/guides/tachiyomi.md | 0
.../website/src/pages/guides/user-accounts.md | 0
.../website/src/pages/guides/web-ui.md | 0
.../website/src/pages/index.tsx | 0
.../website/src/pages/installation/docker.md | 0
.../src/pages/installation/executable.md | 0
.../website/src/pages/installation/index.md | 0
{packages => apps}/website/src/pages/test.md | 0
.../website/src/styles/darcula.css | 0
.../website/src/styles/globals.css | 0
.../website/src/styles/markdown.css | 0
{packages => apps}/website/tailwind.config.js | 0
{packages => apps}/website/tsconfig.json | 0
{packages => apps}/website/vercel.json | 0
{packages/core/server => core}/.rustfmt.toml | 0
{packages/core/server => core}/Cargo.lock | 0
{packages/core/server => core}/Cargo.toml | 6 +--
core/README.md | 1 +
{packages/core/server => core}/Rocket.toml | 0
core/package.json | 17 +++++++
.../server => core}/prisma-cli/Cargo.toml | 0
.../server => core}/prisma-cli/src/main.rs | 0
.../migrations/20220526164945_/migration.sql | 0
.../prisma/migrations/migration_lock.toml | 0
.../prisma/migrations/migrations.sql | 0
.../core/server => core}/prisma/schema.prisma | 0
.../server => core}/src/config/context.rs | 0
.../core/server => core}/src/config/cors.rs | 0
.../core/server => core}/src/config/env.rs | 0
.../core/server => core}/src/config/helmet.rs | 0
.../server => core}/src/config/logging.rs | 0
.../core/server => core}/src/config/mod.rs | 0
.../server => core}/src/config/session.rs | 0
.../core/server => core}/src/db/migration.rs | 0
{packages/core/server => core}/src/db/mod.rs | 0
.../core/server => core}/src/fs/checksum.rs | 0
{packages/core/server => core}/src/fs/epub.rs | 0
.../core/server => core}/src/fs/media_file.rs | 0
{packages/core/server => core}/src/fs/mod.rs | 0
{packages/core/server => core}/src/fs/pdf.rs | 0
{packages/core/server => core}/src/fs/rar.rs | 0
.../server => core}/src/fs/scanner/library.rs | 0
.../server => core}/src/fs/scanner/mod.rs | 0
.../server => core}/src/fs/scanner/utils.rs | 0
{packages/core/server => core}/src/fs/zip.rs | 0
.../core/server => core}/src/guards/auth.rs | 0
.../core/server => core}/src/guards/mod.rs | 0
.../server => core}/src/guards/request.rs | 0
.../core/server => core}/src/job/jobs.rs | 0
.../core/server => core}/src/job/library.rs | 0
{packages/core/server => core}/src/job/mod.rs | 0
.../core/server => core}/src/job/runner.rs | 0
{packages/core/server => core}/src/main.rs | 0
.../core/server => core}/src/opds/author.rs | 0
.../core/server => core}/src/opds/entry.rs | 0
.../core/server => core}/src/opds/feed.rs | 0
.../core/server => core}/src/opds/link.rs | 0
.../core/server => core}/src/opds/mod.rs | 0
.../core/server => core}/src/opds/models.rs | 0
.../server => core}/src/opds/opensearch.rs | 0
.../core/server => core}/src/opds/util.rs | 0
.../server => core}/src/routes/api/auth.rs | 0
.../server => core}/src/routes/api/epub.rs | 0
.../src/routes/api/filesystem.rs | 0
.../server => core}/src/routes/api/job.rs | 0
.../server => core}/src/routes/api/library.rs | 0
.../server => core}/src/routes/api/log.rs | 0
.../server => core}/src/routes/api/media.rs | 0
.../server => core}/src/routes/api/mod.rs | 0
.../server => core}/src/routes/api/series.rs | 0
.../server => core}/src/routes/api/tag.rs | 0
.../server => core}/src/routes/api/user.rs | 0
.../core/server => core}/src/routes/mod.rs | 0
.../core/server => core}/src/routes/opds.rs | 0
.../core/server => core}/src/types/alias.rs | 0
.../core/server => core}/src/types/enums.rs | 0
.../core/server => core}/src/types/errors.rs | 0
.../core/server => core}/src/types/event.rs | 0
.../core/server => core}/src/types/http.rs | 0
.../core/server => core}/src/types/mod.rs | 0
.../server => core}/src/types/models/epub.rs | 0
.../src/types/models/library.rs | 0
.../src/types/models/list_directory.rs | 0
.../server => core}/src/types/models/log.rs | 0
.../server => core}/src/types/models/media.rs | 0
.../server => core}/src/types/models/mod.rs | 0
.../src/types/models/read_progress.rs | 0
.../src/types/models/series.rs | 0
.../server => core}/src/types/models/tag.rs | 0
.../server => core}/src/types/models/user.rs | 0
.../server => core}/src/types/pageable.rs | 0
.../core/server => core}/src/utils/auth.rs | 0
.../core/server => core}/src/utils/event.rs | 0
.../core/server => core}/src/utils/mod.rs | 0
.../core/server => core}/src/utils/webp.rs | 0
package.json | 19 +++++---
packages/core/package.json | 37 ---------------
packages/website/netlify.toml | 10 ----
packages/website/src/pages/guides/index.md | 21 ---------
pnpm-lock.yaml | 27 ++++++-----
pnpm-workspace.yaml | 6 ++-
310 files changed, 137 insertions(+), 147 deletions(-)
rename packages/core/.dockerignore => .dockerignore (95%)
rename packages/core/Dockerfile => Dockerfile (82%)
create mode 100644 apps/README.md
rename {packages/core/frontend => apps/client}/.env.template (100%)
rename {packages/core/frontend => apps/client}/@types/epub.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/index.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/job.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/library.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/list-directory.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/log.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/media.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/preference.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/read-progress.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/series.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/tag.d.ts (100%)
rename {packages/core/frontend => apps/client}/@types/user.d.ts (100%)
rename {packages/core/frontend => apps/client}/index.html (100%)
rename {packages/core/frontend => apps/client}/package.json (89%)
rename {packages/core/frontend => apps/client}/postcss.config.js (100%)
rename {packages/core/frontend => apps/client}/public/fallbacks/image-file.svg (100%)
rename {packages/core/frontend => apps/client}/public/favicon.ico (100%)
rename {packages/core/frontend => apps/client}/public/favicon.png (100%)
rename {packages/core/frontend => apps/client}/public/stump-logo--irregular-lg.png (100%)
rename {packages/core/frontend => apps/client}/public/stump-logo--irregular-sm.png (100%)
rename {packages/core/frontend => apps/client}/public/stump-logo--irregular-xs.png (100%)
rename {packages/core/frontend => apps/client}/public/stump-logo--irregular.png (100%)
rename {packages/core/frontend => apps/client}/public/stump-logo--square.png (100%)
rename {packages/core/frontend => apps/client}/src/App.tsx (100%)
rename {packages/core/frontend => apps/client}/src/api/client.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/index.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/mutation/auth.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/mutation/library.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/mutation/media.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/mutation/tag.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/auth.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/epub.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/filesystem.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/library.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/media.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/series.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/server.ts (100%)
rename {packages/core/frontend => apps/client}/src/api/query/tag.ts (100%)
rename {packages/core/frontend => apps/client}/src/components/ApplicationVersion.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Card.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/DirectoryPickerModal.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ErrorBoundary.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Home/KeepReading.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Home/NoLibraries.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/JobOverlay.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Layouts/BaseLayout.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Layouts/MainLayout.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Layouts/ReadingLayout.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Lazy.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Library/CreateLibraryModal.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Library/DeleteLibraryModal.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Library/EditLibraryModal.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Library/LibraryModalForm.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Library/LibraryOptionsMenu.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ListItem.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/ComicBookReader.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/Epub/EpubControls.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/Epub/EpubTocDrawer.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/Epub/FontSelection.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/EpubReader.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/LazyEpubReader.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/MediaCard.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/MediaGrid.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/MediaList.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Media/Toolbar.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Notifications.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Series/SeriesCard.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Series/SeriesGrid.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Series/SeriesList.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Settings/SettingsNav.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Sidebar/Logout.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Sidebar/MobileDrawer.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Sidebar/Sidebar.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Sidebar/ThemeToggle.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/TagSelect.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Topbar/Search.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Topbar/SortConfig.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Topbar/ViewModeConfig.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/Topbar/index.tsx (91%)
rename {packages/core/frontend => apps/client}/src/components/UiDemo.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/Button.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/Form.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/Input.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/Link.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/MoreLink.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/Tabs.tsx (100%)
rename {packages/core/frontend => apps/client}/src/components/ui/TextArea.tsx (100%)
rename {packages/core/frontend => apps/client}/src/favicon.ico (100%)
rename {packages/core/frontend => apps/client}/src/hooks/useDirectoryListing.ts (100%)
rename {packages/core/frontend => apps/client}/src/hooks/useEpub.ts (100%)
rename {packages/core/frontend => apps/client}/src/hooks/useJobsListener.ts (100%)
rename {packages/core/frontend => apps/client}/src/hooks/useTags.ts (100%)
rename {packages/core/frontend => apps/client}/src/hooks/useUser.ts (100%)
rename {packages/core/frontend => apps/client}/src/hooks/useViewMode.ts (100%)
rename {packages/core/frontend => apps/client}/src/index.css (100%)
rename {packages/core/frontend => apps/client}/src/locales/en.json (100%)
rename {packages/core/frontend => apps/client}/src/main.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Auth/Login.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Book/BookOverview.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Book/ReadBook.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Book/ReadEpub.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/FourOhFour.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Home.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Library.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/SeriesOverview.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Settings/GeneralSettings.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Settings/ServerSettings.tsx (100%)
rename {packages/core/frontend => apps/client}/src/pages/Settings/index.tsx (100%)
rename {packages/core/frontend => apps/client}/src/store/StoreProvider.tsx (100%)
rename {packages/core/frontend => apps/client}/src/store/store.ts (100%)
rename {packages/core/frontend => apps/client}/src/util/chakraTheme.ts (100%)
rename {packages/core/frontend => apps/client}/src/util/common.ts (100%)
rename {packages/core/frontend => apps/client}/src/util/epubTheme.ts (100%)
rename {packages/core/frontend => apps/client}/src/util/pluralize.ts (100%)
rename {packages/core/frontend => apps/client}/src/util/restricted.ts (100%)
rename {packages/core/frontend => apps/client}/src/vite-env.d.ts (100%)
rename {packages/core/frontend => apps/client}/tailwind.config.js (100%)
rename {packages/core/frontend => apps/client}/tsconfig.json (100%)
rename {packages/core/frontend => apps/client}/tsconfig.node.json (100%)
rename {packages/core/frontend => apps/client}/vite.config.ts (100%)
rename {packages => apps}/website/.eslintrc.json (100%)
rename {packages => apps}/website/next-env.d.ts (100%)
rename {packages => apps}/website/next-seo.config.js (85%)
rename {packages => apps}/website/next.config.js (100%)
rename {packages => apps}/website/package.json (100%)
rename {packages => apps}/website/postcss.config.js (100%)
rename {packages => apps}/website/public/demo-fallback--dark.png (100%)
rename {packages => apps}/website/public/demo-fallback--light.png (100%)
rename {packages => apps}/website/public/demo-fallback.png (100%)
rename {packages => apps}/website/public/favicon.ico (100%)
rename {packages => apps}/website/public/favicon.png (100%)
rename {packages => apps}/website/public/images/1folder1series.gif (100%)
rename {packages => apps}/website/public/images/chunky-reader-logo.png (100%)
rename {packages => apps}/website/public/images/kybook-logo.png (100%)
rename {packages => apps}/website/public/images/moon-reader-logo.png (100%)
rename {packages => apps}/website/public/images/panels/iphone-12--black-compressed.png (100%)
rename {packages => apps}/website/public/images/panels/iphone-12--black.png (100%)
rename {packages => apps}/website/public/images/panels/iphone-12--black@2x.png (100%)
rename {packages => apps}/website/public/images/panels/panels-logo--black-text.jpg (100%)
rename {packages => apps}/website/public/images/panels/panels-logo--black.png (100%)
rename {packages => apps}/website/public/images/panels/panels-logo--white-text.jpeg (100%)
rename {packages => apps}/website/public/images/panels/panels-logo--white.png (100%)
rename {packages => apps}/website/public/images/pixel-5--TODO.png (100%)
rename {packages => apps}/website/public/og.png (100%)
rename {packages => apps}/website/src/components/AppPreview.tsx (100%)
rename {packages => apps}/website/src/components/Footer.tsx (100%)
rename {packages => apps}/website/src/components/Hero.tsx (100%)
rename {packages => apps}/website/src/components/Layout.tsx (100%)
rename {packages => apps}/website/src/components/NProgress.tsx (100%)
rename {packages => apps}/website/src/components/NavBar.tsx (100%)
rename {packages => apps}/website/src/components/ThemeToggle.tsx (100%)
rename {packages => apps}/website/src/components/features/ComingSoon.tsx (100%)
rename {packages => apps}/website/src/components/features/Compatibility.tsx (100%)
rename {packages => apps}/website/src/components/features/FeatureHeader.tsx (100%)
rename {packages => apps}/website/src/components/features/FormatSupport.tsx (100%)
rename {packages => apps}/website/src/components/features/PhoneDemo.tsx (100%)
rename {packages => apps}/website/src/components/features/index.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/Callout.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/Code.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/Heading.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/List.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/Section.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/Sidebar.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/Table.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/TableOfContents.tsx (100%)
rename {packages => apps}/website/src/components/markdoc/sidebarItems.ts (100%)
rename {packages => apps}/website/src/components/ui/Button.tsx (100%)
rename {packages => apps}/website/src/components/ui/ButtonOrLink.tsx (100%)
rename {packages => apps}/website/src/components/ui/IconButton.tsx (100%)
rename {packages => apps}/website/src/components/ui/Link.tsx (100%)
rename {packages => apps}/website/src/hooks/useAnimateOnInView.ts (100%)
rename {packages => apps}/website/src/hooks/useIsomorphicLayoutEffect.ts (100%)
rename {packages => apps}/website/src/hooks/useMediaQuery.ts (100%)
rename {packages => apps}/website/src/hooks/usePrevious.ts (100%)
rename {packages => apps}/website/src/markdoc/functions.js (100%)
rename {packages => apps}/website/src/markdoc/nodes/fence.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/nodes/heading.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/nodes/index.js (100%)
rename {packages => apps}/website/src/markdoc/nodes/link.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/nodes/list.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/nodes/table.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/tags/callout.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/tags/code.markdoc.js (100%)
rename {packages => apps}/website/src/markdoc/tags/index.js (100%)
rename {packages => apps}/website/src/pages/_app.tsx (100%)
rename {packages => apps}/website/src/pages/_document.tsx (100%)
rename {packages => apps}/website/src/pages/contributing.md (100%)
rename {packages => apps}/website/src/pages/faq.md (100%)
rename {packages => apps}/website/src/pages/guides/configuration.md (100%)
rename {packages => apps}/website/src/pages/guides/docker-examples.md (100%)
rename {packages => apps}/website/src/pages/guides/fs-scanning.md (100%)
rename {packages => apps}/website/src/pages/guides/full-text-search.md (100%)
create mode 100644 apps/website/src/pages/guides/index.md
rename {packages => apps}/website/src/pages/guides/libraries.md (100%)
rename {packages => apps}/website/src/pages/guides/opds-clients.md (100%)
rename {packages => apps}/website/src/pages/guides/read-progress.md (100%)
rename {packages => apps}/website/src/pages/guides/rest-api.md (57%)
rename {packages => apps}/website/src/pages/guides/series.md (100%)
rename {packages => apps}/website/src/pages/guides/tachiyomi.md (100%)
rename {packages => apps}/website/src/pages/guides/user-accounts.md (100%)
rename {packages => apps}/website/src/pages/guides/web-ui.md (100%)
rename {packages => apps}/website/src/pages/index.tsx (100%)
rename {packages => apps}/website/src/pages/installation/docker.md (100%)
rename {packages => apps}/website/src/pages/installation/executable.md (100%)
rename {packages => apps}/website/src/pages/installation/index.md (100%)
rename {packages => apps}/website/src/pages/test.md (100%)
rename {packages => apps}/website/src/styles/darcula.css (100%)
rename {packages => apps}/website/src/styles/globals.css (100%)
rename {packages => apps}/website/src/styles/markdown.css (100%)
rename {packages => apps}/website/tailwind.config.js (100%)
rename {packages => apps}/website/tsconfig.json (100%)
rename {packages => apps}/website/vercel.json (100%)
rename {packages/core/server => core}/.rustfmt.toml (100%)
rename {packages/core/server => core}/Cargo.lock (100%)
rename {packages/core/server => core}/Cargo.toml (75%)
create mode 100644 core/README.md
rename {packages/core/server => core}/Rocket.toml (100%)
create mode 100644 core/package.json
rename {packages/core/server => core}/prisma-cli/Cargo.toml (100%)
rename {packages/core/server => core}/prisma-cli/src/main.rs (100%)
rename {packages/core/server => core}/prisma/migrations/20220526164945_/migration.sql (100%)
rename {packages/core/server => core}/prisma/migrations/migration_lock.toml (100%)
rename {packages/core/server => core}/prisma/migrations/migrations.sql (100%)
rename {packages/core/server => core}/prisma/schema.prisma (100%)
rename {packages/core/server => core}/src/config/context.rs (100%)
rename {packages/core/server => core}/src/config/cors.rs (100%)
rename {packages/core/server => core}/src/config/env.rs (100%)
rename {packages/core/server => core}/src/config/helmet.rs (100%)
rename {packages/core/server => core}/src/config/logging.rs (100%)
rename {packages/core/server => core}/src/config/mod.rs (100%)
rename {packages/core/server => core}/src/config/session.rs (100%)
rename {packages/core/server => core}/src/db/migration.rs (100%)
rename {packages/core/server => core}/src/db/mod.rs (100%)
rename {packages/core/server => core}/src/fs/checksum.rs (100%)
rename {packages/core/server => core}/src/fs/epub.rs (100%)
rename {packages/core/server => core}/src/fs/media_file.rs (100%)
rename {packages/core/server => core}/src/fs/mod.rs (100%)
rename {packages/core/server => core}/src/fs/pdf.rs (100%)
rename {packages/core/server => core}/src/fs/rar.rs (100%)
rename {packages/core/server => core}/src/fs/scanner/library.rs (100%)
rename {packages/core/server => core}/src/fs/scanner/mod.rs (100%)
rename {packages/core/server => core}/src/fs/scanner/utils.rs (100%)
rename {packages/core/server => core}/src/fs/zip.rs (100%)
rename {packages/core/server => core}/src/guards/auth.rs (100%)
rename {packages/core/server => core}/src/guards/mod.rs (100%)
rename {packages/core/server => core}/src/guards/request.rs (100%)
rename {packages/core/server => core}/src/job/jobs.rs (100%)
rename {packages/core/server => core}/src/job/library.rs (100%)
rename {packages/core/server => core}/src/job/mod.rs (100%)
rename {packages/core/server => core}/src/job/runner.rs (100%)
rename {packages/core/server => core}/src/main.rs (100%)
rename {packages/core/server => core}/src/opds/author.rs (100%)
rename {packages/core/server => core}/src/opds/entry.rs (100%)
rename {packages/core/server => core}/src/opds/feed.rs (100%)
rename {packages/core/server => core}/src/opds/link.rs (100%)
rename {packages/core/server => core}/src/opds/mod.rs (100%)
rename {packages/core/server => core}/src/opds/models.rs (100%)
rename {packages/core/server => core}/src/opds/opensearch.rs (100%)
rename {packages/core/server => core}/src/opds/util.rs (100%)
rename {packages/core/server => core}/src/routes/api/auth.rs (100%)
rename {packages/core/server => core}/src/routes/api/epub.rs (100%)
rename {packages/core/server => core}/src/routes/api/filesystem.rs (100%)
rename {packages/core/server => core}/src/routes/api/job.rs (100%)
rename {packages/core/server => core}/src/routes/api/library.rs (100%)
rename {packages/core/server => core}/src/routes/api/log.rs (100%)
rename {packages/core/server => core}/src/routes/api/media.rs (100%)
rename {packages/core/server => core}/src/routes/api/mod.rs (100%)
rename {packages/core/server => core}/src/routes/api/series.rs (100%)
rename {packages/core/server => core}/src/routes/api/tag.rs (100%)
rename {packages/core/server => core}/src/routes/api/user.rs (100%)
rename {packages/core/server => core}/src/routes/mod.rs (100%)
rename {packages/core/server => core}/src/routes/opds.rs (100%)
rename {packages/core/server => core}/src/types/alias.rs (100%)
rename {packages/core/server => core}/src/types/enums.rs (100%)
rename {packages/core/server => core}/src/types/errors.rs (100%)
rename {packages/core/server => core}/src/types/event.rs (100%)
rename {packages/core/server => core}/src/types/http.rs (100%)
rename {packages/core/server => core}/src/types/mod.rs (100%)
rename {packages/core/server => core}/src/types/models/epub.rs (100%)
rename {packages/core/server => core}/src/types/models/library.rs (100%)
rename {packages/core/server => core}/src/types/models/list_directory.rs (100%)
rename {packages/core/server => core}/src/types/models/log.rs (100%)
rename {packages/core/server => core}/src/types/models/media.rs (100%)
rename {packages/core/server => core}/src/types/models/mod.rs (100%)
rename {packages/core/server => core}/src/types/models/read_progress.rs (100%)
rename {packages/core/server => core}/src/types/models/series.rs (100%)
rename {packages/core/server => core}/src/types/models/tag.rs (100%)
rename {packages/core/server => core}/src/types/models/user.rs (100%)
rename {packages/core/server => core}/src/types/pageable.rs (100%)
rename {packages/core/server => core}/src/utils/auth.rs (100%)
rename {packages/core/server => core}/src/utils/event.rs (100%)
rename {packages/core/server => core}/src/utils/mod.rs (100%)
rename {packages/core/server => core}/src/utils/webp.rs (100%)
delete mode 100644 packages/core/package.json
delete mode 100644 packages/website/netlify.toml
delete mode 100644 packages/website/src/pages/guides/index.md
diff --git a/packages/core/.dockerignore b/.dockerignore
similarity index 95%
rename from packages/core/.dockerignore
rename to .dockerignore
index 17dec815a..e1f81c684 100644
--- a/packages/core/.dockerignore
+++ b/.dockerignore
@@ -1,7 +1,7 @@
node_modules
build
static
-client
+core/client
target
*.lock
*.log
diff --git a/.gitattributes b/.gitattributes
index 52648751b..e7ae11096 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -3,4 +3,4 @@
*.sql linguist-detectable=false
# I don't want website to be included in language stats
-packages/website/** linguist-vendored
\ No newline at end of file
+apps/website/** linguist-vendored
\ No newline at end of file
diff --git a/.github/scripts/setup.ps1 b/.github/scripts/setup.ps1
index e2723aaf1..87ea1be43 100644
--- a/.github/scripts/setup.ps1
+++ b/.github/scripts/setup.ps1
@@ -43,7 +43,7 @@ if (-NOT (Get-Command pnpm -errorAction SilentlyContinue)) {
write-host "Attempting to install 'cargo-watch':"
cargo install cargo-watch
-write-host "Running 'pnpm core setup':"
+write-host "Running 'pnpm run setup':"
pnpm run setup
-write-host "Pre-setup completed! Run 'pnpm core dev' or 'pnpm core start' to get started."
\ No newline at end of file
+write-host "Pre-setup completed! Run 'pnpm dev' or 'pnpm start' to get started."
\ No newline at end of file
diff --git a/.github/scripts/setup.sh b/.github/scripts/setup.sh
index e74b86541..be4eef67a 100755
--- a/.github/scripts/setup.sh
+++ b/.github/scripts/setup.sh
@@ -88,13 +88,13 @@ if [[ "$OSTYPE" == "linux-gnu"* ]]; then
cargo install cargo-watch
- echo "Running 'pnpm core setup':"
+ echo "Running 'pnpm run setup':"
echo
pnpm run setup
echo
- echo "Pre-setup completed! Run 'pnpm core dev' to get started."
+ echo "Pre-setup completed! Run 'pnpm dev' to get started."
elif [[ "$OSTYPE" == "darwin"* ]]; then
echo
echo "Attempting to install 'cargo-watch':"
@@ -102,12 +102,12 @@ elif [[ "$OSTYPE" == "darwin"* ]]; then
cargo install cargo-watch
- echo "Running 'pnpm core setup':"
+ echo "Running 'pnpm run setup':"
echo
pnpm run setup
echo
- echo "Pre-setup completed! Run 'pnpm core dev' to get started."
+ echo "Pre-setup completed! Run 'pnpm dev' to get started."
else
echo "Your OS '$OSTYPE' is not supported by the pre-setup script. Please consider adding support for it: https://github.com/aaronleopold/stump/issues"
exit 1
diff --git a/.gitignore b/.gitignore
index 5918de1e6..733d7cfff 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,7 +14,7 @@ build
# rust
static
target
-client
+core/client
*.db*
*.sqlite*
*prisma.rs*
diff --git a/Cargo.lock b/Cargo.lock
index 7a6a47c7d..272902979 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -4184,7 +4184,7 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
[[package]]
name = "stump"
-version = "0.1.0"
+version = "0.0.1"
dependencies = [
"anyhow",
"async-trait",
diff --git a/Cargo.toml b/Cargo.toml
index 8a2ccfcbe..275ce197e 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,2 +1,2 @@
[workspace]
-members = ["packages/core/server", "packages/core/server/prisma-cli"]
\ No newline at end of file
+members = ["core", "core/prisma-cli"]
\ No newline at end of file
diff --git a/packages/core/Dockerfile b/Dockerfile
similarity index 82%
rename from packages/core/Dockerfile
rename to Dockerfile
index 551cb540f..2d188951f 100644
--- a/packages/core/Dockerfile
+++ b/Dockerfile
@@ -6,7 +6,7 @@ FROM node:16-alpine3.14 as frontend
WORKDIR /home/stump
-COPY frontend/ .
+COPY apps/client/ .
RUN npm install
RUN npm run build
@@ -19,17 +19,11 @@ FROM rust:1-alpine3.15 as builder
ENV RUSTFLAGS="-C target-feature=-crt-static"
-# https://github.com/briansmith/ring/issues/1414 -> TLDR; might have to add musl-tools clang llvm and
-# the following:
-# ENV CC_aarch64_unknown_linux_musl=clang
-# ENV AR_aarch64_unknown_linux_musl=llvm-ar
-# ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-Clink-self-contained=yes -Clinker=rust-lld"
-
RUN apk add --no-cache --verbose musl-dev build-base sqlite openssl-dev
WORKDIR /home/stump
-COPY server/ .
+COPY core/ .
RUN cargo build --release --target=x86_64-unknown-linux-musl
diff --git a/README.md b/README.md
index 9cf39f562..05b6f153a 100644
--- a/README.md
+++ b/README.md
@@ -51,33 +51,34 @@ For information about getting started, how Stump works and manages your library
I am ommitting a lot of files and only focusing on the main directories, but the following is the structure of the project:
-```bash
+```
.
-├── packages
-│ ├── core
-│ │ ├── frontend
-│ │ └── server
-│ │ ├── prisma
-│ │ ├── prisma-cli
-│ │ └── src
+├── apps
+│ ├── client
+│ │ └── src
│ └── website
+│ └── src
+├── core
+│ ├── prisma
+│ ├── prisma-cli
+│ └── src
├── README.md
└── ...
```
### Core
-The core package is where Stump's core functionality is located.
+The core directory is where Stump's 'core' functionality is located, written in Rust.
-`server`: This is the bulk of Stump's functionality. It is a Rocket server.
+
-`frontend`: The frontend directory is where the web client is located. It is a static React application that is served by Stump.
+### Apps
-
+The 'apps' directory is where Stump applications are located. These are separate from the Rust core, and are individual applications.
-### Website
+`client`: A React application that is served by a Stump server. This is the primary web-client for interacting with a Stump server.
-The website package contains a Next.js application for the Stump landing page and documentation pages. The documentation aspect is created using [Markdoc](https://markdoc.io/). This code gets deployed to [stumpapp.dev](http://stumpapp.dev)
+`website`: A Next.js application for the Stump landing site and documentation pages. The documentation is created using [Markdoc](https://markdoc.io/). This code gets deployed to [stumpapp.dev](http://stumpapp.dev)
## Development Setup
@@ -89,6 +90,8 @@ There is now a setup script that handles most of the initial configuration, howe
> If you feel that your system is already configured for development, you may skip this step and run `cargo install cargo-watch` and `pnpm run setup`. I highly recommend using the script, however.
+> **Note**: If you are on a Windows machine, you will need [Visual C++](https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170) installed on your system.
+
If you are on a Windows machine, you'll need to run the following:
```
@@ -110,14 +113,20 @@ If you face any issues running these, or are using a system that is not supporte
To start the application for development, simply run:
```bash
-pnpm core dev
+pnpm dev
```
This will start both the vite dev server and the rust server, watching for changes. You can also run the server and the frontend in separate processes:
```bash
-pnpm core server:dev # start the server
-pnpm core frontend:dev # start the frontend
+pnpm core dev # start the Stump server
+pnpm client dev # start the web client
+```
+
+To run in a release profile, you would just need to run:
+
+```bash
+pnpm core start
```
## License
diff --git a/apps/README.md b/apps/README.md
new file mode 100644
index 000000000..9c1569e13
--- /dev/null
+++ b/apps/README.md
@@ -0,0 +1,7 @@
+# apps
+
+The 'apps' directory is where Stump applications are located. These are separate from the Rust core, and are individual applications.
+
+`client`: A React application that is served by a Stump server. This is the primary web-client for interacting with a Stump server.
+
+`website`: A Next.js application for the Stump landing site and documentation pages. The documentation is created using [Markdoc](https://markdoc.io/). This code gets deployed to [stumpapp.dev](http://stumpapp.dev)
diff --git a/packages/core/frontend/.env.template b/apps/client/.env.template
similarity index 100%
rename from packages/core/frontend/.env.template
rename to apps/client/.env.template
diff --git a/packages/core/frontend/@types/epub.d.ts b/apps/client/@types/epub.d.ts
similarity index 100%
rename from packages/core/frontend/@types/epub.d.ts
rename to apps/client/@types/epub.d.ts
diff --git a/packages/core/frontend/@types/index.d.ts b/apps/client/@types/index.d.ts
similarity index 100%
rename from packages/core/frontend/@types/index.d.ts
rename to apps/client/@types/index.d.ts
diff --git a/packages/core/frontend/@types/job.d.ts b/apps/client/@types/job.d.ts
similarity index 100%
rename from packages/core/frontend/@types/job.d.ts
rename to apps/client/@types/job.d.ts
diff --git a/packages/core/frontend/@types/library.d.ts b/apps/client/@types/library.d.ts
similarity index 100%
rename from packages/core/frontend/@types/library.d.ts
rename to apps/client/@types/library.d.ts
diff --git a/packages/core/frontend/@types/list-directory.d.ts b/apps/client/@types/list-directory.d.ts
similarity index 100%
rename from packages/core/frontend/@types/list-directory.d.ts
rename to apps/client/@types/list-directory.d.ts
diff --git a/packages/core/frontend/@types/log.d.ts b/apps/client/@types/log.d.ts
similarity index 100%
rename from packages/core/frontend/@types/log.d.ts
rename to apps/client/@types/log.d.ts
diff --git a/packages/core/frontend/@types/media.d.ts b/apps/client/@types/media.d.ts
similarity index 100%
rename from packages/core/frontend/@types/media.d.ts
rename to apps/client/@types/media.d.ts
diff --git a/packages/core/frontend/@types/preference.d.ts b/apps/client/@types/preference.d.ts
similarity index 100%
rename from packages/core/frontend/@types/preference.d.ts
rename to apps/client/@types/preference.d.ts
diff --git a/packages/core/frontend/@types/read-progress.d.ts b/apps/client/@types/read-progress.d.ts
similarity index 100%
rename from packages/core/frontend/@types/read-progress.d.ts
rename to apps/client/@types/read-progress.d.ts
diff --git a/packages/core/frontend/@types/series.d.ts b/apps/client/@types/series.d.ts
similarity index 100%
rename from packages/core/frontend/@types/series.d.ts
rename to apps/client/@types/series.d.ts
diff --git a/packages/core/frontend/@types/tag.d.ts b/apps/client/@types/tag.d.ts
similarity index 100%
rename from packages/core/frontend/@types/tag.d.ts
rename to apps/client/@types/tag.d.ts
diff --git a/packages/core/frontend/@types/user.d.ts b/apps/client/@types/user.d.ts
similarity index 100%
rename from packages/core/frontend/@types/user.d.ts
rename to apps/client/@types/user.d.ts
diff --git a/packages/core/frontend/index.html b/apps/client/index.html
similarity index 100%
rename from packages/core/frontend/index.html
rename to apps/client/index.html
diff --git a/packages/core/frontend/package.json b/apps/client/package.json
similarity index 89%
rename from packages/core/frontend/package.json
rename to apps/client/package.json
index adc34c543..64a2d4a16 100644
--- a/packages/core/frontend/package.json
+++ b/apps/client/package.json
@@ -1,12 +1,13 @@
{
- "name": "frontend",
+ "name": "@stump/client",
"private": true,
"version": "0.0.1",
"homepage": ".",
"scripts": {
"dev": "vite --host",
"build": "vite build",
- "preview": "vite preview --port 3000"
+ "preview": "vite preview --port 3000",
+ "unimported": "npx unimported"
},
"dependencies": {
"@chakra-ui/react": "^2.0.0",
@@ -55,6 +56,8 @@
"tailwind-scrollbar-hide": "^1.1.7",
"tailwindcss": "^3.0.24",
"typescript": "^4.7.2",
- "vite": "^2.9.9"
+ "vite": "^2.9.9",
+ "move-cli": "2.0.0",
+ "trash-cli": "^5.0.0"
}
}
\ No newline at end of file
diff --git a/packages/core/frontend/postcss.config.js b/apps/client/postcss.config.js
similarity index 100%
rename from packages/core/frontend/postcss.config.js
rename to apps/client/postcss.config.js
diff --git a/packages/core/frontend/public/fallbacks/image-file.svg b/apps/client/public/fallbacks/image-file.svg
similarity index 100%
rename from packages/core/frontend/public/fallbacks/image-file.svg
rename to apps/client/public/fallbacks/image-file.svg
diff --git a/packages/core/frontend/public/favicon.ico b/apps/client/public/favicon.ico
similarity index 100%
rename from packages/core/frontend/public/favicon.ico
rename to apps/client/public/favicon.ico
diff --git a/packages/core/frontend/public/favicon.png b/apps/client/public/favicon.png
similarity index 100%
rename from packages/core/frontend/public/favicon.png
rename to apps/client/public/favicon.png
diff --git a/packages/core/frontend/public/stump-logo--irregular-lg.png b/apps/client/public/stump-logo--irregular-lg.png
similarity index 100%
rename from packages/core/frontend/public/stump-logo--irregular-lg.png
rename to apps/client/public/stump-logo--irregular-lg.png
diff --git a/packages/core/frontend/public/stump-logo--irregular-sm.png b/apps/client/public/stump-logo--irregular-sm.png
similarity index 100%
rename from packages/core/frontend/public/stump-logo--irregular-sm.png
rename to apps/client/public/stump-logo--irregular-sm.png
diff --git a/packages/core/frontend/public/stump-logo--irregular-xs.png b/apps/client/public/stump-logo--irregular-xs.png
similarity index 100%
rename from packages/core/frontend/public/stump-logo--irregular-xs.png
rename to apps/client/public/stump-logo--irregular-xs.png
diff --git a/packages/core/frontend/public/stump-logo--irregular.png b/apps/client/public/stump-logo--irregular.png
similarity index 100%
rename from packages/core/frontend/public/stump-logo--irregular.png
rename to apps/client/public/stump-logo--irregular.png
diff --git a/packages/core/frontend/public/stump-logo--square.png b/apps/client/public/stump-logo--square.png
similarity index 100%
rename from packages/core/frontend/public/stump-logo--square.png
rename to apps/client/public/stump-logo--square.png
diff --git a/packages/core/frontend/src/App.tsx b/apps/client/src/App.tsx
similarity index 100%
rename from packages/core/frontend/src/App.tsx
rename to apps/client/src/App.tsx
diff --git a/packages/core/frontend/src/api/client.ts b/apps/client/src/api/client.ts
similarity index 100%
rename from packages/core/frontend/src/api/client.ts
rename to apps/client/src/api/client.ts
diff --git a/packages/core/frontend/src/api/index.ts b/apps/client/src/api/index.ts
similarity index 100%
rename from packages/core/frontend/src/api/index.ts
rename to apps/client/src/api/index.ts
diff --git a/packages/core/frontend/src/api/mutation/auth.ts b/apps/client/src/api/mutation/auth.ts
similarity index 100%
rename from packages/core/frontend/src/api/mutation/auth.ts
rename to apps/client/src/api/mutation/auth.ts
diff --git a/packages/core/frontend/src/api/mutation/library.ts b/apps/client/src/api/mutation/library.ts
similarity index 100%
rename from packages/core/frontend/src/api/mutation/library.ts
rename to apps/client/src/api/mutation/library.ts
diff --git a/packages/core/frontend/src/api/mutation/media.ts b/apps/client/src/api/mutation/media.ts
similarity index 100%
rename from packages/core/frontend/src/api/mutation/media.ts
rename to apps/client/src/api/mutation/media.ts
diff --git a/packages/core/frontend/src/api/mutation/tag.ts b/apps/client/src/api/mutation/tag.ts
similarity index 100%
rename from packages/core/frontend/src/api/mutation/tag.ts
rename to apps/client/src/api/mutation/tag.ts
diff --git a/packages/core/frontend/src/api/query/auth.ts b/apps/client/src/api/query/auth.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/auth.ts
rename to apps/client/src/api/query/auth.ts
diff --git a/packages/core/frontend/src/api/query/epub.ts b/apps/client/src/api/query/epub.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/epub.ts
rename to apps/client/src/api/query/epub.ts
diff --git a/packages/core/frontend/src/api/query/filesystem.ts b/apps/client/src/api/query/filesystem.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/filesystem.ts
rename to apps/client/src/api/query/filesystem.ts
diff --git a/packages/core/frontend/src/api/query/library.ts b/apps/client/src/api/query/library.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/library.ts
rename to apps/client/src/api/query/library.ts
diff --git a/packages/core/frontend/src/api/query/media.ts b/apps/client/src/api/query/media.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/media.ts
rename to apps/client/src/api/query/media.ts
diff --git a/packages/core/frontend/src/api/query/series.ts b/apps/client/src/api/query/series.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/series.ts
rename to apps/client/src/api/query/series.ts
diff --git a/packages/core/frontend/src/api/query/server.ts b/apps/client/src/api/query/server.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/server.ts
rename to apps/client/src/api/query/server.ts
diff --git a/packages/core/frontend/src/api/query/tag.ts b/apps/client/src/api/query/tag.ts
similarity index 100%
rename from packages/core/frontend/src/api/query/tag.ts
rename to apps/client/src/api/query/tag.ts
diff --git a/packages/core/frontend/src/components/ApplicationVersion.tsx b/apps/client/src/components/ApplicationVersion.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ApplicationVersion.tsx
rename to apps/client/src/components/ApplicationVersion.tsx
diff --git a/packages/core/frontend/src/components/Card.tsx b/apps/client/src/components/Card.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Card.tsx
rename to apps/client/src/components/Card.tsx
diff --git a/packages/core/frontend/src/components/DirectoryPickerModal.tsx b/apps/client/src/components/DirectoryPickerModal.tsx
similarity index 100%
rename from packages/core/frontend/src/components/DirectoryPickerModal.tsx
rename to apps/client/src/components/DirectoryPickerModal.tsx
diff --git a/packages/core/frontend/src/components/ErrorBoundary.tsx b/apps/client/src/components/ErrorBoundary.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ErrorBoundary.tsx
rename to apps/client/src/components/ErrorBoundary.tsx
diff --git a/packages/core/frontend/src/components/Home/KeepReading.tsx b/apps/client/src/components/Home/KeepReading.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Home/KeepReading.tsx
rename to apps/client/src/components/Home/KeepReading.tsx
diff --git a/packages/core/frontend/src/components/Home/NoLibraries.tsx b/apps/client/src/components/Home/NoLibraries.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Home/NoLibraries.tsx
rename to apps/client/src/components/Home/NoLibraries.tsx
diff --git a/packages/core/frontend/src/components/JobOverlay.tsx b/apps/client/src/components/JobOverlay.tsx
similarity index 100%
rename from packages/core/frontend/src/components/JobOverlay.tsx
rename to apps/client/src/components/JobOverlay.tsx
diff --git a/packages/core/frontend/src/components/Layouts/BaseLayout.tsx b/apps/client/src/components/Layouts/BaseLayout.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Layouts/BaseLayout.tsx
rename to apps/client/src/components/Layouts/BaseLayout.tsx
diff --git a/packages/core/frontend/src/components/Layouts/MainLayout.tsx b/apps/client/src/components/Layouts/MainLayout.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Layouts/MainLayout.tsx
rename to apps/client/src/components/Layouts/MainLayout.tsx
diff --git a/packages/core/frontend/src/components/Layouts/ReadingLayout.tsx b/apps/client/src/components/Layouts/ReadingLayout.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Layouts/ReadingLayout.tsx
rename to apps/client/src/components/Layouts/ReadingLayout.tsx
diff --git a/packages/core/frontend/src/components/Lazy.tsx b/apps/client/src/components/Lazy.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Lazy.tsx
rename to apps/client/src/components/Lazy.tsx
diff --git a/packages/core/frontend/src/components/Library/CreateLibraryModal.tsx b/apps/client/src/components/Library/CreateLibraryModal.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Library/CreateLibraryModal.tsx
rename to apps/client/src/components/Library/CreateLibraryModal.tsx
diff --git a/packages/core/frontend/src/components/Library/DeleteLibraryModal.tsx b/apps/client/src/components/Library/DeleteLibraryModal.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Library/DeleteLibraryModal.tsx
rename to apps/client/src/components/Library/DeleteLibraryModal.tsx
diff --git a/packages/core/frontend/src/components/Library/EditLibraryModal.tsx b/apps/client/src/components/Library/EditLibraryModal.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Library/EditLibraryModal.tsx
rename to apps/client/src/components/Library/EditLibraryModal.tsx
diff --git a/packages/core/frontend/src/components/Library/LibraryModalForm.tsx b/apps/client/src/components/Library/LibraryModalForm.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Library/LibraryModalForm.tsx
rename to apps/client/src/components/Library/LibraryModalForm.tsx
diff --git a/packages/core/frontend/src/components/Library/LibraryOptionsMenu.tsx b/apps/client/src/components/Library/LibraryOptionsMenu.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Library/LibraryOptionsMenu.tsx
rename to apps/client/src/components/Library/LibraryOptionsMenu.tsx
diff --git a/packages/core/frontend/src/components/ListItem.tsx b/apps/client/src/components/ListItem.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ListItem.tsx
rename to apps/client/src/components/ListItem.tsx
diff --git a/packages/core/frontend/src/components/Media/ComicBookReader.tsx b/apps/client/src/components/Media/ComicBookReader.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/ComicBookReader.tsx
rename to apps/client/src/components/Media/ComicBookReader.tsx
diff --git a/packages/core/frontend/src/components/Media/Epub/EpubControls.tsx b/apps/client/src/components/Media/Epub/EpubControls.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/Epub/EpubControls.tsx
rename to apps/client/src/components/Media/Epub/EpubControls.tsx
diff --git a/packages/core/frontend/src/components/Media/Epub/EpubTocDrawer.tsx b/apps/client/src/components/Media/Epub/EpubTocDrawer.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/Epub/EpubTocDrawer.tsx
rename to apps/client/src/components/Media/Epub/EpubTocDrawer.tsx
diff --git a/packages/core/frontend/src/components/Media/Epub/FontSelection.tsx b/apps/client/src/components/Media/Epub/FontSelection.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/Epub/FontSelection.tsx
rename to apps/client/src/components/Media/Epub/FontSelection.tsx
diff --git a/packages/core/frontend/src/components/Media/EpubReader.tsx b/apps/client/src/components/Media/EpubReader.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/EpubReader.tsx
rename to apps/client/src/components/Media/EpubReader.tsx
diff --git a/packages/core/frontend/src/components/Media/LazyEpubReader.tsx b/apps/client/src/components/Media/LazyEpubReader.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/LazyEpubReader.tsx
rename to apps/client/src/components/Media/LazyEpubReader.tsx
diff --git a/packages/core/frontend/src/components/Media/MediaCard.tsx b/apps/client/src/components/Media/MediaCard.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/MediaCard.tsx
rename to apps/client/src/components/Media/MediaCard.tsx
diff --git a/packages/core/frontend/src/components/Media/MediaGrid.tsx b/apps/client/src/components/Media/MediaGrid.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/MediaGrid.tsx
rename to apps/client/src/components/Media/MediaGrid.tsx
diff --git a/packages/core/frontend/src/components/Media/MediaList.tsx b/apps/client/src/components/Media/MediaList.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/MediaList.tsx
rename to apps/client/src/components/Media/MediaList.tsx
diff --git a/packages/core/frontend/src/components/Media/Toolbar.tsx b/apps/client/src/components/Media/Toolbar.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Media/Toolbar.tsx
rename to apps/client/src/components/Media/Toolbar.tsx
diff --git a/packages/core/frontend/src/components/Notifications.tsx b/apps/client/src/components/Notifications.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Notifications.tsx
rename to apps/client/src/components/Notifications.tsx
diff --git a/packages/core/frontend/src/components/Series/SeriesCard.tsx b/apps/client/src/components/Series/SeriesCard.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Series/SeriesCard.tsx
rename to apps/client/src/components/Series/SeriesCard.tsx
diff --git a/packages/core/frontend/src/components/Series/SeriesGrid.tsx b/apps/client/src/components/Series/SeriesGrid.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Series/SeriesGrid.tsx
rename to apps/client/src/components/Series/SeriesGrid.tsx
diff --git a/packages/core/frontend/src/components/Series/SeriesList.tsx b/apps/client/src/components/Series/SeriesList.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Series/SeriesList.tsx
rename to apps/client/src/components/Series/SeriesList.tsx
diff --git a/packages/core/frontend/src/components/Settings/SettingsNav.tsx b/apps/client/src/components/Settings/SettingsNav.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Settings/SettingsNav.tsx
rename to apps/client/src/components/Settings/SettingsNav.tsx
diff --git a/packages/core/frontend/src/components/Sidebar/Logout.tsx b/apps/client/src/components/Sidebar/Logout.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Sidebar/Logout.tsx
rename to apps/client/src/components/Sidebar/Logout.tsx
diff --git a/packages/core/frontend/src/components/Sidebar/MobileDrawer.tsx b/apps/client/src/components/Sidebar/MobileDrawer.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Sidebar/MobileDrawer.tsx
rename to apps/client/src/components/Sidebar/MobileDrawer.tsx
diff --git a/packages/core/frontend/src/components/Sidebar/Sidebar.tsx b/apps/client/src/components/Sidebar/Sidebar.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Sidebar/Sidebar.tsx
rename to apps/client/src/components/Sidebar/Sidebar.tsx
diff --git a/packages/core/frontend/src/components/Sidebar/ThemeToggle.tsx b/apps/client/src/components/Sidebar/ThemeToggle.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Sidebar/ThemeToggle.tsx
rename to apps/client/src/components/Sidebar/ThemeToggle.tsx
diff --git a/packages/core/frontend/src/components/TagSelect.tsx b/apps/client/src/components/TagSelect.tsx
similarity index 100%
rename from packages/core/frontend/src/components/TagSelect.tsx
rename to apps/client/src/components/TagSelect.tsx
diff --git a/packages/core/frontend/src/components/Topbar/Search.tsx b/apps/client/src/components/Topbar/Search.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Topbar/Search.tsx
rename to apps/client/src/components/Topbar/Search.tsx
diff --git a/packages/core/frontend/src/components/Topbar/SortConfig.tsx b/apps/client/src/components/Topbar/SortConfig.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Topbar/SortConfig.tsx
rename to apps/client/src/components/Topbar/SortConfig.tsx
diff --git a/packages/core/frontend/src/components/Topbar/ViewModeConfig.tsx b/apps/client/src/components/Topbar/ViewModeConfig.tsx
similarity index 100%
rename from packages/core/frontend/src/components/Topbar/ViewModeConfig.tsx
rename to apps/client/src/components/Topbar/ViewModeConfig.tsx
diff --git a/packages/core/frontend/src/components/Topbar/index.tsx b/apps/client/src/components/Topbar/index.tsx
similarity index 91%
rename from packages/core/frontend/src/components/Topbar/index.tsx
rename to apps/client/src/components/Topbar/index.tsx
index 123b84af7..6e86a16b1 100644
--- a/packages/core/frontend/src/components/Topbar/index.tsx
+++ b/apps/client/src/components/Topbar/index.tsx
@@ -1,4 +1,4 @@
-import React, { useMemo } from 'react';
+import React from 'react';
import { Box, Heading, HStack, useColorModeValue } from '@chakra-ui/react';
import { CaretLeft, CaretRight } from 'phosphor-react';
import Button from '../ui/Button';
@@ -62,13 +62,13 @@ export default function Topbar() {
const { showViewOptions, viewAsGrid, onViewModeChange } = useViewMode();
- const truncatedTitle = useMemo(() => {
- if (title.length <= 20) {
- return title;
- }
+ // const truncatedTitle = useMemo(() => {
+ // if (title.length <= 20) {
+ // return title;
+ // }
- return `${title.substring(0, 20)}...`;
- }, [title]);
+ // return `${title.substring(0, 20)}...`;
+ // }, [title]);
// TODO: fix this
return (
@@ -89,8 +89,8 @@ export default function Topbar() {
{/* @ts-ignore: this seems to work, idky it has type error */}
-
- {truncatedTitle}
+
+ {title}
diff --git a/packages/core/frontend/src/components/UiDemo.tsx b/apps/client/src/components/UiDemo.tsx
similarity index 100%
rename from packages/core/frontend/src/components/UiDemo.tsx
rename to apps/client/src/components/UiDemo.tsx
diff --git a/packages/core/frontend/src/components/ui/Button.tsx b/apps/client/src/components/ui/Button.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/Button.tsx
rename to apps/client/src/components/ui/Button.tsx
diff --git a/packages/core/frontend/src/components/ui/Form.tsx b/apps/client/src/components/ui/Form.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/Form.tsx
rename to apps/client/src/components/ui/Form.tsx
diff --git a/packages/core/frontend/src/components/ui/Input.tsx b/apps/client/src/components/ui/Input.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/Input.tsx
rename to apps/client/src/components/ui/Input.tsx
diff --git a/packages/core/frontend/src/components/ui/Link.tsx b/apps/client/src/components/ui/Link.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/Link.tsx
rename to apps/client/src/components/ui/Link.tsx
diff --git a/packages/core/frontend/src/components/ui/MoreLink.tsx b/apps/client/src/components/ui/MoreLink.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/MoreLink.tsx
rename to apps/client/src/components/ui/MoreLink.tsx
diff --git a/packages/core/frontend/src/components/ui/Tabs.tsx b/apps/client/src/components/ui/Tabs.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/Tabs.tsx
rename to apps/client/src/components/ui/Tabs.tsx
diff --git a/packages/core/frontend/src/components/ui/TextArea.tsx b/apps/client/src/components/ui/TextArea.tsx
similarity index 100%
rename from packages/core/frontend/src/components/ui/TextArea.tsx
rename to apps/client/src/components/ui/TextArea.tsx
diff --git a/packages/core/frontend/src/favicon.ico b/apps/client/src/favicon.ico
similarity index 100%
rename from packages/core/frontend/src/favicon.ico
rename to apps/client/src/favicon.ico
diff --git a/packages/core/frontend/src/hooks/useDirectoryListing.ts b/apps/client/src/hooks/useDirectoryListing.ts
similarity index 100%
rename from packages/core/frontend/src/hooks/useDirectoryListing.ts
rename to apps/client/src/hooks/useDirectoryListing.ts
diff --git a/packages/core/frontend/src/hooks/useEpub.ts b/apps/client/src/hooks/useEpub.ts
similarity index 100%
rename from packages/core/frontend/src/hooks/useEpub.ts
rename to apps/client/src/hooks/useEpub.ts
diff --git a/packages/core/frontend/src/hooks/useJobsListener.ts b/apps/client/src/hooks/useJobsListener.ts
similarity index 100%
rename from packages/core/frontend/src/hooks/useJobsListener.ts
rename to apps/client/src/hooks/useJobsListener.ts
diff --git a/packages/core/frontend/src/hooks/useTags.ts b/apps/client/src/hooks/useTags.ts
similarity index 100%
rename from packages/core/frontend/src/hooks/useTags.ts
rename to apps/client/src/hooks/useTags.ts
diff --git a/packages/core/frontend/src/hooks/useUser.ts b/apps/client/src/hooks/useUser.ts
similarity index 100%
rename from packages/core/frontend/src/hooks/useUser.ts
rename to apps/client/src/hooks/useUser.ts
diff --git a/packages/core/frontend/src/hooks/useViewMode.ts b/apps/client/src/hooks/useViewMode.ts
similarity index 100%
rename from packages/core/frontend/src/hooks/useViewMode.ts
rename to apps/client/src/hooks/useViewMode.ts
diff --git a/packages/core/frontend/src/index.css b/apps/client/src/index.css
similarity index 100%
rename from packages/core/frontend/src/index.css
rename to apps/client/src/index.css
diff --git a/packages/core/frontend/src/locales/en.json b/apps/client/src/locales/en.json
similarity index 100%
rename from packages/core/frontend/src/locales/en.json
rename to apps/client/src/locales/en.json
diff --git a/packages/core/frontend/src/main.tsx b/apps/client/src/main.tsx
similarity index 100%
rename from packages/core/frontend/src/main.tsx
rename to apps/client/src/main.tsx
diff --git a/packages/core/frontend/src/pages/Auth/Login.tsx b/apps/client/src/pages/Auth/Login.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Auth/Login.tsx
rename to apps/client/src/pages/Auth/Login.tsx
diff --git a/packages/core/frontend/src/pages/Book/BookOverview.tsx b/apps/client/src/pages/Book/BookOverview.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Book/BookOverview.tsx
rename to apps/client/src/pages/Book/BookOverview.tsx
diff --git a/packages/core/frontend/src/pages/Book/ReadBook.tsx b/apps/client/src/pages/Book/ReadBook.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Book/ReadBook.tsx
rename to apps/client/src/pages/Book/ReadBook.tsx
diff --git a/packages/core/frontend/src/pages/Book/ReadEpub.tsx b/apps/client/src/pages/Book/ReadEpub.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Book/ReadEpub.tsx
rename to apps/client/src/pages/Book/ReadEpub.tsx
diff --git a/packages/core/frontend/src/pages/FourOhFour.tsx b/apps/client/src/pages/FourOhFour.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/FourOhFour.tsx
rename to apps/client/src/pages/FourOhFour.tsx
diff --git a/packages/core/frontend/src/pages/Home.tsx b/apps/client/src/pages/Home.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Home.tsx
rename to apps/client/src/pages/Home.tsx
diff --git a/packages/core/frontend/src/pages/Library.tsx b/apps/client/src/pages/Library.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Library.tsx
rename to apps/client/src/pages/Library.tsx
diff --git a/packages/core/frontend/src/pages/SeriesOverview.tsx b/apps/client/src/pages/SeriesOverview.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/SeriesOverview.tsx
rename to apps/client/src/pages/SeriesOverview.tsx
diff --git a/packages/core/frontend/src/pages/Settings/GeneralSettings.tsx b/apps/client/src/pages/Settings/GeneralSettings.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Settings/GeneralSettings.tsx
rename to apps/client/src/pages/Settings/GeneralSettings.tsx
diff --git a/packages/core/frontend/src/pages/Settings/ServerSettings.tsx b/apps/client/src/pages/Settings/ServerSettings.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Settings/ServerSettings.tsx
rename to apps/client/src/pages/Settings/ServerSettings.tsx
diff --git a/packages/core/frontend/src/pages/Settings/index.tsx b/apps/client/src/pages/Settings/index.tsx
similarity index 100%
rename from packages/core/frontend/src/pages/Settings/index.tsx
rename to apps/client/src/pages/Settings/index.tsx
diff --git a/packages/core/frontend/src/store/StoreProvider.tsx b/apps/client/src/store/StoreProvider.tsx
similarity index 100%
rename from packages/core/frontend/src/store/StoreProvider.tsx
rename to apps/client/src/store/StoreProvider.tsx
diff --git a/packages/core/frontend/src/store/store.ts b/apps/client/src/store/store.ts
similarity index 100%
rename from packages/core/frontend/src/store/store.ts
rename to apps/client/src/store/store.ts
diff --git a/packages/core/frontend/src/util/chakraTheme.ts b/apps/client/src/util/chakraTheme.ts
similarity index 100%
rename from packages/core/frontend/src/util/chakraTheme.ts
rename to apps/client/src/util/chakraTheme.ts
diff --git a/packages/core/frontend/src/util/common.ts b/apps/client/src/util/common.ts
similarity index 100%
rename from packages/core/frontend/src/util/common.ts
rename to apps/client/src/util/common.ts
diff --git a/packages/core/frontend/src/util/epubTheme.ts b/apps/client/src/util/epubTheme.ts
similarity index 100%
rename from packages/core/frontend/src/util/epubTheme.ts
rename to apps/client/src/util/epubTheme.ts
diff --git a/packages/core/frontend/src/util/pluralize.ts b/apps/client/src/util/pluralize.ts
similarity index 100%
rename from packages/core/frontend/src/util/pluralize.ts
rename to apps/client/src/util/pluralize.ts
diff --git a/packages/core/frontend/src/util/restricted.ts b/apps/client/src/util/restricted.ts
similarity index 100%
rename from packages/core/frontend/src/util/restricted.ts
rename to apps/client/src/util/restricted.ts
diff --git a/packages/core/frontend/src/vite-env.d.ts b/apps/client/src/vite-env.d.ts
similarity index 100%
rename from packages/core/frontend/src/vite-env.d.ts
rename to apps/client/src/vite-env.d.ts
diff --git a/packages/core/frontend/tailwind.config.js b/apps/client/tailwind.config.js
similarity index 100%
rename from packages/core/frontend/tailwind.config.js
rename to apps/client/tailwind.config.js
diff --git a/packages/core/frontend/tsconfig.json b/apps/client/tsconfig.json
similarity index 100%
rename from packages/core/frontend/tsconfig.json
rename to apps/client/tsconfig.json
diff --git a/packages/core/frontend/tsconfig.node.json b/apps/client/tsconfig.node.json
similarity index 100%
rename from packages/core/frontend/tsconfig.node.json
rename to apps/client/tsconfig.node.json
diff --git a/packages/core/frontend/vite.config.ts b/apps/client/vite.config.ts
similarity index 100%
rename from packages/core/frontend/vite.config.ts
rename to apps/client/vite.config.ts
diff --git a/packages/website/.eslintrc.json b/apps/website/.eslintrc.json
similarity index 100%
rename from packages/website/.eslintrc.json
rename to apps/website/.eslintrc.json
diff --git a/packages/website/next-env.d.ts b/apps/website/next-env.d.ts
similarity index 100%
rename from packages/website/next-env.d.ts
rename to apps/website/next-env.d.ts
diff --git a/packages/website/next-seo.config.js b/apps/website/next-seo.config.js
similarity index 85%
rename from packages/website/next-seo.config.js
rename to apps/website/next-seo.config.js
index fc3ac9d30..a73f36b15 100644
--- a/packages/website/next-seo.config.js
+++ b/apps/website/next-seo.config.js
@@ -5,7 +5,7 @@ export default {
titleTemplate: 'Stump | %s',
defaultTitle: 'Stump',
description:
- 'Free, open source, self-hosting for all your comic books, manga and digital book collections.',
+ 'Free, open source, self-hosting for your comic books, manga and digital book collections.',
canonical: 'https://stumpapp.dev',
openGraph: {
type: 'website',
diff --git a/packages/website/next.config.js b/apps/website/next.config.js
similarity index 100%
rename from packages/website/next.config.js
rename to apps/website/next.config.js
diff --git a/packages/website/package.json b/apps/website/package.json
similarity index 100%
rename from packages/website/package.json
rename to apps/website/package.json
diff --git a/packages/website/postcss.config.js b/apps/website/postcss.config.js
similarity index 100%
rename from packages/website/postcss.config.js
rename to apps/website/postcss.config.js
diff --git a/packages/website/public/demo-fallback--dark.png b/apps/website/public/demo-fallback--dark.png
similarity index 100%
rename from packages/website/public/demo-fallback--dark.png
rename to apps/website/public/demo-fallback--dark.png
diff --git a/packages/website/public/demo-fallback--light.png b/apps/website/public/demo-fallback--light.png
similarity index 100%
rename from packages/website/public/demo-fallback--light.png
rename to apps/website/public/demo-fallback--light.png
diff --git a/packages/website/public/demo-fallback.png b/apps/website/public/demo-fallback.png
similarity index 100%
rename from packages/website/public/demo-fallback.png
rename to apps/website/public/demo-fallback.png
diff --git a/packages/website/public/favicon.ico b/apps/website/public/favicon.ico
similarity index 100%
rename from packages/website/public/favicon.ico
rename to apps/website/public/favicon.ico
diff --git a/packages/website/public/favicon.png b/apps/website/public/favicon.png
similarity index 100%
rename from packages/website/public/favicon.png
rename to apps/website/public/favicon.png
diff --git a/packages/website/public/images/1folder1series.gif b/apps/website/public/images/1folder1series.gif
similarity index 100%
rename from packages/website/public/images/1folder1series.gif
rename to apps/website/public/images/1folder1series.gif
diff --git a/packages/website/public/images/chunky-reader-logo.png b/apps/website/public/images/chunky-reader-logo.png
similarity index 100%
rename from packages/website/public/images/chunky-reader-logo.png
rename to apps/website/public/images/chunky-reader-logo.png
diff --git a/packages/website/public/images/kybook-logo.png b/apps/website/public/images/kybook-logo.png
similarity index 100%
rename from packages/website/public/images/kybook-logo.png
rename to apps/website/public/images/kybook-logo.png
diff --git a/packages/website/public/images/moon-reader-logo.png b/apps/website/public/images/moon-reader-logo.png
similarity index 100%
rename from packages/website/public/images/moon-reader-logo.png
rename to apps/website/public/images/moon-reader-logo.png
diff --git a/packages/website/public/images/panels/iphone-12--black-compressed.png b/apps/website/public/images/panels/iphone-12--black-compressed.png
similarity index 100%
rename from packages/website/public/images/panels/iphone-12--black-compressed.png
rename to apps/website/public/images/panels/iphone-12--black-compressed.png
diff --git a/packages/website/public/images/panels/iphone-12--black.png b/apps/website/public/images/panels/iphone-12--black.png
similarity index 100%
rename from packages/website/public/images/panels/iphone-12--black.png
rename to apps/website/public/images/panels/iphone-12--black.png
diff --git a/packages/website/public/images/panels/iphone-12--black@2x.png b/apps/website/public/images/panels/iphone-12--black@2x.png
similarity index 100%
rename from packages/website/public/images/panels/iphone-12--black@2x.png
rename to apps/website/public/images/panels/iphone-12--black@2x.png
diff --git a/packages/website/public/images/panels/panels-logo--black-text.jpg b/apps/website/public/images/panels/panels-logo--black-text.jpg
similarity index 100%
rename from packages/website/public/images/panels/panels-logo--black-text.jpg
rename to apps/website/public/images/panels/panels-logo--black-text.jpg
diff --git a/packages/website/public/images/panels/panels-logo--black.png b/apps/website/public/images/panels/panels-logo--black.png
similarity index 100%
rename from packages/website/public/images/panels/panels-logo--black.png
rename to apps/website/public/images/panels/panels-logo--black.png
diff --git a/packages/website/public/images/panels/panels-logo--white-text.jpeg b/apps/website/public/images/panels/panels-logo--white-text.jpeg
similarity index 100%
rename from packages/website/public/images/panels/panels-logo--white-text.jpeg
rename to apps/website/public/images/panels/panels-logo--white-text.jpeg
diff --git a/packages/website/public/images/panels/panels-logo--white.png b/apps/website/public/images/panels/panels-logo--white.png
similarity index 100%
rename from packages/website/public/images/panels/panels-logo--white.png
rename to apps/website/public/images/panels/panels-logo--white.png
diff --git a/packages/website/public/images/pixel-5--TODO.png b/apps/website/public/images/pixel-5--TODO.png
similarity index 100%
rename from packages/website/public/images/pixel-5--TODO.png
rename to apps/website/public/images/pixel-5--TODO.png
diff --git a/packages/website/public/og.png b/apps/website/public/og.png
similarity index 100%
rename from packages/website/public/og.png
rename to apps/website/public/og.png
diff --git a/packages/website/src/components/AppPreview.tsx b/apps/website/src/components/AppPreview.tsx
similarity index 100%
rename from packages/website/src/components/AppPreview.tsx
rename to apps/website/src/components/AppPreview.tsx
diff --git a/packages/website/src/components/Footer.tsx b/apps/website/src/components/Footer.tsx
similarity index 100%
rename from packages/website/src/components/Footer.tsx
rename to apps/website/src/components/Footer.tsx
diff --git a/packages/website/src/components/Hero.tsx b/apps/website/src/components/Hero.tsx
similarity index 100%
rename from packages/website/src/components/Hero.tsx
rename to apps/website/src/components/Hero.tsx
diff --git a/packages/website/src/components/Layout.tsx b/apps/website/src/components/Layout.tsx
similarity index 100%
rename from packages/website/src/components/Layout.tsx
rename to apps/website/src/components/Layout.tsx
diff --git a/packages/website/src/components/NProgress.tsx b/apps/website/src/components/NProgress.tsx
similarity index 100%
rename from packages/website/src/components/NProgress.tsx
rename to apps/website/src/components/NProgress.tsx
diff --git a/packages/website/src/components/NavBar.tsx b/apps/website/src/components/NavBar.tsx
similarity index 100%
rename from packages/website/src/components/NavBar.tsx
rename to apps/website/src/components/NavBar.tsx
diff --git a/packages/website/src/components/ThemeToggle.tsx b/apps/website/src/components/ThemeToggle.tsx
similarity index 100%
rename from packages/website/src/components/ThemeToggle.tsx
rename to apps/website/src/components/ThemeToggle.tsx
diff --git a/packages/website/src/components/features/ComingSoon.tsx b/apps/website/src/components/features/ComingSoon.tsx
similarity index 100%
rename from packages/website/src/components/features/ComingSoon.tsx
rename to apps/website/src/components/features/ComingSoon.tsx
diff --git a/packages/website/src/components/features/Compatibility.tsx b/apps/website/src/components/features/Compatibility.tsx
similarity index 100%
rename from packages/website/src/components/features/Compatibility.tsx
rename to apps/website/src/components/features/Compatibility.tsx
diff --git a/packages/website/src/components/features/FeatureHeader.tsx b/apps/website/src/components/features/FeatureHeader.tsx
similarity index 100%
rename from packages/website/src/components/features/FeatureHeader.tsx
rename to apps/website/src/components/features/FeatureHeader.tsx
diff --git a/packages/website/src/components/features/FormatSupport.tsx b/apps/website/src/components/features/FormatSupport.tsx
similarity index 100%
rename from packages/website/src/components/features/FormatSupport.tsx
rename to apps/website/src/components/features/FormatSupport.tsx
diff --git a/packages/website/src/components/features/PhoneDemo.tsx b/apps/website/src/components/features/PhoneDemo.tsx
similarity index 100%
rename from packages/website/src/components/features/PhoneDemo.tsx
rename to apps/website/src/components/features/PhoneDemo.tsx
diff --git a/packages/website/src/components/features/index.tsx b/apps/website/src/components/features/index.tsx
similarity index 100%
rename from packages/website/src/components/features/index.tsx
rename to apps/website/src/components/features/index.tsx
diff --git a/packages/website/src/components/markdoc/Callout.tsx b/apps/website/src/components/markdoc/Callout.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/Callout.tsx
rename to apps/website/src/components/markdoc/Callout.tsx
diff --git a/packages/website/src/components/markdoc/Code.tsx b/apps/website/src/components/markdoc/Code.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/Code.tsx
rename to apps/website/src/components/markdoc/Code.tsx
diff --git a/packages/website/src/components/markdoc/Heading.tsx b/apps/website/src/components/markdoc/Heading.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/Heading.tsx
rename to apps/website/src/components/markdoc/Heading.tsx
diff --git a/packages/website/src/components/markdoc/List.tsx b/apps/website/src/components/markdoc/List.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/List.tsx
rename to apps/website/src/components/markdoc/List.tsx
diff --git a/packages/website/src/components/markdoc/Section.tsx b/apps/website/src/components/markdoc/Section.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/Section.tsx
rename to apps/website/src/components/markdoc/Section.tsx
diff --git a/packages/website/src/components/markdoc/Sidebar.tsx b/apps/website/src/components/markdoc/Sidebar.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/Sidebar.tsx
rename to apps/website/src/components/markdoc/Sidebar.tsx
diff --git a/packages/website/src/components/markdoc/Table.tsx b/apps/website/src/components/markdoc/Table.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/Table.tsx
rename to apps/website/src/components/markdoc/Table.tsx
diff --git a/packages/website/src/components/markdoc/TableOfContents.tsx b/apps/website/src/components/markdoc/TableOfContents.tsx
similarity index 100%
rename from packages/website/src/components/markdoc/TableOfContents.tsx
rename to apps/website/src/components/markdoc/TableOfContents.tsx
diff --git a/packages/website/src/components/markdoc/sidebarItems.ts b/apps/website/src/components/markdoc/sidebarItems.ts
similarity index 100%
rename from packages/website/src/components/markdoc/sidebarItems.ts
rename to apps/website/src/components/markdoc/sidebarItems.ts
diff --git a/packages/website/src/components/ui/Button.tsx b/apps/website/src/components/ui/Button.tsx
similarity index 100%
rename from packages/website/src/components/ui/Button.tsx
rename to apps/website/src/components/ui/Button.tsx
diff --git a/packages/website/src/components/ui/ButtonOrLink.tsx b/apps/website/src/components/ui/ButtonOrLink.tsx
similarity index 100%
rename from packages/website/src/components/ui/ButtonOrLink.tsx
rename to apps/website/src/components/ui/ButtonOrLink.tsx
diff --git a/packages/website/src/components/ui/IconButton.tsx b/apps/website/src/components/ui/IconButton.tsx
similarity index 100%
rename from packages/website/src/components/ui/IconButton.tsx
rename to apps/website/src/components/ui/IconButton.tsx
diff --git a/packages/website/src/components/ui/Link.tsx b/apps/website/src/components/ui/Link.tsx
similarity index 100%
rename from packages/website/src/components/ui/Link.tsx
rename to apps/website/src/components/ui/Link.tsx
diff --git a/packages/website/src/hooks/useAnimateOnInView.ts b/apps/website/src/hooks/useAnimateOnInView.ts
similarity index 100%
rename from packages/website/src/hooks/useAnimateOnInView.ts
rename to apps/website/src/hooks/useAnimateOnInView.ts
diff --git a/packages/website/src/hooks/useIsomorphicLayoutEffect.ts b/apps/website/src/hooks/useIsomorphicLayoutEffect.ts
similarity index 100%
rename from packages/website/src/hooks/useIsomorphicLayoutEffect.ts
rename to apps/website/src/hooks/useIsomorphicLayoutEffect.ts
diff --git a/packages/website/src/hooks/useMediaQuery.ts b/apps/website/src/hooks/useMediaQuery.ts
similarity index 100%
rename from packages/website/src/hooks/useMediaQuery.ts
rename to apps/website/src/hooks/useMediaQuery.ts
diff --git a/packages/website/src/hooks/usePrevious.ts b/apps/website/src/hooks/usePrevious.ts
similarity index 100%
rename from packages/website/src/hooks/usePrevious.ts
rename to apps/website/src/hooks/usePrevious.ts
diff --git a/packages/website/src/markdoc/functions.js b/apps/website/src/markdoc/functions.js
similarity index 100%
rename from packages/website/src/markdoc/functions.js
rename to apps/website/src/markdoc/functions.js
diff --git a/packages/website/src/markdoc/nodes/fence.markdoc.js b/apps/website/src/markdoc/nodes/fence.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/nodes/fence.markdoc.js
rename to apps/website/src/markdoc/nodes/fence.markdoc.js
diff --git a/packages/website/src/markdoc/nodes/heading.markdoc.js b/apps/website/src/markdoc/nodes/heading.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/nodes/heading.markdoc.js
rename to apps/website/src/markdoc/nodes/heading.markdoc.js
diff --git a/packages/website/src/markdoc/nodes/index.js b/apps/website/src/markdoc/nodes/index.js
similarity index 100%
rename from packages/website/src/markdoc/nodes/index.js
rename to apps/website/src/markdoc/nodes/index.js
diff --git a/packages/website/src/markdoc/nodes/link.markdoc.js b/apps/website/src/markdoc/nodes/link.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/nodes/link.markdoc.js
rename to apps/website/src/markdoc/nodes/link.markdoc.js
diff --git a/packages/website/src/markdoc/nodes/list.markdoc.js b/apps/website/src/markdoc/nodes/list.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/nodes/list.markdoc.js
rename to apps/website/src/markdoc/nodes/list.markdoc.js
diff --git a/packages/website/src/markdoc/nodes/table.markdoc.js b/apps/website/src/markdoc/nodes/table.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/nodes/table.markdoc.js
rename to apps/website/src/markdoc/nodes/table.markdoc.js
diff --git a/packages/website/src/markdoc/tags/callout.markdoc.js b/apps/website/src/markdoc/tags/callout.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/tags/callout.markdoc.js
rename to apps/website/src/markdoc/tags/callout.markdoc.js
diff --git a/packages/website/src/markdoc/tags/code.markdoc.js b/apps/website/src/markdoc/tags/code.markdoc.js
similarity index 100%
rename from packages/website/src/markdoc/tags/code.markdoc.js
rename to apps/website/src/markdoc/tags/code.markdoc.js
diff --git a/packages/website/src/markdoc/tags/index.js b/apps/website/src/markdoc/tags/index.js
similarity index 100%
rename from packages/website/src/markdoc/tags/index.js
rename to apps/website/src/markdoc/tags/index.js
diff --git a/packages/website/src/pages/_app.tsx b/apps/website/src/pages/_app.tsx
similarity index 100%
rename from packages/website/src/pages/_app.tsx
rename to apps/website/src/pages/_app.tsx
diff --git a/packages/website/src/pages/_document.tsx b/apps/website/src/pages/_document.tsx
similarity index 100%
rename from packages/website/src/pages/_document.tsx
rename to apps/website/src/pages/_document.tsx
diff --git a/packages/website/src/pages/contributing.md b/apps/website/src/pages/contributing.md
similarity index 100%
rename from packages/website/src/pages/contributing.md
rename to apps/website/src/pages/contributing.md
diff --git a/packages/website/src/pages/faq.md b/apps/website/src/pages/faq.md
similarity index 100%
rename from packages/website/src/pages/faq.md
rename to apps/website/src/pages/faq.md
diff --git a/packages/website/src/pages/guides/configuration.md b/apps/website/src/pages/guides/configuration.md
similarity index 100%
rename from packages/website/src/pages/guides/configuration.md
rename to apps/website/src/pages/guides/configuration.md
diff --git a/packages/website/src/pages/guides/docker-examples.md b/apps/website/src/pages/guides/docker-examples.md
similarity index 100%
rename from packages/website/src/pages/guides/docker-examples.md
rename to apps/website/src/pages/guides/docker-examples.md
diff --git a/packages/website/src/pages/guides/fs-scanning.md b/apps/website/src/pages/guides/fs-scanning.md
similarity index 100%
rename from packages/website/src/pages/guides/fs-scanning.md
rename to apps/website/src/pages/guides/fs-scanning.md
diff --git a/packages/website/src/pages/guides/full-text-search.md b/apps/website/src/pages/guides/full-text-search.md
similarity index 100%
rename from packages/website/src/pages/guides/full-text-search.md
rename to apps/website/src/pages/guides/full-text-search.md
diff --git a/apps/website/src/pages/guides/index.md b/apps/website/src/pages/guides/index.md
new file mode 100644
index 000000000..8a66cb570
--- /dev/null
+++ b/apps/website/src/pages/guides/index.md
@@ -0,0 +1,23 @@
+# An Introduction to Stump
+
+## What is Stump?
+
+Stump is an open source, self hostable, media server for your comic books, manga, and other digital books. It is designed to be _easy to use_ and _easy to deploy_.
+
+The short on how it works:
+
+- Install and run Stump on a computer or NAS (Network Attached Storage).
+- Configure your libraries (i.e. _where your media lives_), and Stump will take care of the rest.
+- To read your media, you can use the web interface or any compatible client.
+
+## What isn't Stump?
+
+Stump **is not** a tool used for fetching or downloading any kind of media. It is a tool used to host and access **your own media**. You may think of it like a Plex server for your comic books/manga/etc. If you are unfamiliar with Plex, you can think of Stump as a personal Netflix, for comic books/manga/etc, that lives on a computer in your home (like a NAS).
+
+## What's compatibility like?
+
+Stump works on all major browsers and operating systems.
+
+The hardware requirements vary and should serve **only as a guide**. Generally speaking, 1GB of RAM and disk space is more than enough. Stump also runs well on low-powered ARM-based single board computers, such as a Raspberry Pi (I personally host a Stump server on a Pi 4).
+
+TODO
diff --git a/packages/website/src/pages/guides/libraries.md b/apps/website/src/pages/guides/libraries.md
similarity index 100%
rename from packages/website/src/pages/guides/libraries.md
rename to apps/website/src/pages/guides/libraries.md
diff --git a/packages/website/src/pages/guides/opds-clients.md b/apps/website/src/pages/guides/opds-clients.md
similarity index 100%
rename from packages/website/src/pages/guides/opds-clients.md
rename to apps/website/src/pages/guides/opds-clients.md
diff --git a/packages/website/src/pages/guides/read-progress.md b/apps/website/src/pages/guides/read-progress.md
similarity index 100%
rename from packages/website/src/pages/guides/read-progress.md
rename to apps/website/src/pages/guides/read-progress.md
diff --git a/packages/website/src/pages/guides/rest-api.md b/apps/website/src/pages/guides/rest-api.md
similarity index 57%
rename from packages/website/src/pages/guides/rest-api.md
rename to apps/website/src/pages/guides/rest-api.md
index bf7cf8f87..4a86fc591 100644
--- a/packages/website/src/pages/guides/rest-api.md
+++ b/apps/website/src/pages/guides/rest-api.md
@@ -1,10 +1,6 @@
# Stump's REST API
-Stump exposes a REST API that allows you to interact with your Stump server.
-
-{% callout title="Note" icon="warning" %}
-There is currently no official documentation for the REST API. However, this is an extremely important item on the roadmap and will be available before the first beta release.
-{% /callout %}
+Stump exposes a REST API that allows you to interact with your Stump server. If you already have your Stump server set up, you can view the API documentation by visiting `http(s)://your-server(:10801)/api/rapidoc`
## Authentication
diff --git a/packages/website/src/pages/guides/series.md b/apps/website/src/pages/guides/series.md
similarity index 100%
rename from packages/website/src/pages/guides/series.md
rename to apps/website/src/pages/guides/series.md
diff --git a/packages/website/src/pages/guides/tachiyomi.md b/apps/website/src/pages/guides/tachiyomi.md
similarity index 100%
rename from packages/website/src/pages/guides/tachiyomi.md
rename to apps/website/src/pages/guides/tachiyomi.md
diff --git a/packages/website/src/pages/guides/user-accounts.md b/apps/website/src/pages/guides/user-accounts.md
similarity index 100%
rename from packages/website/src/pages/guides/user-accounts.md
rename to apps/website/src/pages/guides/user-accounts.md
diff --git a/packages/website/src/pages/guides/web-ui.md b/apps/website/src/pages/guides/web-ui.md
similarity index 100%
rename from packages/website/src/pages/guides/web-ui.md
rename to apps/website/src/pages/guides/web-ui.md
diff --git a/packages/website/src/pages/index.tsx b/apps/website/src/pages/index.tsx
similarity index 100%
rename from packages/website/src/pages/index.tsx
rename to apps/website/src/pages/index.tsx
diff --git a/packages/website/src/pages/installation/docker.md b/apps/website/src/pages/installation/docker.md
similarity index 100%
rename from packages/website/src/pages/installation/docker.md
rename to apps/website/src/pages/installation/docker.md
diff --git a/packages/website/src/pages/installation/executable.md b/apps/website/src/pages/installation/executable.md
similarity index 100%
rename from packages/website/src/pages/installation/executable.md
rename to apps/website/src/pages/installation/executable.md
diff --git a/packages/website/src/pages/installation/index.md b/apps/website/src/pages/installation/index.md
similarity index 100%
rename from packages/website/src/pages/installation/index.md
rename to apps/website/src/pages/installation/index.md
diff --git a/packages/website/src/pages/test.md b/apps/website/src/pages/test.md
similarity index 100%
rename from packages/website/src/pages/test.md
rename to apps/website/src/pages/test.md
diff --git a/packages/website/src/styles/darcula.css b/apps/website/src/styles/darcula.css
similarity index 100%
rename from packages/website/src/styles/darcula.css
rename to apps/website/src/styles/darcula.css
diff --git a/packages/website/src/styles/globals.css b/apps/website/src/styles/globals.css
similarity index 100%
rename from packages/website/src/styles/globals.css
rename to apps/website/src/styles/globals.css
diff --git a/packages/website/src/styles/markdown.css b/apps/website/src/styles/markdown.css
similarity index 100%
rename from packages/website/src/styles/markdown.css
rename to apps/website/src/styles/markdown.css
diff --git a/packages/website/tailwind.config.js b/apps/website/tailwind.config.js
similarity index 100%
rename from packages/website/tailwind.config.js
rename to apps/website/tailwind.config.js
diff --git a/packages/website/tsconfig.json b/apps/website/tsconfig.json
similarity index 100%
rename from packages/website/tsconfig.json
rename to apps/website/tsconfig.json
diff --git a/packages/website/vercel.json b/apps/website/vercel.json
similarity index 100%
rename from packages/website/vercel.json
rename to apps/website/vercel.json
diff --git a/packages/core/server/.rustfmt.toml b/core/.rustfmt.toml
similarity index 100%
rename from packages/core/server/.rustfmt.toml
rename to core/.rustfmt.toml
diff --git a/packages/core/server/Cargo.lock b/core/Cargo.lock
similarity index 100%
rename from packages/core/server/Cargo.lock
rename to core/Cargo.lock
diff --git a/packages/core/server/Cargo.toml b/core/Cargo.toml
similarity index 75%
rename from packages/core/server/Cargo.toml
rename to core/Cargo.toml
index 6f0fb643b..297662b7d 100644
--- a/packages/core/server/Cargo.toml
+++ b/core/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "stump"
-version = "0.1.0"
+version = "0.0.1"
edition = "2021"
default-run = "stump"
@@ -35,10 +35,6 @@ cuid = "1.2.0"
webp = "0.2.2"
image = "0.24.2"
include_dir = "0.7.2"
-# TODO: make this *NOT* bundled in release, not necessary. I guess I would have to feature
-# gate it? but that is just kinda annoying. Since I am pushing this feature off for now,
-# hopefully the PR branch I am pointing to is merged, as well.
-# rocket_okapi = { git = "https://github.com/ThouCheese/okapi", branch = "feat/rocket0.5-rc.2", features = ["rapidoc", "swagger"] }
rocket_okapi = { version = "0.8.0-rc.2", features = ["rapidoc", "swagger"] }
schemars = "0.8.10"
fern = "0.6.1"
diff --git a/core/README.md b/core/README.md
new file mode 100644
index 000000000..b16f4c871
--- /dev/null
+++ b/core/README.md
@@ -0,0 +1 @@
+TODO: explain scripts and other basic information about this workspace
diff --git a/packages/core/server/Rocket.toml b/core/Rocket.toml
similarity index 100%
rename from packages/core/server/Rocket.toml
rename to core/Rocket.toml
diff --git a/core/package.json b/core/package.json
new file mode 100644
index 000000000..1f8fe4831
--- /dev/null
+++ b/core/package.json
@@ -0,0 +1,17 @@
+{
+ "name": "@stump/core",
+ "version": "0.0.1",
+ "description": "",
+ "keywords": [],
+ "license": "MIT",
+ "scripts": {
+ "setup": "cargo prisma generate && pnpm get-client",
+ "start": "cargo run --release",
+ "dev": "cargo watch -x run",
+ "build": "pnpm get-client && cargo build --release && pnpm move-client && pnpm move-rocket",
+ "get-client": "trash ./client && move-cli ../apps/client/build ./client",
+ "move-client": "trash ../target/release/client && cp -r ./client ../target/release/client",
+ "move-rocket": "trash ../target/release/Rocket.toml && cp ./Rocket.toml ../target/release/Rocket.toml",
+ "fmt": "cargo fmt --all --manifest-path=./Cargo.toml --"
+ }
+}
\ No newline at end of file
diff --git a/packages/core/server/prisma-cli/Cargo.toml b/core/prisma-cli/Cargo.toml
similarity index 100%
rename from packages/core/server/prisma-cli/Cargo.toml
rename to core/prisma-cli/Cargo.toml
diff --git a/packages/core/server/prisma-cli/src/main.rs b/core/prisma-cli/src/main.rs
similarity index 100%
rename from packages/core/server/prisma-cli/src/main.rs
rename to core/prisma-cli/src/main.rs
diff --git a/packages/core/server/prisma/migrations/20220526164945_/migration.sql b/core/prisma/migrations/20220526164945_/migration.sql
similarity index 100%
rename from packages/core/server/prisma/migrations/20220526164945_/migration.sql
rename to core/prisma/migrations/20220526164945_/migration.sql
diff --git a/packages/core/server/prisma/migrations/migration_lock.toml b/core/prisma/migrations/migration_lock.toml
similarity index 100%
rename from packages/core/server/prisma/migrations/migration_lock.toml
rename to core/prisma/migrations/migration_lock.toml
diff --git a/packages/core/server/prisma/migrations/migrations.sql b/core/prisma/migrations/migrations.sql
similarity index 100%
rename from packages/core/server/prisma/migrations/migrations.sql
rename to core/prisma/migrations/migrations.sql
diff --git a/packages/core/server/prisma/schema.prisma b/core/prisma/schema.prisma
similarity index 100%
rename from packages/core/server/prisma/schema.prisma
rename to core/prisma/schema.prisma
diff --git a/packages/core/server/src/config/context.rs b/core/src/config/context.rs
similarity index 100%
rename from packages/core/server/src/config/context.rs
rename to core/src/config/context.rs
diff --git a/packages/core/server/src/config/cors.rs b/core/src/config/cors.rs
similarity index 100%
rename from packages/core/server/src/config/cors.rs
rename to core/src/config/cors.rs
diff --git a/packages/core/server/src/config/env.rs b/core/src/config/env.rs
similarity index 100%
rename from packages/core/server/src/config/env.rs
rename to core/src/config/env.rs
diff --git a/packages/core/server/src/config/helmet.rs b/core/src/config/helmet.rs
similarity index 100%
rename from packages/core/server/src/config/helmet.rs
rename to core/src/config/helmet.rs
diff --git a/packages/core/server/src/config/logging.rs b/core/src/config/logging.rs
similarity index 100%
rename from packages/core/server/src/config/logging.rs
rename to core/src/config/logging.rs
diff --git a/packages/core/server/src/config/mod.rs b/core/src/config/mod.rs
similarity index 100%
rename from packages/core/server/src/config/mod.rs
rename to core/src/config/mod.rs
diff --git a/packages/core/server/src/config/session.rs b/core/src/config/session.rs
similarity index 100%
rename from packages/core/server/src/config/session.rs
rename to core/src/config/session.rs
diff --git a/packages/core/server/src/db/migration.rs b/core/src/db/migration.rs
similarity index 100%
rename from packages/core/server/src/db/migration.rs
rename to core/src/db/migration.rs
diff --git a/packages/core/server/src/db/mod.rs b/core/src/db/mod.rs
similarity index 100%
rename from packages/core/server/src/db/mod.rs
rename to core/src/db/mod.rs
diff --git a/packages/core/server/src/fs/checksum.rs b/core/src/fs/checksum.rs
similarity index 100%
rename from packages/core/server/src/fs/checksum.rs
rename to core/src/fs/checksum.rs
diff --git a/packages/core/server/src/fs/epub.rs b/core/src/fs/epub.rs
similarity index 100%
rename from packages/core/server/src/fs/epub.rs
rename to core/src/fs/epub.rs
diff --git a/packages/core/server/src/fs/media_file.rs b/core/src/fs/media_file.rs
similarity index 100%
rename from packages/core/server/src/fs/media_file.rs
rename to core/src/fs/media_file.rs
diff --git a/packages/core/server/src/fs/mod.rs b/core/src/fs/mod.rs
similarity index 100%
rename from packages/core/server/src/fs/mod.rs
rename to core/src/fs/mod.rs
diff --git a/packages/core/server/src/fs/pdf.rs b/core/src/fs/pdf.rs
similarity index 100%
rename from packages/core/server/src/fs/pdf.rs
rename to core/src/fs/pdf.rs
diff --git a/packages/core/server/src/fs/rar.rs b/core/src/fs/rar.rs
similarity index 100%
rename from packages/core/server/src/fs/rar.rs
rename to core/src/fs/rar.rs
diff --git a/packages/core/server/src/fs/scanner/library.rs b/core/src/fs/scanner/library.rs
similarity index 100%
rename from packages/core/server/src/fs/scanner/library.rs
rename to core/src/fs/scanner/library.rs
diff --git a/packages/core/server/src/fs/scanner/mod.rs b/core/src/fs/scanner/mod.rs
similarity index 100%
rename from packages/core/server/src/fs/scanner/mod.rs
rename to core/src/fs/scanner/mod.rs
diff --git a/packages/core/server/src/fs/scanner/utils.rs b/core/src/fs/scanner/utils.rs
similarity index 100%
rename from packages/core/server/src/fs/scanner/utils.rs
rename to core/src/fs/scanner/utils.rs
diff --git a/packages/core/server/src/fs/zip.rs b/core/src/fs/zip.rs
similarity index 100%
rename from packages/core/server/src/fs/zip.rs
rename to core/src/fs/zip.rs
diff --git a/packages/core/server/src/guards/auth.rs b/core/src/guards/auth.rs
similarity index 100%
rename from packages/core/server/src/guards/auth.rs
rename to core/src/guards/auth.rs
diff --git a/packages/core/server/src/guards/mod.rs b/core/src/guards/mod.rs
similarity index 100%
rename from packages/core/server/src/guards/mod.rs
rename to core/src/guards/mod.rs
diff --git a/packages/core/server/src/guards/request.rs b/core/src/guards/request.rs
similarity index 100%
rename from packages/core/server/src/guards/request.rs
rename to core/src/guards/request.rs
diff --git a/packages/core/server/src/job/jobs.rs b/core/src/job/jobs.rs
similarity index 100%
rename from packages/core/server/src/job/jobs.rs
rename to core/src/job/jobs.rs
diff --git a/packages/core/server/src/job/library.rs b/core/src/job/library.rs
similarity index 100%
rename from packages/core/server/src/job/library.rs
rename to core/src/job/library.rs
diff --git a/packages/core/server/src/job/mod.rs b/core/src/job/mod.rs
similarity index 100%
rename from packages/core/server/src/job/mod.rs
rename to core/src/job/mod.rs
diff --git a/packages/core/server/src/job/runner.rs b/core/src/job/runner.rs
similarity index 100%
rename from packages/core/server/src/job/runner.rs
rename to core/src/job/runner.rs
diff --git a/packages/core/server/src/main.rs b/core/src/main.rs
similarity index 100%
rename from packages/core/server/src/main.rs
rename to core/src/main.rs
diff --git a/packages/core/server/src/opds/author.rs b/core/src/opds/author.rs
similarity index 100%
rename from packages/core/server/src/opds/author.rs
rename to core/src/opds/author.rs
diff --git a/packages/core/server/src/opds/entry.rs b/core/src/opds/entry.rs
similarity index 100%
rename from packages/core/server/src/opds/entry.rs
rename to core/src/opds/entry.rs
diff --git a/packages/core/server/src/opds/feed.rs b/core/src/opds/feed.rs
similarity index 100%
rename from packages/core/server/src/opds/feed.rs
rename to core/src/opds/feed.rs
diff --git a/packages/core/server/src/opds/link.rs b/core/src/opds/link.rs
similarity index 100%
rename from packages/core/server/src/opds/link.rs
rename to core/src/opds/link.rs
diff --git a/packages/core/server/src/opds/mod.rs b/core/src/opds/mod.rs
similarity index 100%
rename from packages/core/server/src/opds/mod.rs
rename to core/src/opds/mod.rs
diff --git a/packages/core/server/src/opds/models.rs b/core/src/opds/models.rs
similarity index 100%
rename from packages/core/server/src/opds/models.rs
rename to core/src/opds/models.rs
diff --git a/packages/core/server/src/opds/opensearch.rs b/core/src/opds/opensearch.rs
similarity index 100%
rename from packages/core/server/src/opds/opensearch.rs
rename to core/src/opds/opensearch.rs
diff --git a/packages/core/server/src/opds/util.rs b/core/src/opds/util.rs
similarity index 100%
rename from packages/core/server/src/opds/util.rs
rename to core/src/opds/util.rs
diff --git a/packages/core/server/src/routes/api/auth.rs b/core/src/routes/api/auth.rs
similarity index 100%
rename from packages/core/server/src/routes/api/auth.rs
rename to core/src/routes/api/auth.rs
diff --git a/packages/core/server/src/routes/api/epub.rs b/core/src/routes/api/epub.rs
similarity index 100%
rename from packages/core/server/src/routes/api/epub.rs
rename to core/src/routes/api/epub.rs
diff --git a/packages/core/server/src/routes/api/filesystem.rs b/core/src/routes/api/filesystem.rs
similarity index 100%
rename from packages/core/server/src/routes/api/filesystem.rs
rename to core/src/routes/api/filesystem.rs
diff --git a/packages/core/server/src/routes/api/job.rs b/core/src/routes/api/job.rs
similarity index 100%
rename from packages/core/server/src/routes/api/job.rs
rename to core/src/routes/api/job.rs
diff --git a/packages/core/server/src/routes/api/library.rs b/core/src/routes/api/library.rs
similarity index 100%
rename from packages/core/server/src/routes/api/library.rs
rename to core/src/routes/api/library.rs
diff --git a/packages/core/server/src/routes/api/log.rs b/core/src/routes/api/log.rs
similarity index 100%
rename from packages/core/server/src/routes/api/log.rs
rename to core/src/routes/api/log.rs
diff --git a/packages/core/server/src/routes/api/media.rs b/core/src/routes/api/media.rs
similarity index 100%
rename from packages/core/server/src/routes/api/media.rs
rename to core/src/routes/api/media.rs
diff --git a/packages/core/server/src/routes/api/mod.rs b/core/src/routes/api/mod.rs
similarity index 100%
rename from packages/core/server/src/routes/api/mod.rs
rename to core/src/routes/api/mod.rs
diff --git a/packages/core/server/src/routes/api/series.rs b/core/src/routes/api/series.rs
similarity index 100%
rename from packages/core/server/src/routes/api/series.rs
rename to core/src/routes/api/series.rs
diff --git a/packages/core/server/src/routes/api/tag.rs b/core/src/routes/api/tag.rs
similarity index 100%
rename from packages/core/server/src/routes/api/tag.rs
rename to core/src/routes/api/tag.rs
diff --git a/packages/core/server/src/routes/api/user.rs b/core/src/routes/api/user.rs
similarity index 100%
rename from packages/core/server/src/routes/api/user.rs
rename to core/src/routes/api/user.rs
diff --git a/packages/core/server/src/routes/mod.rs b/core/src/routes/mod.rs
similarity index 100%
rename from packages/core/server/src/routes/mod.rs
rename to core/src/routes/mod.rs
diff --git a/packages/core/server/src/routes/opds.rs b/core/src/routes/opds.rs
similarity index 100%
rename from packages/core/server/src/routes/opds.rs
rename to core/src/routes/opds.rs
diff --git a/packages/core/server/src/types/alias.rs b/core/src/types/alias.rs
similarity index 100%
rename from packages/core/server/src/types/alias.rs
rename to core/src/types/alias.rs
diff --git a/packages/core/server/src/types/enums.rs b/core/src/types/enums.rs
similarity index 100%
rename from packages/core/server/src/types/enums.rs
rename to core/src/types/enums.rs
diff --git a/packages/core/server/src/types/errors.rs b/core/src/types/errors.rs
similarity index 100%
rename from packages/core/server/src/types/errors.rs
rename to core/src/types/errors.rs
diff --git a/packages/core/server/src/types/event.rs b/core/src/types/event.rs
similarity index 100%
rename from packages/core/server/src/types/event.rs
rename to core/src/types/event.rs
diff --git a/packages/core/server/src/types/http.rs b/core/src/types/http.rs
similarity index 100%
rename from packages/core/server/src/types/http.rs
rename to core/src/types/http.rs
diff --git a/packages/core/server/src/types/mod.rs b/core/src/types/mod.rs
similarity index 100%
rename from packages/core/server/src/types/mod.rs
rename to core/src/types/mod.rs
diff --git a/packages/core/server/src/types/models/epub.rs b/core/src/types/models/epub.rs
similarity index 100%
rename from packages/core/server/src/types/models/epub.rs
rename to core/src/types/models/epub.rs
diff --git a/packages/core/server/src/types/models/library.rs b/core/src/types/models/library.rs
similarity index 100%
rename from packages/core/server/src/types/models/library.rs
rename to core/src/types/models/library.rs
diff --git a/packages/core/server/src/types/models/list_directory.rs b/core/src/types/models/list_directory.rs
similarity index 100%
rename from packages/core/server/src/types/models/list_directory.rs
rename to core/src/types/models/list_directory.rs
diff --git a/packages/core/server/src/types/models/log.rs b/core/src/types/models/log.rs
similarity index 100%
rename from packages/core/server/src/types/models/log.rs
rename to core/src/types/models/log.rs
diff --git a/packages/core/server/src/types/models/media.rs b/core/src/types/models/media.rs
similarity index 100%
rename from packages/core/server/src/types/models/media.rs
rename to core/src/types/models/media.rs
diff --git a/packages/core/server/src/types/models/mod.rs b/core/src/types/models/mod.rs
similarity index 100%
rename from packages/core/server/src/types/models/mod.rs
rename to core/src/types/models/mod.rs
diff --git a/packages/core/server/src/types/models/read_progress.rs b/core/src/types/models/read_progress.rs
similarity index 100%
rename from packages/core/server/src/types/models/read_progress.rs
rename to core/src/types/models/read_progress.rs
diff --git a/packages/core/server/src/types/models/series.rs b/core/src/types/models/series.rs
similarity index 100%
rename from packages/core/server/src/types/models/series.rs
rename to core/src/types/models/series.rs
diff --git a/packages/core/server/src/types/models/tag.rs b/core/src/types/models/tag.rs
similarity index 100%
rename from packages/core/server/src/types/models/tag.rs
rename to core/src/types/models/tag.rs
diff --git a/packages/core/server/src/types/models/user.rs b/core/src/types/models/user.rs
similarity index 100%
rename from packages/core/server/src/types/models/user.rs
rename to core/src/types/models/user.rs
diff --git a/packages/core/server/src/types/pageable.rs b/core/src/types/pageable.rs
similarity index 100%
rename from packages/core/server/src/types/pageable.rs
rename to core/src/types/pageable.rs
diff --git a/packages/core/server/src/utils/auth.rs b/core/src/utils/auth.rs
similarity index 100%
rename from packages/core/server/src/utils/auth.rs
rename to core/src/utils/auth.rs
diff --git a/packages/core/server/src/utils/event.rs b/core/src/utils/event.rs
similarity index 100%
rename from packages/core/server/src/utils/event.rs
rename to core/src/utils/event.rs
diff --git a/packages/core/server/src/utils/mod.rs b/core/src/utils/mod.rs
similarity index 100%
rename from packages/core/server/src/utils/mod.rs
rename to core/src/utils/mod.rs
diff --git a/packages/core/server/src/utils/webp.rs b/core/src/utils/webp.rs
similarity index 100%
rename from packages/core/server/src/utils/webp.rs
rename to core/src/utils/webp.rs
diff --git a/package.json b/package.json
index a95f633b0..2b2915a3e 100644
--- a/package.json
+++ b/package.json
@@ -1,28 +1,35 @@
{
"name": "@stump/monorepo",
- "version": "1.0.0",
+ "version": "0.0.1",
"repository": "https://github.com/aaronleopold/stump.git",
"author": "Aaron Leopold ",
"license": "MIT",
"scripts": {
- "setup": "pnpm i && pnpm core run setup",
- "website": "pnpm --filter @stump/website --",
+ "setup": "pnpm i && pnpm client build && pnpm core run setup",
+ "start": "pnpm core start",
+ "dev": "concurrently -n core,client -c green.bold,blue.bold \"pnpm core dev\" \"pnpm client dev\"",
"core": "pnpm --filter @stump/core --",
"prisma": "pnpm core prisma",
+ "client": "pnpm --filter @stump/client --",
+ "website": "pnpm --filter @stump/website --",
"prepare": "husky install",
- "unimported": "npx unimported ./packages/core/frontend"
+ "build": "pnpm client build && pnpm core build",
+ "build:docker": "docker build -t stump ."
},
"devDependencies": {
"husky": "^7.0.2",
"lint-staged": "^12.4.2",
- "prettier": "^2.6.2"
+ "prettier": "^2.6.2",
+ "concurrently": "^6.5.1",
+ "move-cli": "2.0.0",
+ "trash-cli": "^5.0.0"
},
"lint-staged": {
"*.{js,jsx,ts,tsx,md}": [
"prettier --write"
],
".rs": [
- "cargo fmt --manifest-path=core/server/Cargo.toml --"
+ "cargo fmt --manifest-path=core/Cargo.toml --"
]
}
}
\ No newline at end of file
diff --git a/packages/core/package.json b/packages/core/package.json
deleted file mode 100644
index 657163b35..000000000
--- a/packages/core/package.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "name": "@stump/core",
- "version": "1.0.0",
- "repository": "https://github.com/aaronleopold/stump.git",
- "author": "Aaron Leopold ",
- "license": "MIT",
- "scripts": {
- "start": "cd server && cargo run --release",
- "setup": "pnpm frontend:build && pnpm server:setup",
- "dev": "concurrently -n server,frontend -c green.bold,blue.bold \"pnpm server:dev\" \"pnpm frontend:dev\"",
- "build": "pnpm frontend:build && pnpm server:build && pnpm build:move-client && pnpm build:move-rocket",
- "build:move-client": "trash ../../target/release/client && cp -r ./server/client ../../target/release/client",
- "build:move-rocket": "trash ../../target/release/Rocket.toml && cp ./server/Rocket.toml ../../target/release/Rocket.toml",
- "build:docker": "docker build -t stump .",
- "server:setup": "pnpm prisma generate",
- "server:start": "cd server && cargo run",
- "server:dev": "cd server && cargo watch -x run",
- "server:build": "cd server && cargo build --release",
- "server:check": "cargo check",
- "server:fmt": "cargo fmt --all --manifest-path=server/Cargo.toml",
- "frontend": "pnpm --filter frontend --",
- "frontend:start": "pnpm frontend start",
- "frontend:dev": "pnpm frontend dev",
- "frontend:move-build": "trash ./server/client && move-cli ./frontend/build ./server/client",
- "frontend:build": "pnpm frontend build && pnpm frontend:move-build",
- "prisma": "cd server && cargo prisma",
- "prisma:generate": "pnpm prisma generate",
- "prisma:db-push": "pnpm prisma db push",
- "prisma:db-trash": "trash ./server/prisma/dev.db",
- "seed": "pnpm prisma:db-trash && pnpm prisma:db-push && cd server && cargo seed"
- },
- "devDependencies": {
- "concurrently": "^6.5.1",
- "move-cli": "2.0.0",
- "trash-cli": "^5.0.0"
- }
-}
\ No newline at end of file
diff --git a/packages/website/netlify.toml b/packages/website/netlify.toml
deleted file mode 100644
index fde1b8111..000000000
--- a/packages/website/netlify.toml
+++ /dev/null
@@ -1,10 +0,0 @@
-# https://github.com/netlify/netlify-plugin-nextjs/blob/main/docs/redirects-rewrites.md
-# [[redirects]]
-# from = "/*"
-# to = "/index.html"
-# status = 200
-[build]
-publish = ".next"
-
-[[plugins]]
-package = "@netlify/plugin-nextjs"
\ No newline at end of file
diff --git a/packages/website/src/pages/guides/index.md b/packages/website/src/pages/guides/index.md
deleted file mode 100644
index cfb95ab43..000000000
--- a/packages/website/src/pages/guides/index.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# What is Stump?
-
-## An introduction to Stump
-
-Stump is an open source, self hostable, media server for your comic books, manga, and other digital media. It is designed to be easy to use and easy to deploy.
-
-The short on how it works:
-
-- Install and run Stump on a computer or NAS (Network Attached Storage).
-- Configure your libraries (i.e. _where your media lives_), and Stump will take care of the rest.
-- To read your media, you can use the web interface or any compatible client.
-
-## What's compatibility like?
-
-TODO
-
-| Tables | Are | Cool |
-| -------- | :-----------: | ----: |
-| col 1 is | left-aligned | $1600 |
-| col 2 is | centered | $12 |
-| col 3 is | right-aligned | $1 |
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 715456278..586658615 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -4,25 +4,21 @@ importers:
.:
specifiers:
+ concurrently: ^6.5.1
husky: ^7.0.2
lint-staged: ^12.4.2
- prettier: ^2.6.2
- devDependencies:
- husky: 7.0.4
- lint-staged: 12.5.0
- prettier: 2.6.2
-
- packages/core:
- specifiers:
- concurrently: ^6.5.1
move-cli: 2.0.0
+ prettier: ^2.6.2
trash-cli: ^5.0.0
devDependencies:
concurrently: 6.5.1
+ husky: 7.0.4
+ lint-staged: 12.5.0
move-cli: 2.0.0
+ prettier: 2.6.2
trash-cli: 5.0.0
- packages/core/frontend:
+ apps/client:
specifiers:
'@chakra-ui/react': ^2.0.0
'@emotion/react': ^11.9.0
@@ -46,6 +42,7 @@ importers:
eslint: ^8.16.0
framer-motion: ^6.3.4
history: ^5.3.0
+ move-cli: 2.0.0
nprogress: ^0.2.0
phosphor-react: ^1.4.1
pluralize: ^8.0.0
@@ -64,6 +61,7 @@ importers:
react-window: ^1.8.7
tailwind-scrollbar-hide: ^1.1.7
tailwindcss: ^3.0.24
+ trash-cli: ^5.0.0
typescript: ^4.7.2
vite: ^2.9.9
vite-plugin-package-version: ^1.0.2
@@ -111,13 +109,15 @@ importers:
'@vitejs/plugin-react': 1.3.2
autoprefixer: 10.4.7_postcss@8.4.14
eslint: 8.17.0
+ move-cli: 2.0.0
postcss: 8.4.14
tailwind-scrollbar-hide: 1.1.7
tailwindcss: 3.1.2
+ trash-cli: 5.0.0
typescript: 4.7.3
vite: 2.9.12
- packages/website:
+ apps/website:
specifiers:
'@icons-pack/react-simple-icons': ^4.7.0
'@markdoc/markdoc': ^0.1.2
@@ -176,6 +176,9 @@ importers:
tailwindcss: 3.1.2
typescript: 4.6.4
+ core:
+ specifiers: {}
+
packages:
/@ampproject/remapping/2.2.0:
@@ -1765,7 +1768,7 @@ packages:
/@types/react-dom/18.0.4:
resolution: {integrity: sha512-FgTtbqPOCI3dzZPZoC2T/sx3L34qxy99ITWn4eoSA95qPyXDMH0ALoAqUp49ITniiJFsXUVBtalh/KffMpg21Q==}
dependencies:
- '@types/react': 18.0.9
+ '@types/react': 18.0.12
dev: true
/@types/react-dom/18.0.5:
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index fba653856..dc16d683a 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -1,3 +1,5 @@
packages:
- - 'packages/*'
- - 'packages/core/*'
+ # - 'packages/*'
+ # - 'packages/core/*'
+ - 'core'
+ - 'apps/*'