Commit graph

138 commits

Author SHA1 Message Date
Brendan Allan ba6b417bd7
Merge branch 'main' into eslint-overhaul 2023-01-23 01:44:28 -08:00
maxichrome 1b6b3d8a48
Add clean command (#540)
Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>
2023-01-22 22:38:52 -08:00
Brendan Allan d3737cea97 simplify eslint configs + add CI job 2023-01-22 16:01:15 +08:00
maxichrome a0975ec8c0 fix prettier unparseable file issues 2023-01-20 23:40:30 -08:00
maxichrome 10258bbb88 rm not-strictly-necessary pnpm before lefthook install 2023-01-19 20:31:35 -08:00
maxichrome cda8236de6 prefix lefthook install with pnpm because executability is broken 2023-01-19 19:58:49 -08:00
maxichrome 5e7e484753 let prettier determine its own supported types 2023-01-19 19:27:46 -08:00
maxichrome 7268495b6f install lint-staged 2023-01-19 19:19:35 -08:00
maxichrome fc2e1e3ae5 integrate lefthook precommit formatting 2023-01-19 13:08:55 -08:00
Brendan Allan c61c773147
relative imports in @sd/interface (#504) 2023-01-06 19:07:24 -08:00
Utku Bakir 959783b08a Bump node to lts (v18) 2022-12-14 12:43:02 +03:00
jake 5651ac3f69
[ENG-251] Crypto Jobs (#475)
* add base crypto job

* leave hashing to the KM and not keyslots

* add latest header object versions and update examples

* add a very experimental (local file!) encrypt job

* working file encryption with default key

* working file decryption

* non-working encrypt file dialog

* general code cleanup

* comments and correct feature locking

* fix the `Dialog`

Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>

* WIP encrypt dialog

* massive encrypt dialog overhaul

* add generic explorer alert dialog

* better key naming/numbering, alerts for unsupported scenarios

* cleanup + decrypt file dialog

* remove debugging stuff

* remove dead code & fix a bug with key select being empty

* clean up dialog UI massively

* add support for setting output path

* add correct button type to prevent early dialog submits

* add "nice" job data for encrypt/decrypt

* tweak functionality of key setting in encrypt dialog

* include full file metadata if selected, and lay out groundwork for preview media inclusion

* add comment about not restoring metadata/pvm just yet

* general cleanup

Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>
2022-12-07 15:16:13 +00:00
Brendan Allan 8007523b80 use node 16 2022-11-06 10:14:09 +08:00
Olen Latham dadbfe2833 ignore last commit derp 2022-11-05 18:05:40 +00:00
Olen Latham 862d23e2e3 looking over I think we want our @type/node to be in line with our node version requirements 2022-11-05 17:55:32 +00:00
Olen Latham f0b542f59d Updated pnpm to 7.14.0 and added .nvmrc 2022-11-05 17:34:48 +00:00
Olen Latham b82168a45a
Update package.json
Updated node version to streamline with contribution.md which calls for version 17.
2022-11-03 01:19:20 -04:00
Jamie Pine a36a30e317 merge 2022-10-20 21:55:39 -07:00
Brendan Allan ccb2617c31 add postinstall script for react-native-codegen 2022-10-17 23:42:32 +08:00
Oscar Beaumont c0b51bcd4a update rspc to version with fixed httpz rev
Main was broken because it was pulling httpz from main and I have been refactoring it.
2022-10-13 15:03:43 +08:00
Oscar Beaumont aacdf33216 merge duplicate prettier config and format repo with it 2022-10-07 07:45:15 +08:00
Oscar Beaumont 2ae02f202d Expo committed cringe 2022-10-07 04:56:59 +08:00
Oscar Beaumont 20523a94c9 upgrade workspace dependencies 2022-10-06 14:03:58 +08:00
Brendan Allan 45ff212e97 merge main into update-rspc-and-more 2022-10-05 12:01:50 +08:00
Brendan Allan a7f37f7732
Use turborepo for desktop & web apps (#399)
* add turborepo

* give docs a package.json

* tabs not spaces

* tabs not spaces
2022-10-04 18:59:28 -07:00
Jamie Pine cbd58ee438
Rename Files to Objects (#396)
* backend rename complete

* finalize Object refactor frontend
+ remove some exhaustive dep suppression
+ FIX INVALIDATE QUERY BUG
2022-10-04 09:16:49 -07:00
Brendan Allan ed06e3051e
[ENG-84] Sync library (#394)
* new sql lib stuff

* add sync stuff + rename all crates

* build sd-core

* add sync/example/dist to source

* fix sync example in monorepop

* appease clippy

* update lockfile

* update commit hooks

* fix typescript

* fix typescript build

* please rustfmt
2022-10-04 05:25:12 -07:00
Brendan Allan 786b7c9c1c db:gen in core 2022-10-04 18:42:40 +08:00
Jamie Pine 3e8c33d1c0
Added crates folder (#389)
* restructure core for crates folder

- improve naming consistency
- added placeholder files for near future code
- added docs

* - removed all typescript from core
- moved rspc bindings to client

* remove useless git ignore & rustfmt
2022-09-29 21:02:29 -07:00
Oscar Beaumont c7441d1d64
Rustify mobile (#361)
* Refactor navigation flow & types

* Remove drawer screen wrapper

* Remove DrawerItem + cleanup

* Switch to JS Stack Nav & header animations

* [WIP] Spacedrive core on Android & IOS

* Update Podfile and cleanup Contributing guide.

* Remove @sd/core from mobile

* File Modal

* Prettify File Modal & Add date-fns

* IOS subscriptions

* Update package versions

* Custom header for stack screens

* android subscriptions

* Animate Drawer button & template for Search screen

* Search header

* Fix Search icon being weird

* Merge branch 'main' into rustify-mobile

* fix rspc dep + setup script for mobile

* Less margin on header

* Move shared assets & drawer logo for mobile

* support for IOS simulator

* add type safe rspc hooks to mobile

* Cleanup PR & Update packages

* Updated bindings from main

* Update lefthook.yml

* Remove `tag` folder from core
The `tag` folder came back from the dead. Maybe it got confused in merge conflict?

* update pnpm lockfile + fix tsc errors

* fix asset import

Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
2022-08-29 04:59:09 -07:00
Oscar Beaumont dd10d9ab47 fix landing page 2022-08-29 17:36:34 +08:00
Utku Bakir 6437f3747d Move eslint to config package 2022-08-10 18:43:04 +03:00
Utku 3cdd0808a5
Mobile app (#352)
* Mobile app: Initial Commit!

* Fix monorepo issues and add tailwind.

Fix & Test tailwind.

working ball app

Fix workspace module import

* Mobile app cleanup and structure

* App Icons, Splash screen and eslint config

* More cleanup

* Use SVGs directly in React Native

* Add placeholder files for project structrate

* Cleanup all svg icons and modify metro config to use icons from interface package (temporary)

* Potentially fix types for react & update some packages.

* Onboarding screen + add reanimated & moti

* Finishing touches on Onboarding screen

* Persist onboarding, Button comp and Nav. flow.

* Add mobile info to Contributing.md

* Add .prettierignore for disabling auto import ordering for some files.

* Introducing the new navigation flow

* Change package name

* use the new @sd/assets package

* Add a temp. folder for @sd/assets organization

* Drawer nav bar looks good now.

* Hacky method to get the active route on drawer

* Fix react native types & update few packages.

* Drawer animation

* Add counter

* Collapsible Tags / Locations

* rename Counter and add saveState prop

* Sync counter with desktop version

* Move some screens to BottomTab Nav.

* Add Overview Stats

* [WIP] - Device component

* Upgrade to Expo 46 and fix types.

* Add @sd/core to mobile

* Fix eslint stuff

* placeholder and some notes

* Show folder icons on overview screen

* Fixed android build, style and some screen tweaks

* Add bottom sheet package

* Fix bundler issues and rename landing package.json

* Rename landing package.json

* update all packages to latest React

* Eject expo app

* fix pnpm & expo & monorepo

* monorepo debugging

* cleanup dependencies & static link to shared packages

* cleanup, switch to hermes, pollyfill intl for ios

* Cleanup monorepo

* Fix: Style for FileItem

* Above average app icons

* cleanup ios

* update msrv

* update codeowners for mobile

* fix typecheck

* update lockfile

* fix ffmpeg install

* rename UI to 'SpacedriveInterface' for clarity

* Update codeowners

* Fix eslint config mobile.

* Refactor navigation flow, move types to navigators

Co-authored-by: Utku <74243531+utkubkr@users.noreply.github.com>
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2022-08-08 20:29:14 -07:00
Oscar Beaumont ea92af57f8
Move Rust backend to rspc (#345)
* move Rust backend to rspc

* move server to Axum + remove parts of old bridge

* move frontend over to @rspc/client

* move core to rspc + update deps

* fix Typescript errors + upgrade deps

* document invalidate_query! macro

* general cleanup + upgrade to PCR 0.6.0

* prisma error handling

* upgrade to rspc 0.0.4

* update vite-plugin-ssr

* fix typescript

* fix builds

* put landing page app name back

* hardcode ffmpeg version on Windows

* rename 'command' to 'mutation' to line up with react-query terminology

* upgrade rspc to v0.0.5 + fix types

* use shared ffmpeg binaries

* general Typescript cleanup

* fix clippy workflow failing due to tauri proc-macro

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2022-08-03 08:36:03 -07:00
Ericson "Fogo" Soares 85e5eec993
Resumable Jobs + Lefthook Integration (#344)
* Introducing Lefthook for git hooks automation
* TypeScript typechecking and linting
* Rust formatting and linting
* Spellchecking (also corrected spell errors in some files)
* Check links in md files

* Introducing resumable jobs
* Abstractions to pause and resume jobs automatically when application exits and is started
* Changing database to use Bytes for UUID fields
* Changing uuid fields on core to use uuid::Uuid instead of String
* Updating some dependencies and introducing msg_pack serialization to save job state on database

* Fixing some clippy warnings

* Fixing a regression introduced on identifier job, doing too much db accesses concurrently
2022-07-27 00:06:34 -07:00
Oscar Beaumont f8de1a81bf
fix @rpath/libswiftCore.dylib error + etc (#255)
update Tauri + fix `@rpath/libswiftCore.dylib` error + make Typechecks pass
2022-06-18 17:00:57 -07:00
Oscar Beaumont 562efe3c6b build(deps): update dependencies across workspace 2022-05-30 20:45:37 +08:00
maxichrome 4bd421d90c
fix format script config filename 2022-05-23 04:41:21 -05:00
maxichrome 50f761775f
fix prettier plugin loading 2022-05-23 02:53:53 -05:00
maxichrome f5e0666d11
Format existing code with new conventions 2022-05-22 23:24:43 -05:00
Harry Hopkinson 8765f420b7
Add a type-check script (#149)
* Implement a typecheck script for typescript work.

* remove typescript as root dependency

Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>
2022-05-12 21:02:23 -05:00
Marques Scripps 9a345d6d9c
added experimental submenu (#30)
+ debug toggle for experimental view

Co-authored-by: Marques <hello@marques.gg>
Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
2022-05-04 11:18:19 -07:00
Brendan Allan 9fb16c6f36 fix: remove auto bindings generation 2022-05-01 21:30:44 +08:00
Brendan Allan c9e76e9a7a tsconfig refactor 2022-05-01 12:17:55 +08:00
Brendan Allan b03f3ddf5a Merge remote-tracking branch 'upstream/main' into new-ci 2022-05-01 09:36:12 +08:00
Jamie Pine c19b5bb16c fix prep command 2022-04-25 10:57:16 -07:00
Brendan Allan fdec87ddb2 ci: escape pnpm desktop tauri 2022-04-24 12:56:03 +08:00
Brendan Allan 3f8867fc14 new ci 2022-04-22 18:21:18 +08:00
Brendan Allan 8a91e2f05d
Basic CI (#12)
* ci:

* ci: run ci on ci branch

* ci: update pnpm version

* ci: Standardise naming

* ci: update lockfile

* ci: install ffmpeg on unix ci

* ci: run codegen prep before build

* ci: add libavutil to ubuntu dependencies

* ci: add libavutil-dev to ubuntu dependencies

* ci: dependencies

* ci: fix ubuntu dependencies

* ci: only build frontend with desktop

* ci: setup cmake and vcpkg for windows

* ci: install ffmpeg on windows

* ci: fix windows ffmpeg install

* ci: fix conditional windows ci commands

* ci: remove vcpkg from windows

* ci: optimizations

* ci: use custom rust cache version
2022-04-22 02:26:03 +08:00
Jamie Pine af9371ca96 pre brendan commit 2022-04-19 22:55:44 -07:00
Jamie Pine 3f29ff2374 better compile setup for hotreload
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2022-04-19 14:17:04 -07:00
Jamie Pine 9e55e100db fix sidebar, ui tweaks 2022-04-18 20:35:19 -07:00
Jamie Pine 3540471bf6 build commands + web app renames 2022-04-18 17:34:39 -07:00
Jamie Pine bc3a35fa8f interface has solo dev mode + made a lot of stuff work 2022-04-18 16:06:33 -07:00
Jamie Pine 0695403a6f mess pt.2 2022-04-17 11:44:50 -07:00
Oscar Beaumont af9d435086
fix: react-query working in production builds + fix Linux compilation issue 2022-04-09 02:19:27 +08:00
Jamie Pine b910b4b12c linked up thumbnail generation [WIP]
- added purge database helper button
- added temp checksum to file_paths for time being, until files table is impl
2022-04-01 00:26:27 -07:00
Jamie Pine ad01e0d553 improve package.json + comment unused job queue 2022-03-31 20:31:49 -07:00
Jamie Pine c27c59da53 fix a bunch of dependency issues & remove web 2022-03-31 20:18:25 -07:00
Jamie Pine 6cf3933b80 remove codegen'd files + update dev docs 2022-03-31 18:10:56 -07:00
Jamie Pine b121f0fed6 restructure project files layout 2022-03-31 17:41:17 -07:00
Jamie Pine 4acd8ca078 fixed indexer database write
- fixed job history query
2022-03-30 04:25:40 -07:00
Brendan Allan 117cf0fed3 feat: force use of pnpm 2022-03-30 18:35:57 +08:00
Brendan Allan da002c479d feat: migrate from yarn to pnpm 2022-03-30 18:04:58 +08:00
Jamie Pine eac6d2ee13 react query working with Rust
- other stuff
2022-03-12 10:00:58 -08:00
Jamie Pine 0daa35cb2e fix cmd 2022-03-08 16:27:29 -08:00
Jamie Pine a292a63aa2 remove codegen types 2022-03-08 16:17:57 -08:00
Jamie Pine af7b5e5dbc location error handling
- sets an example for how errors should be handled through out the core code
- few schema changes
- tinkering
2022-03-05 23:01:00 -08:00
Jamie Pine 0358dd522b migrated to pure rust volumes
- disabled swift native lib
2022-03-04 01:39:20 -08:00
Jamie 267bb35e99 prisma on tha frontend ?? but how
how he do it

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2022-03-03 06:25:10 -08:00
Jamie b6e94a2b2b - library creation flow complete
- library/client db records unique and tied to local state
- config remove unwrap
2022-03-01 02:26:11 -08:00
Jamie 5adb888926 init monorepo 2021-12-24 01:13:21 -08:00
Jamie 88c5fd1a98 this commit is OLD, been on my pc for months 2021-12-23 00:00:02 -08:00
Jamie b51734f180 broken list 2021-10-28 07:43:37 -07:00
Jamie b639160107 locations and better dark theme 2021-10-27 03:59:39 -07:00
Jamie fb0e9db591 temp icon, color tweaks and menu stuff 2021-10-25 12:29:00 -07:00
Jamie b65771351e virtualized list, native icon caching, better top bar 2021-10-24 11:31:50 -07:00
Jamie 1d418fe60f lazy load icons, refactor store, 2021-10-23 14:30:36 -07:00
Jamie 600adc8fa9 Rust+Swift bridge
Co-authored-by: Brendonovich <brendonovich@outlook.com>
2021-10-19 07:31:56 -07:00
Jamie eb64c90f83 bunch 'o refactor
performance gains on file list
better typings
2021-10-14 21:00:37 -07:00
Jamie 0a021982c6 Overdue wide boi commit
- Files table
- Sidebar + router
- Get files
2021-10-07 03:47:33 -07:00
Jamie 2af3e6c3d8 ui stuff 2021-10-05 17:28:47 -07:00
Jamie 3c673a38ed components and drive stuff 2021-10-04 21:16:12 -07:00
Jamie 338b1eb0d3 checkpoint before potentially removing seaorm 2021-10-01 10:23:50 -07:00
Jamie 6470067c08 hide name for now 2021-09-29 06:36:34 -07:00
Jamie 0ec1bfc0c7 spacedrive born 2021-09-29 05:59:04 -07:00
Jamie d31690e0c9 designed some data structures 2021-09-26 22:07:27 -07:00
Jamie dd5a38821d init 2021-09-21 23:27:02 -07:00