You are browsing as a guest. Sign up (or log in) to start making projects!

School Manager

  • 4 Devlogs
  • 29 Total hours

Cross-platform app designed by a student: facilitate searching for homework or lessons, plan study sessions for students, and help managing classrooms for teachers. Use AI powered search engine to answer questions, and follow the latest events for your school.

Open comments for this post

10h 8m 17s logged

Improved server-side security

A few adjustments were made server-side: Tokens now expire much earlier, with a refresh token to keep users signed in.
Other database endpoint updates were made to ensure safer data handling.

Account security updates

Together with the server side security enhancements, I also added a session management section in the Sign In & Security page:
You can now manage your signed in devices, recognize them with their model or OS + browser, last seen date, and app version.
You can easily sign out any of those devices, requiring another sign in.

Passkey Renaming

As mentioned in the previous devlog, I did add passkey renaming. Now passkeys detect the device you saved the passkey on to give a suggested name, which you can edit at any time.

Fixed app themes

For some reason app themes broke with an SDK update. I restored functionality, and extended it to the welcome screen.

Multiple changes conventional commits

I updated the workflow scripts to allow multiple changes inside of one commit:
feat: Feature 1; fix: Fix 1; fix: Fix2
All inside of the same commit! These will then be parsed in the github release by the workflow.

Switch app building to GitHub Actions server

EAS Cloud was disabled. Now all app builds are ran through the GitHub Actions server.
I also added an unsigned iOS build, which is installable with SideStore, LiveContainer, or any other similar sideloading app.
The iOS builds are compiled with X-Code 27 beta, so the dynamic app resizing is enabled for iOS 27 (You can test by using iPhone mirroring, launching the sideloaded app, and trying to resize the window).
Small reminder: You can either install the development build, OR, you can test the app by installing the PWA when opening the website version!

0
0
14
Open comments for this post

4h 51m 2s logged

Passkeys are live!

This took me a while to develop, but passkeys are finally live!
There’s a passkey management screen in settings, with a list of all saved passkeys, when they were last used and when they were added.
You can delete them, or add new ones using web authentication.
This is a temporary workaround since Apple requires you to have a paid developer license to use passkeys in-app.

What’s next?

I’d like to add passkey renaming in settings (and regular passkey naming in the registration screen), OR a database with automatically detected names for each Passkey handler ID.
I’m currently trying to get the app to build on X-Code 27 beta. This would use the new SDK and allow apps to dynamically resize when using iPhone mirroring or the xcode device hub. It would be a huge improvement for testing, since I would be able to test everything 100% from my mac without having an ipad simulator or have to bring a physical device around.

0
0
2
Open comments for this post

13h 46m 19s logged

Passkeys

I’ve been working on this for a while. I’m currently adding passkeys and security keys support to the app!
The app has been based on OTP codes since release, I’m also adding passkey support so that no waiting for emails is needed.
You will still need a verified email in order to sign up, but you will be able to use passkeys for future authentications.
I also think about adding an authenticator app OTP generator to replace email OTPs altogether (for added security in case of a stolen email account), but it’s a work in progress (PS: Again, you will still need a verified email address to sign up).

GitHub Workflows!

This took me ages to build. I implemented workflows and multiple branches:

  • Master (Release)
  • Beta
  • Alpha
  • Development
  • Testing (no workflows here)

On every push, two jobs run: One updates the website (only on master pushes), and also runs eas update to the specified update branch.
The other job is the most interesting: It checks for version changes in the app.json file, and if the version changed, it starts building a new binary for the app: Signed iOS Simulator (.tar.gz app file), “Signed” Android APK (or AAB if the branch is Beta/Master), and unsigned iOS .ipa file (since I have no paid developer license yet).
The first two are ran through EAS Cloud, and then downloaded by the workflow. The unsigned build runs directly on GitHub Actions’s servers.
After having the artifacts, they get renamed to human readable names, and release notes are automatically generated with the adoption of conventional commits (fix: … | ci: … | feat: … | etc). The script later proceeds to create a release and a tag for said update, and draft it to the github repo.
This means I no longer have to manage builds myself, which sometimes took several hours to fix environment issues and more.
It also means that whenever I push an update, the app automatically reflects said update in an appropriate branch (we don’t like testing in production, right?).

1
0
5
Open comments for this post

16m logged

Now on Stardance!

Hi everyone! Welcome to Stardance!
I can’t wait to start seeing everyone’s amazing projects, and to start coding my own! I actually have a few ideas boiling in the pot, many of which I’ve already created projects for. Good coding to everyone!

About School Manager

The development of the app will be continued in Stardance!
There aren’t many updates since the last devlog in Flavortown, I’m trying to organize my ideas and clean some code before continuing development.
Have fun everyone!

1
1
23

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…