Wiring an ed-tech platform into Canvas LMS with Edlink
Full Stack Developer · JAKAPA · Remote · May 2023 — Jun 2025
JAKAPA is a social-emotional learning platform. To live inside teachers' existing workflows, it needed to connect to Canvas LMS — so students could sign in once and reach their assigned activities without leaving the tools they already use. I built that integration end to end.
The problem
Before the integration, JAKAPA and Canvas were two separate worlds. Students had to manage a second login, teachers had no automated roster sync, and assigned activities weren't reachable from the LMS they lived in every day.
Keeping rostering and assignment data consistent between the two systems by hand wasn't viable as usage grew — it needed to be automatic and reliable.
What I built
- 1
Single sign-on & one-click access
I built a full-stack Edlink API integration linking JAKAPA's Angular platform to Canvas — enabling single sign-on and one-click access to assigned activities, so students reach JAKAPA straight from Canvas with no extra account.
- 2
Automated enrollment
The integration automatically enrolls students based on Canvas rostering, removing the manual setup teachers previously had to do for every class.
- 3
Keep the two systems in sync
I engineered Node.js backend services and scheduled cron jobs that continuously sync rostering and assignment data into PostgreSQL, keeping student records consistent between Canvas and JAKAPA without anyone touching them.