Skip to content
This repository has been archived by the owner on Feb 24, 2024. It is now read-only.

Mulitple project support #188

Open
eddieantonio opened this issue Jan 22, 2021 · 2 comments · May be fixed by #293
Open

Mulitple project support #188

eddieantonio opened this issue Jan 22, 2021 · 2 comments · May be fixed by #293
Assignees
Labels
app Changes the app bundle data-processing enhancement New feature or request refactoring Indicates some refactoring has to happen UI worker Modifies the Web Worker code

Comments

@eddieantonio
Copy link
Owner

eddieantonio commented Jan 22, 2021

Enable the user to be able to work on multiple different languages/models at the same time.

We used to have UI for a sidebar with different languages that resemebled Slack's workspace picking sidebar (see Figma:

Screen Shot 2021-01-22 at 11 50 38 AM

To close this issue, users should be able to create a new project, and switch between their language projects freely.

NOTE: this task might be too large for one issue; sub-issues may be required!

@eddieantonio eddieantonio added app Changes the app bundle data-processing enhancement New feature or request refactoring Indicates some refactoring has to happen UI worker Modifies the Web Worker code labels Jan 22, 2021
@yehee yehee self-assigned this Mar 30, 2021
@yehee
Copy link
Collaborator

yehee commented Apr 1, 2021

@eddieantonio I might have missed it, but are there any associations currently in place between projects and files storing wordlist sources? I couldn't seem to find any indication as to which project each file belongs to.

@eddieantonio
Copy link
Owner Author

eddieantonio commented Apr 1, 2021

@yehee since there only is one "project" right now, there is nothing really explict for multiple projects; however, there is a constant right now that can be used as a "project ID":

/**
* The key of the ONLY StoredPackageInfo record.
*/
const PACKAGE_ID = 0;

I believe the files table will need to be changed such that it has a non-null reference to the project it belongs to.

In relational database terms, we'll have two tables:

  • files(id, project, name, wordlist)
  • projectData(id, langName, bcp47Tag, authorName, modelID, copyright, dictionaryName, version)

And they are related in that there is a many-to-one relationship between files.project and projectData.id. files.project is a foreign key!

There will need to be a data migration that, once files.project is added to the schema, all of the existing files need to have their project set to 0 — the initial project ID.

I don't know if that made any sense >.< please let me know if I can clarify any further!

@yehee yehee linked a pull request Apr 6, 2021 that will close this issue
@yehee yehee linked a pull request Apr 6, 2021 that will close this issue
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
app Changes the app bundle data-processing enhancement New feature or request refactoring Indicates some refactoring has to happen UI worker Modifies the Web Worker code
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants