Commit Graph

33 Commits

Author SHA1 Message Date
dependabot[bot]
1475183b06 build(deps): bump multer from 1.4.5-lts.2 to 2.0.2 (#1582)
Bumps [multer](https://github.com/expressjs/multer) from 1.4.5-lts.2 to 2.0.2.
- [Release notes](https://github.com/expressjs/multer/releases)
- [Changelog](https://github.com/expressjs/multer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/expressjs/multer/compare/v1.4.5-lts.2...v2.0.2)

---
updated-dependencies:
- dependency-name: multer
  dependency-version: 2.0.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-18 10:36:39 -07:00
KernelDeimos
4fadd26459 dev: add TXT record verification for domain names 2025-08-14 18:32:22 -04:00
KernelDeimos
963b248582 fix: get sharp far away from bundlers as possible 2025-07-10 16:20:12 -04:00
KernelDeimos
2158e8e8c6 dev: add puter file upload via ai.chat for Claude
This commit implements uploading Puter files through ai.chat using
Claude's beta "file inputs" feature. To use this, simply specify
`puter_path` in a content part, and that content part will be
transformed into the correct type of content part for the specified file
and the file will be uploaded.
2025-07-08 19:38:13 -04:00
Neal Shah
bddc872e00 feat: puter workers
* experimental Cloudflare Workers for Platforms support

* add support for the puter driver

* stop hardcoding api.puter.localhost

* support destroy from express route as well

* initial worker support

* xhrshim + fixes (incomplete)

* change order of readyState + load event

* remove some debug logs

* change worker/puterUtils into a cjs module

* Cloudflare workers eventtarget workaround

* worker preamble webpack

* edit worker readme to reflect reality

* allow a way to code in api endpoint instead of hardcoding it to api.puter.com

* move cloudflare eventtarget fix to puter-portable template

This is so it gets run before the rest of puter-js initializes

* remove express route for worker
2025-07-05 17:01:44 -04:00
KernelDeimos
502204a7b7 test: update tests, migrate backend to vitest
Backend had tests written in mocha as well as a test written for jest
(created by an AI utility, wasn't compatible with mocha tests). The AI
generated test had merit so it was migrated to vitest along with all the
mocha tests, which supports conventions from both frameworks.

Vitest also has an excellent watcher cli.

The root repo package.json now runs unit tests in backend. Before it was
only running tests defined in the _test method of backend services.
2025-07-04 18:21:45 -04:00
KernelDeimos
4647e2d9c0 dev: add experimental firebase authentication
This adds an experimental custom token authentication endpoint to Puter.
This is disabled unless the firebase-auth service is explicitly
configured, and is not yet ready for production use.
2025-05-01 17:14:25 -04:00
Jonathan Mahrt Guyou
ad4b3e7aeb feat: captcha
* Added Revis distributed cash to enhance our Captcha Verification system so that we prevent our system from replay attacks

* Fix: There was an error with the implementation of Redis, so I reverted to our previous version that uses in memory storage

* Integrated the captcha verification system into our sign in Form. The captcha verification system now works on both login and sign int

* Remove test files from captcha module

* Update src/backend/src/modules/captcha/middleware/captcha-middleware.js

Co-authored-by: Eric Dubé <eric.alex.dube@gmail.com>

* Update src/backend/src/modules/captcha/middleware/captcha-middleware.js

Co-authored-by: Eric Dubé <eric.alex.dube@gmail.com>

* Now the captcha can be requested on condition, this llaows extenstions to control wether a captcha should be required,
I fixed the code in CaptchaModule to use config
and got rid of the lines that made captcha middleware available since it wasn't used anywhre

* I split the middleware into two distinct parts, so that the frontend can now determine captach requirements. PuterHomePageService can set GUI parameters for captcha requirements. The /whoarewe endpoint provides captcha requirement information and the extensuo system integration is maintained

* Fix security issues with password handling in URL query parameters

* Made sure that the enter key, submits the login request instead of refreshing the captcha

* In development we can now disable the Captcha verification system by running it with CAPTCHA_ENABLED=false npm start

* Went back and modified checkCaptcha so that it checks at the start to check what CAPTCHA_ENABLED is equal to

* Refactor captcha system to use configuration values instead of environment variables

* Fix captcha verification and align with project standards

* Update src/backend/src/modules/captcha/README.md

Co-authored-by: Eric Dubé <eric.alex.dube@gmail.com>

* fix: incorrect service name

* dev: use Endpoint for captcha endpoints

Use Endpoint class, which uses eggspress behind the scenes, which handles
async errors in handlers automatically.

* dev: add extension support and simplify captcha

- removed extra error handling
- removed dormant code
- no distinction between login and signup (for now)

* clean: remove local files

* fix: undefined edge case

---------

Co-authored-by: Eric Dubé <eric.alex.dube@gmail.com>
2025-03-28 19:46:56 -04:00
Arunabh Sharma
9626175d3a chore: upgrade supported node version to 23.9 (#1184)
* upgrade node version to 23.9

* update package-lock.json
2025-03-15 16:03:46 -04:00
KernelDeimos
29834f02c0 release: 2.5.1 2025-02-13 21:50:39 -05:00
KernelDeimos
b74ec1f69c dev: add Gemini support (non-streaming) 2025-02-11 14:57:17 -05:00
KernelDeimos
2b0e173975 dev: add convert module (and ConvertAPI) 2025-02-06 17:34:57 -05:00
KernelDeimos
eac2ddf8da sync: backend ver with puter ver 2025-01-09 19:07:31 -05:00
KernelDeimos
740fdb592e fix: test for get-launch-apps 2025-01-09 11:10:41 -05:00
KernelDeimos
5ed2f39ec7 dev: add Amazon SNS integration
There were a few things which made this rather difficult:
- AWS SDK doesn't appear to have a utility to validate message
  signatures.
- The only available node.js module that does this is known to be
  unreliable.
- SNS sends 'text/plain' MIME type even though the data is in JSON
  format, so a middleware had to be added to account for this.
- We don't accept POST requests with no Origin header. Since SNS doesn't
  send the Origin header, an exception had to be made for this.
- The endpoint needs to be public and SNS doesn't seem to have a
  proxying utility for developers such as what Stripe has.
- Because of the above point, debugging time was affected by deployment
  time to the staging server.
2024-12-23 14:53:18 -05:00
KernelDeimos
3da571c39a test: unit-test get-launch-apps 2024-12-20 12:07:34 -05:00
KernelDeimos
c6c3844763 chore: update kv.js 2024-12-20 12:07:24 -05:00
KernelDeimos
2dd9417234 dev: get token counts on all services 2024-11-26 16:45:33 -05:00
KernelDeimos
cf24c3dd2a rename 2024-08-29 22:21:07 -04:00
KernelDeimos
3361043b9d chore: rename putil 2024-08-29 14:14:35 -07:00
KernelDeimos
7f9d1e90b1 chore(puterai): update model 2024-08-23 16:09:22 -04:00
KernelDeimos
53e7a91f18 feat(puterai): add groq 2024-08-23 00:16:29 -04:00
KernelDeimos
055c628afd feat(puterai): add mistral 2024-08-22 23:28:08 -04:00
KernelDeimos
bdfdf2331b feat(puterai): add togetherai 2024-08-21 23:17:02 -04:00
KernelDeimos
d009cd0aaf feat(puterai): add claude 2024-08-21 18:31:16 -04:00
KernelDeimos
ceecf54357 chore: sync versions 2024-08-17 15:13:12 -04:00
KernelDeimos
d032ab7d24 chore: update tiktoken 2024-08-14 21:08:29 -04:00
KernelDeimos
cea29645fe feat: add message encryption between Puter peers 2024-08-08 15:13:32 -04:00
KernelDeimos
78fa77d920 feat: add tts driver to puterai module 2024-08-03 21:07:56 -04:00
KernelDeimos
f924d48b02 feat: add textract driver to puterai module 2024-08-03 21:07:56 -04:00
KernelDeimos
02504690cf test: add database migration tests 2024-07-28 04:02:16 -04:00
KernelDeimos
2a5cec7ee9 fix: add necessary iframe attributes for co isolation 2024-07-20 18:54:08 -04:00
KernelDeimos
a43cab0c93 refactor: move puter gui to workspace 2024-07-07 17:12:55 -04:00