create-my-schooldesk-app
v1.1.38
Published
This wizard is for creating a pre-formatted app for use in My SchoolDesk development ventures.
Readme
Create My SchoolDesk App
This wizard is for creating a pre-formatted app for use in My SchoolDesk development ventures.
Running the Script
Run npx create-msd-app in terminal to start the app creation wizard.
You can create one of the following app types:
- My SchoolDesk Subservice
- My SchoolDesk App
- My SchoolDesk App Subservice
When you first run the wizard, you will be prompted to select one of the above app types.
Configuration for a My SchoolDesk Subservice
- Enter your Subservice name.
- The subservice is the tail of the reverse-domain identifier of the
appId. The wizard will show you the following hint:(org.myschooldesk.{subservice}). - So, if your subservice is
MyId, entermyid. This will set theappIdtoorg.myschooldesk.myid. - Make sure that you remove all spaces, hyphens, and that all letters are lowercase.
- The subservice is the tail of the reverse-domain identifier of the
Configuration for a My SchoolDesk App
- Enter your App name.
- The app is the middle of the reverse-domain identifier of the
appId. The wizard will show you the following hint:(org.{appname}.app). - So, if your app is
My AttendanceDesk, entermyattendancedesk. This will set theappIdtoorg.myattendancedesk.app. - Make sure that you remove all spaces, hyphens, and that all letters are lowercase.
- The app is the middle of the reverse-domain identifier of the
Configuration for a My SchoolDesk App Subservice
- Enter your App name.
- The app is the middle of the reverse-domain identifier of the
appId. The wizard will show you the following hint:(org.{appname}.{subservice}). - So, if your app is
My AttendanceDesk, entermyattendancedesk. - Make sure that you remove all spaces, hyphens, and that all letters are lowercase.
- The app is the middle of the reverse-domain identifier of the
- Enter your Subservice name.
- The subservice is the tail of the reverse-domain identifier of the
appId. The wizard will show you the following hint:(org.{appname}.{subservice}). - So, if your subservice is
Auth, enterauth. - Make sure that you remove all spaces, hyphens, and that all letters are lowercase.
- The subservice is the tail of the reverse-domain identifier of the
- Using the examples from the above two steps, the
appIdwill be set toorg.myattendancedesk.auth.
Finishing Setup
You will be prompted for a Supabase Project ID, Supabase Anon Key, a Sentry DSN URL, and a Datadog Client Token. Please make sure you are using development Supabase information, and you have access to all required information before running the script.
Script Completion
Upon completion, the script will then launch the new app in your web browser. Make sure to check the Supabase and Sentry config are correct: src/utils/supabase.ts, src/main.tsx.
appId Configuration
Make sure the appId in capacitor.config.ts is correct.
appId should be in the format: org.myschooldesk.{Service} if you are building a subservice for My SchoolDesk (like MyId: org.myschooldesk.myid).
appId should be in the format: org.{App Name}.app if you are building an individual app for My SchoolDesk (like My AttendanceDesk: org.myattendancedesk.app).
appId should be in the format: org.{App Name}.{Service} if you are building a subservice for a My SchoolDesk app (like My AttendanceDesk auth handler: org.myattendancedesk.auth).
Keep in mind, appId is the reverse-domain identifier of the app or service that you are building. So, if you are building an authentication service for My AttendanceDesk that is hosted at auth.myattendancedesk.org, then the reverse-domain identifier for appId should be org.myattendancedesk.auth.
Sentry Configuration
Run npx @sentry/wizard@latest -i sourcemaps to finish setting up Sentry.
AuthSafe Configuration
Make sure to import and add the authSafe function to the useEffect statement on any pages that require authentication.
