I am trying to create a single repository claymemoirs-functions to hold all my Appwrite Serverless functions.
Basically, I want all my functions to share the same bun.lockb, prettier and eslint configurations, as well as a @common and @services folder.
The functions themselves would be inside @functions, e.g.: @functions/processs-new-user/index.ts
Is it possible to do something like this? Even if some adjustments are required?
See screenshot for visual aid.
Answering myself here. I was initially thinking of going with a bun mono-repository, but documentation is scarse. Turbo and Nx mono-repositories are also a bit cumbersome. So... I ended up just creating a single folder, as outlined in the screenshot. Creating path aliases is as necessary and then, in Appwrite function definitions I added this Configuration:
Build Settings
bun install --production && bun build ./functions/process-new-user/main.ts --outdir ./dist/process-new-user
Entrypoint
dist/process-new-user/main.js
The deploy was succesful on Appwrite, and I was able to execute it and see the logs and all that. So I assume this works. Not entirely sure it's the best way to do it tho. It's good enough for me, until anyone ellaborates or teaches me better.
Sure you can use 1 folder/repo for all your functions
Recommended threads
- Unable to create records with other user...
are we able to create records in collections with permissions of different user than the caller of this request? (with document security on) I have backend func...
- Sometimes this function shows an error l...
1. Synchronous function execution timed out. Use asynchronous execution instead, or ensure the execution duration doesn't exceed 30 seconds.\nError Code: 408 2...
- Custom Topic sent from Function (with sc...
Can I send a message on a custom topic? So clients can subscribe to them?