69 Commits

Author SHA1 Message Date
Geometrically
3535f0c4b4
Search fixes (#134)
* Search fixes

* Fix small instance ui

* fix javaw issue

* menu fix

* Add confirm modal for deletion

* fix build
2023-06-11 15:26:25 -07:00
Adrian O.V
e0e9c3f166
Library improvements (#126)
* Base impl

* Add grouping

* Fix some styling things

* Run linter

* add missing features

* add dev mode

---------

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
Co-authored-by: Jai A <jaiagr+gpg@pm.me>
2023-06-02 15:36:10 -07:00
Geometrically
ee61951698
Initial bug fixes (#127)
* Initial bug fixes

* fix compile error on non-mac

* Fix even more bugs

* Fix more

* fix more

* fix build

* fix build

* address review comments
2023-06-02 07:09:46 -07:00
Geometrically
9ea548cfe3
Fix various issues (#123)
* Fix various issues

* Remove unused
2023-05-23 14:24:39 -07:00
Geometrically
8ff1b0d108
Code signing + auto updater (#122)
* Code signing + auto updater

* remove dist

* update actions

* fixes

* fix more

* commit

* fix cache dir

* quotes

* fix hopefully?

* why yaml

* Fix cache dep path

* Fix updating artifacts

* fix ubuntu ver

* enable autoupdater

* fix pubkey

* fix invalid config

* pass in signing vars

* update pubkey

* Improve compile times
2023-05-23 11:14:22 -07:00
Geometrically
6014172046
Profile Options (#120)
* init profile settings

* more work

* finish everything

* Switch to index approach

* Fix settings str split

* Run lint
2023-05-19 18:59:32 -07:00
Geometrically
4df7605b8d
Profile mods page (#119)
* Finish profile mods page

* commit missing

* finish pr

* Run lint
2023-05-18 17:12:36 -07:00
Wyatt Verchere
16407060f0
Debug pin macro (#118)
* debug pin macro

* Added debug pinning macro

* working on windows

* removed remaining box pins
2023-05-18 10:31:52 -07:00
Adrian O.V
0801d7a145
Logs wireup (#116)
* wireup

* Added live logs

* Finish up wireup

* Run linter

* finish most

* Fix most issues

* Finish page

* run lint

---------

Co-authored-by: Jai A <jaiagr+gpg@pm.me>
Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2023-05-17 13:05:20 -07:00
Adrian O.V
c6e2133e15
Search UI improvements (#107)
* Base impl

* Make project type selectable

* Update Browse.vue

* address changes

* Quick create

* Run linter

* fix merge

* Addressed changes

* Installation improvements

* Run lint

* resourcepacks

* automatic installation of dependencies

* Fix bugs with search

* Addressed changes

* Run linter

* Fixed direct install not working

* Remove back to search

* Update Index.vue

* Addressed some changes

* Shader fix

* fix resetting

* Update Browse.vue

* Direct install from search

* More improvements

* Update SearchCard.vue

* Card V2

* Run linter

* add instance ignoring

* Update Browse.vue

* Finalize changes

* Update SearchCard.vue

* More adjustments

* Fix out of order rendering

* Run linter

* Fix issues

* Add unlisteners

---------

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
Co-authored-by: Jai A <jaiagr+gpg@pm.me>
2023-05-16 19:25:00 -07:00
Geometrically
3fa0e99de2
Various final backend fixes (#117)
* Various final backend fixes

* Add FS watching

* run lint

* Autodetect installed jars
2023-05-16 15:30:04 -07:00
Wyatt Verchere
5cb54b44be
box::pin in run(),clippy (#115) 2023-05-12 11:53:41 -07:00
Geometrically
ee0c91aa80
Performance improvements (#114)
* Performance improvements

* run fmt

* optimize creation modal

* remove print, fix mod loader editing

* Fix library update

* update extract loading bar

* Update theseus_gui/src-tauri/src/api/metadata.rs

Co-authored-by: triphora <emma@modrinth.com>

* fix cli

---------

Co-authored-by: triphora <emma@modrinth.com>
2023-05-11 18:11:15 -07:00
Geometrically
7a0798d9d0
Fix syncing, repairing, add edit method (#111)
* Fix syncing, repairing, add edit method

* comp err

* temp push up

* fixes

* fix more

* add frontend
2023-05-11 10:26:00 -07:00
Adrian O.V
71cf2c53f5
Implement loading (#104)
* Implement loading

* LoadingBar

* Run linter

* Update App.vue

* Loading bar all the things

* Update SplashScreen.vue

* Update SplashScreen.vue

* Update App.vue

* initial revert

* Update Instance.vue

* revert css

* Fix instance

* More reverting

* Run lint

* Finalize changes

* Revert "Merge branch 'master' into loading"

This reverts commit 3014e765fb6fb343f3030fd8a822edd97fb2af41, reversing
changes made to b780e859d2b53a203eb3561ba3be88af083d9c15.

* Fix loading issues

* fix lint

* Revert "Revert "Merge branch 'master' into loading""

This reverts commit 971ef8466613579b7f523edbd25b692df62d0f86.

---------

Co-authored-by: Jai A <jaiagr+gpg@pm.me>
2023-05-10 15:50:42 -07:00
Wyatt Verchere
da4fc1c835
added box pins (#110)
* added box pins

* clippy
2023-05-09 15:05:52 -04:00
Wyatt Verchere
65c1942037
Misc improvements and fixes (#109)
* now utilizing tracing better

* better tracing

* fix mac vs pc oppositional env var issue

* modified loading package

* added droppable loadingbarid that sends completion message

* loading bar

* regressed bug on mac

* fixed non-updated loading bar on playground

* Loading bar improvements

---------

Co-authored-by: Jai A <jaiagr+gpg@pm.me>
2023-05-08 12:14:08 -07:00
Adrian O.V
c79d5c32a6
Bring back the old nav (#100)
* Bring back the old nav

* Added bool to settings

* settings wireup

* Fixy fix

* fix create btn

---------

Co-authored-by: thesuzerain <wverchere@gmail.com>
Co-authored-by: Jai A <jaiagr+gpg@pm.me>
2023-05-05 15:37:23 -07:00
Wyatt Verchere
edd9f28081
Logs api (#103)
* not compiling; just to commit

* working logs commit

* prettier; clippy

* delete logs functions

* Reverted change

* mislabeled doc tag
2023-05-03 09:02:34 -07:00
Wyatt Verchere
713a915161
debugging; box pinning (#101) 2023-04-28 10:45:51 -07:00
Wyatt Verchere
dcca0ef474
linux jre missing folders (#99)
* linux jre missing folders

* linux jre missing folders
2023-04-27 08:38:35 -07:00
Adrian O.V
bda63d5d64
Navbar wireup (#98)
* Navbar wireup

* Fix height issue

* Fix syncing

* working branch

* Added root directories to breadcrumbs

* fix jre detect

---------

Co-authored-by: Jai A <jaiagr+gpg@pm.me>
2023-04-26 20:19:37 -07:00
Geometrically
f0b8a708a3
Updating + Profile Repairs + Performance Improvements (#97)
* repairing

* Main framework for updating

* add jsconfig

* more work

* Improve performance

* Finish updating

* run lint
2023-04-26 10:28:08 -07:00
Wyatt Verchere
79ef48549f
Windows fix process env vars (#96)
* fixes windows issue

* clippy
2023-04-23 10:38:04 -07:00
Wyatt Verchere
16e015b527
Performance (#89)
* jre async

* mac support

* fixed some settings not being saved to file

* fixed older version of mac random crashing bug

* added specific mac version detection

* linux support for jre changes

* added app storage options

* tauri features change

* dependency fix

* removed debug statement

* restructured to not pass css through rust

* changed to os_info

* rerun cicd
2023-04-19 11:44:44 -07:00
Wyatt Verchere
640db2d079
fixes stack overflow :) (#88)
* fixes stack overflow :)

* removed unnecessary comment
2023-04-18 14:43:30 -07:00
Wyatt Verchere
63d2785b2f
Deadlock fixes (#85)
* fixed deadlock

* added missing files to commit

* clippy & dist
2023-04-17 16:07:09 -07:00
Geometrically
19a4aa6689
Add metadata GV loader api (#84)
* Add metadata GV loader api

* Register commands

* fix lint + docs issue
2023-04-17 14:05:27 -07:00
Wyatt Verchere
9f40640ed8
String settings hooks (#82)
* added theme; env change

* began refactoring

* added process hook

* now singular string for each hook

* fixed splitting by comma to by space

* profile_create function updated

* prettier

* added jre validator

* restructured so that it doesnt look like a vec

* fixed merge issue

* snake case

* resolved merge issues + added process events

* clippy, fmt

* removed unnecssary func
2023-04-17 12:40:27 -07:00
Wyatt Verchere
b120b5cfa8
Event handling (#75)
* working on amcros

* fleshed out draft

* added feature support

* finished loading

* Fixed issue with multiple data types in macro

* Working, and added more loading uses

* added window scopes

* clippy, fmt

* working other variants

* fmt; clippy

* prettier

* refactored emissions to use increment

* fixed deadlock

* doc changes

* clippy, prettier

* uuid change

* restructured events to util

* loading restructure

* merge fixes

* comments mistake

* better cfg tauri feature structuring

* added extra fields to some loading enum variants

* removed Option<>

* added pack + version labels

* doc change
2023-04-16 10:12:37 -07:00
Geometrically
f8173d3b78
Mod Management API (#81)
* Profile mod management

* remove print statement
2023-04-13 12:03:15 -07:00
Wyatt Verchere
ac6ad0ef2e
mac download (#77)
* mac download

* clippy
2023-04-11 07:15:37 -07:00
Geometrically
a62d931fe2
Wire Profile Backend to Frontend (#71)
* Search updates

* fixes2

* Some more work

* start instance page wiring

* Pack installation + Profile viewing

* Remove print statement

* Fix disappearing profiles

* fix compile err

* Finish Instance Running

* remove print statement

* fix prettier

* Fix clippy + early return
2023-04-08 18:54:38 -07:00
Wyatt Verchere
764d75181f
restructured auto-credentials (#74)
* restructured auto-credentials

* fix clone

---------

Co-authored-by: Jai A <jaiagr+gpg@pm.me>
Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2023-04-07 14:43:21 -07:00
Wyatt Verchere
34005dd2e2
Jre api (#66)
* basic push

* actual push

* JRE detection, and autosetting

* removed a println, retrying CI/CD

* new game version compare; preset java 7 and 8 using our jre

* 1.8 mislabeled

* working JRE changes

* fixed bugs with JRE setup

* fixed bugs with JRE setup

* manual merge

* prettier

* fixes + jre 17

* clippy, prettier

* typo

* forgot to hook up a function

* pr fix + comment fix

* added loader_version

* take 2
2023-04-07 13:31:06 -07:00
Geometrically
b9a3a6dc11
Modpack support (#60)
* Modpack support

* Finish feature

* Tauri errors fix (#61)

* async impl

* working

* fmt and redundancy

* moved ? to if let Ok block

* Finish modpacks support

* remove generated file

* fix compile err

* fix lint

* Fix code review comments + forge support

---------

Co-authored-by: Wyatt Verchere <wverchere@gmail.com>
2023-04-05 19:04:09 -07:00
Wyatt Verchere
6965487b56
tags fix (#69) 2023-04-05 14:04:32 -07:00
Wyatt Verchere
d5505d3298
Child process manager api (#64)
* child process api

* added hook to js

* process API + restructured process state storage

* formatting

* added path-pid check and fixed probs

* prettier

* added profile checking function

---------

Co-authored-by: Wyatt <wyatt@modrinth.com>
2023-04-05 10:07:59 -07:00
Zach Baird
8169d3ad49
Starts adding search pages to launcher. (#49)
* launcher base gui initial

* Bootstraps router, Omorphia, and prettier.

* Adds pages. Adds Vuex. SideBar nav contains user section and pages section.

* Adds Instance markup. Instances added to Home page.

* Adds News to home page.

* Adds settings to nav. Other touches.

* Polishing initial base GUI.

* Moves some styling to assets. Changes px values to rem.

* Removes pointless border-radius CSS.

* Implements Omorphia vars.

* Adds trending mods section.

* Updates home page.

* Swaps Vuex implementation for Pinia.

* Fixes invalid CSS on instance list item hover.

* Adds @ path resolve for imports.

* First pass on search page.

* Fix some styling of row display

* Cleaning up styles and markup.

* Fixes overall layout issues.

* Cleans up more styling. Modifies AppBar coloring.

* Allows pagination arrows to conditionally appear in RowDisplay.

* Adds paging behavior in RowDisplay.

* Updates nav and settings button styling.

* Brings in Knossos style for trending mods. Polishes News CSS.

* Updates Omorphia. Starts addressing PR comments.

* Addresses some more PR comments.

* Changes side navigation styling. Active route class implemented.

* Combines trending and popular row.

* Makes images more realistic. Adds CTA to instances.

* Converts all instances to card style. Converts more styles to rem.

* Moves Navigation and UserSection into App.vue

* Adds Modrinth favicon.

* Cleans up branch after merge.

* Removes unused styling.

* Adds transition to news card.

* Adds ofetch. Separates stores. More logic moved to instance store. Browse hits API.

* Modifies Browse instance styling. Moves Browse results out of Instance.vue.

* First pass on filtering.

* Points search at prod API.

* Updates Omorphia package. Adds index sorting.

* Fills out search functionality.

* Renames state files. Moves SearchPanel into Browse. Fixes checkbox styling.

* Changes how facets are composed. Dynamically sets loaders and categories.

* Moves search state to searchStore. Cleans up some code.

* Ups h2 font-size. Wraps search panel in Card.

* Cleans up branch after merge. Fixes some Browse styling.

* Search store produces query string. API call made in Browse.

* Changes filter-panel styling.

* Uses client and server icons directly. Removes dead code from search store.

* Clear button disabled on initial state. Accesses store directly, removes some dead code. Fixes search panel styling.

* Generates proj tags in Browse. Removes getter in search store.

* Removes unnecessary code.

* Reworks facet management. Fixes some styling.

* Relabels Tauri calls in tags.js. Attempts to call helper in Browse.

* fixed win10 stack overflow

* cargo fmt

* Makes computed value. Gets tags from Tauri. Overrides Omorphia style. Fixes dropdown width.

---------

Co-authored-by: Jai A <jaiagr+gpg@pm.me>
Co-authored-by: CodexAdrian <83074853+CodexAdrian@users.noreply.github.com>
Co-authored-by: Wyatt Verchere <wverchere@gmail.com>
2023-04-05 07:18:04 -07:00
Wyatt Verchere
b0c830119b
Tag fetching and caching (#59)
* basic framework. still has errors

* added functionality for main endpoints + some structuring

* formatting

* unused code

* mimicked CLI function with wait_for process

* added basic auth bindings

* made PR changes, added playground

* cargo fmt

* removed missed println

* misc tests fixes

* cargo fmt

* added windows support

* cargo fmt

* all OS use dunce

* restructured profile slightly; fixed mac bug

* profile changes, new main.rs

* fixed requested pr + canonicaliation bug

* fixed regressed bug in ui

* fixed regressed bugs

* fixed git error

* typo

* ran prettier

* clippy

* playground clippy

* ported profile loading fix

* profile change for real, url println and clippy

* PR changes

* auth bindings + semisynch flow

* fixed dropping task error

* prettier, eslint, clippy

* removed debugging modifications

* removed unused function that eslinter missed :(

* initial errored push

* working draft

* added tag system!

* fixed merge issue

---------

Co-authored-by: Wyatt <wyatt@modrinth.com>
2023-04-03 16:08:53 -07:00
Wyatt Verchere
a13b7a2566
added settings API + fixed bug (#62)
* added settings API + fixed bug

* removed redundant API funcs

* comment clarifications

---------

Co-authored-by: Wyatt <wyatt@modrinth.com>
2023-04-03 13:46:04 -07:00
Wyatt Verchere
6a05276a21
Auth bindings (#58)
* basic framework. still has errors

* added functionality for main endpoints + some structuring

* formatting

* unused code

* mimicked CLI function with wait_for process

* added basic auth bindings

* made PR changes, added playground

* cargo fmt

* removed missed println

* misc tests fixes

* cargo fmt

* added windows support

* cargo fmt

* all OS use dunce

* restructured profile slightly; fixed mac bug

* profile changes, new main.rs

* fixed requested pr + canonicaliation bug

* fixed regressed bug in ui

* fixed regressed bugs

* fixed git error

* typo

* ran prettier

* clippy

* playground clippy

* ported profile loading fix

* profile change for real, url println and clippy

* PR changes

* auth bindings + semisynch flow

* fixed dropping task error

* prettier, eslint, clippy

* removed debugging modifications

* removed unused function that eslinter missed :(

* fixed settings not being released

---------

Co-authored-by: Wyatt <wyatt@modrinth.com>
2023-03-31 18:44:26 -07:00
Wyatt Verchere
f48959a816
Profile bindings (#55)
* basic framework. still has errors

* added functionality for main endpoints + some structuring

* formatting

* unused code

* mimicked CLI function with wait_for process

* made PR changes, added playground

* cargo fmt

* removed missed println

* misc tests fixes

* cargo fmt

* added windows support

* cargo fmt

* all OS use dunce

* restructured profile slightly; fixed mac bug

* profile changes, new main.rs

* fixed requested pr + canonicaliation bug

* fixed regressed bug in ui

* fixed regressed bugs

* fixed git error

* typo

* ran prettier

* clippy

* playground clippy

* ported profile loading fix

* profile change for real, url println and clippy

* PR changes

---------

Co-authored-by: Wyatt <wyatt@modrinth.com>
2023-03-31 11:00:43 -07:00
Jai A
4875ed4359
Fix clippy issues 2023-03-30 15:18:57 -07:00
Jai A
7cd8205a3b
GH actions + finish 2023-03-30 13:45:26 -07:00
Jai A
59b835d374
Profile mod management 2023-03-29 15:34:46 -07:00
Wyatt Verchere
8512b45e2b
Jre detection (#54)
* initial jre detection commit

* added WinReg searching

* added windows support + refactored

* Cargo lock

* fixed linux + added canonicalization

* fixed bug in mac

* Added dunce; handling UNC paths better for canonicalization

* missed cargo lock

* removed tests, added comments

* cargo fmt

* removed redundant mac address, loop over folder

---------

Co-authored-by: Wyatt <wyatt@modrinth.com>
2023-03-28 10:31:47 -07:00
Matthew Reid
67742cb238 Add search to GUI and minor changes to Theseus. 2023-01-02 00:54:40 -07:00
Danielle
b223dc7cba
Authentication (#37)
* Initial authentication implementation

* Store user info in the database, improve encapsulation in profiles

* Add user list, remove unused dependencies, add spantraces

* Implement user remove, update UUID crate

* Add user set-default

* Revert submodule macro usage

* Make tracing significantly less verbose
2022-07-15 08:39:38 -07:00
Danielle
10610e157f
Refactor Library
The launcher code was in a position ripe for sphagetti, so this rewrites it in a more robust way.
In addition to cleaner code, this provides the following changes:
- Removal of obsolete Mojang authentication
- The rebasing of some internal state into a Sled database
- Tweaks which make some internal mechanisms more robust (e.g. profiles which fail to load can be removed)
- Additional tooling integration such as direnv
- Distinct public API to avoid messing with too much internal code
- Unified error handling in the form of `theseus::Error` and `theseus::Result`
2022-06-27 15:53:25 -07:00