-
Notifications
You must be signed in to change notification settings - Fork 5
Description
This issue serves as a bit of a guide / information dump for working on the home page and the log page.
Potential projects ordered roughly in scope / size:
-
(will double check) The simulation cards have some jank. Desired behavior is to click the card and get sent to the simulation page. Current behavior is nothing happens if you click in the middle of the card. Some relevant code:
e.stopPropagation()in theSimcomponent.

-
Add routing to profile page to show models first, e.g. https://compute.studio/hdoupe/models would show:

Related: Allow link to a user's models #301 -
Add a "Public Log" button to the home dashboard that users can click to get redirected to the Log page.
-
Integrate the Log simulations into the home feed with a toggle: "Show only my simulations", "Show all public simulations"
-
Replace the redirect to about.compute.studio with an engaging home page with public content.
-
To be continued...
Definitions:
-
Home page is at the root
/for logged in users: https://compute.studio. Unauthenticated users are redirected to https://about.compute.studio -
Public log of simulations is hosted at
/log: https://compute.studio/log. It can be viewed by all authenticated and unauthenticated users. All public simulations that have finished running are listed there. -
Public content created by a specific user is at
/[:username]: https://compute.studio/hdoupe/. It can be viewed by all authenticated and unauthenticated users. -
"Models" are the core vehicles for creating content on the website. There are two main types of models:
- "Models" create "Simulations" when they are run. e.g. https://compute.studio/PSLmodels/Tax-Cruncher/new/
- "Data Visualizations" are server based applications are embedded with an
iframeon the website. One example: https://compute.studio/hdoupe/dash-demo/viz/
Note: Models are also referred to as "Apps". In the backend and type definitions, these are "Projects" because Django and other web-related projects name too many things "App".
Code location:
The frontend code for creating the home page and the log is in the src/Log directory: https://github.com/compute-tooling/compute-studio/blob/master/src/Log/index.tsx
API endpoints
This builds the page from the following api endpoints. The client for these endpoints lives here: src/Log/API.ts
-
https://compute.studio/users/status/
source code
This has some information about the user that is needed to determine what features they can use / who they are / if they are authenticated or not.Example response
{ "user_status": "profile", "api_url":"/users/status/", "username":"hdoupe", "plan":{ "plan_duration":"monthly", "name":"pro", "trial_end":"2021-03-13", "cancel_at":null }, "remaining_private_sims":{} } -
https://compute.studio/api/v1/sims
source code
This has paginated information about the user's simulations. -
https://compute.studio/api/v1/models
source code
This has paginated information about the user's models. -
https://compute.studio/api/v1/models/recent/
source code
This has the most recently used models by the user. -
https://compute.studio/api/v1/log
source code
This has all of the public simulations. -
https://compute.studio/api/v1/sims/hdoupe
source code
All public simulations created by this user. -
https://compute.studio/api/v1/models/hdoupe
source code
All public models created by this user.





