Quest requires certain environment variables to function correctly. You can set these using a .env file or system environment variables:
GSHEET_CREDENTIALS=YOUR_GHEET_CREDENTIALS
GSHEET_SPREADSHEET_ID=YOUR_GHEET_SPREADSHEET_IDexport GSHEET_CREDENTIALS=YOUR_GHEET_CREDENTIALS
export GSHEET_SPREADSHEET_ID=YOUR_GHEET_SPREADSHEET_IDAfter setting up the environment variables, run the generator:
dart run build_runner buildImportant
Add both .env and env.g.dart files to your .gitignore file, otherwise, you might expose your environment variables.
flutter build web --release --no-tree-shake-icons --base-href /example-href/Quest requires the following worksheets to function properly.
The Quest Settings worksheet is used to customize the application’s behavior.
Important
Verify that the Google spreadsheet used with Quest includes a worksheet named Quest Settings.
| Variable | Description | Required |
|---|---|---|
tasks_sheet_title |
Title of tasks worksheet. | ✔️ |
student_tasks_sheet_title |
Title of student tasks worksheet. | ✔️ |
search_columns_names |
Columns to search for student tasks. | ✔️ |
task_columns_names |
Display names for task columns in the Quest interface, starting with columns from the Tasks worksheet, followed by columns from the Student Tasks worksheet. |
✔️ |
status_sheet_title |
Title of the status worksheet. | ❌ |
Important
The Quest Settings worksheet must include Variable and Value columns.
The Tasks worksheet serves two primary functions:
- Identify tasks in
Student Tasksworksheet. - Contains global task information such as deadlines.
Important
The Tasks worksheet must have a unique Title column.
Tip
Deadline column is unique in that it automatically changes to a red color when a deadline has passed.
Deadline column uses (d/m/yyyy) date format.
The Student Tasks worksheet tracks student task status, notes and any other specific information.
Caution
Avoid including sensitive information in the Student Tasks worksheet (e.g., phone numbers, social security numbers), as student filtration is done client-side.
| Column | Description | Required |
|---|---|---|
Task ID |
The task's key, which must also exist in the Tasks worksheet. |
✔️ |
Tip
Any task specific column, except for the Task ID, will be displayed as a card on the Task Details page. For example, the Notes column. Supports Markdown
Customize task status colors and icons by providing a status worksheet in the specified format.
Important
Ensure that status_sheet_title variable is defined in Quest Settings.
| Status | Hex Color | Icon Code Point |
|---|---|---|
| Accepted | #ff33ff5d | e156 |
| Late | #ffcaff58 | e156 |
| Incomplete | #ffff0000 | e16a |
| Not Submitted | #ffff0001 | e16a |
| Rejected | #ffff0002 | e16a |
Note
Status names are customizable and not fixed to the provided example.
Find icon code points in the Flutter Icons documentation.





