Skip to content

Conversation

@CarolineDenis
Copy link
Contributor

@CarolineDenis CarolineDenis commented Jun 16, 2025

Fixes #2931
Fixes #4832
Fixes #6210

Adds an initial set up page for configuring your database much like the Spwizard for Specify 6.

image

TODO:

  • Title colors are white-on-white.
  • Make certain fields required (at least for user)
  • Error on backend doesn't stop you from progressing onto the next step.
  • Defaults for fields (So certain tree ranks can be true by default)
  • Progress indicator?
  • Backend should tell frontend which step to go to next. Needed to conditionally skip geography tree setup pages.
  • Setup can be finished before schema is finished being created. Need to have some sort of waiting page, or speed improvement? Thinking I can change the setup so you fill out the forms first, then at the very end the database is created.
  • Use new default files Feat (setup tool): Create default files for the new setup tool #7444
    • Schema overrides
    • Schema localization (english only)
    • Picklists and Global Picklists
    • Preptypes
    • Taxon treedef (per discipline)
    • Geography treedef
    • Storage treedef
  • Create trees
  • Add documentation links
  • Use localized strings
  • Add better error handling. User should be notified and sent back to the forms if anything goes wrong, and submitting again should resume from the last successful step.

Optional TODO:

  • Password confirmation input doesn't work if you input the password into it first, then fill out the normal password field.
  • Notification polling seems to be causing errors on the backend when lingering on the setup page. Will investigate.
  • Need schema for API
  • Save form to localStorage
  • Normalize all keys (recursively) on backend api requests

Checklist

  • Self-review the PR after opening it to make sure the changes look good and
    self-explanatory (or properly documented)
  • Add relevant issue to release milestone
  • Add pr to documentation list
  • Add automated tests
  • Add a reverse migration if a migration is present in the PR

Testing instructions

  • Fill out the setup forms
    • Make sure the forms look good in light mode and dark mode (It uses your system settings.)
    • You can only progress to the next form if you filled out all required fields.
    • Make sure your are shown in the Overview sidebar.
    • Make sure you can submit at the end.
  • Make sure you can log into the database.
  • Make sure the schema config defaults were applied correctly.
  • Make sure default picklists were created correctly.
  • Make sure prep types were created correctly.
  • Make sure all tree viewer pages load.
  • Make sure API endpoints work
    • setup_tool/setup_database/create
    • setup_tool/institution/create
    • setup_tool/division/create
    • setup_tool/discipline/create
    • setup_tool/collection/create
    • setup_tool/specifyuser/create

@grantfitzsimmons
Copy link
Member

Any specifyuser can be set as an institution admin by inserting the following, replacing the specifyuser_id with the ID of the newly created user:

INSERT INTO spuserpolicy (id, resource, action, collection_id, specifyuser_id) VALUES (1, '%', '%', null, 1);

@CarolineDenis
Copy link
Contributor Author

CarolineDenis commented Jul 9, 2025

NOTES:

@CarolineDenis
Copy link
Contributor Author

To keep in mind: #6736

Add progress bar
Fix missing string
Triggered by 68c3653 on branch refs/heads/issue-2931-1
WIP optimize default schema creation
Triggered by 6f42b01 on branch refs/heads/issue-2931-1
Triggered by 1f3cadc on branch refs/heads/issue-2931-1
Triggered by e49e80b on branch refs/heads/issue-2931-1
Triggered by a38a8c0 on branch refs/heads/issue-2931-1
Triggered by 097614c on branch refs/heads/issue-2931-1
@alesan99 alesan99 added this to the 7.12.0 milestone Oct 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 📋Back Log

3 participants