Commit Graph

114 Commits

Author SHA1 Message Date
ProgrammerIn-wonderland
d105b341d5 Entri token service 2025-08-14 18:32:22 -04:00
Nariman Jelveh
2cd3245b49 Update package-lock.json 2025-07-27 15:35:50 -07:00
KernelDeimos
963b248582 fix: get sharp far away from bundlers as possible 2025-07-10 16:20:12 -04:00
KernelDeimos
4575b24c51 chore: update sharp because GH issue template 2025-07-10 14:30:00 -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
KernelDeimos
f3c658c011 chore: sync package-lock.json 2025-07-04 18:30:00 -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
jelveh
75d22b010c Update package-lock.json 2025-06-27 23:09:25 -07:00
Nariman Jelveh
196f996435 Merge branch 'main' into feature/desktop-shortcut-link 2025-06-27 22:45:38 -07:00
jelveh
1ad113bbbf Update package-lock.json 2025-06-26 22:59:02 -07:00
KernelDeimos
60a9be12ba fix: update package-lock.json 2025-06-25 15:00:07 -04:00
KernelDeimos
2d9526ba40 fix: install 2025-06-21 22:00:26 -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
KernelDeimos
7a3365a25c refactor: begin migrating utility code
I'm calling this approach a "re-core"; see src/backend-core-0/README.md
for more information about this.
2025-03-31 22:09:29 -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
KernelDeimos
f73958ee8c chore: update package-lock.json 2025-03-28 05:01:49 -04:00
Krista Vlastou
4b7e09e157 fix: npm install error on Windows (spawn EINVAL) (#1214) 2025-03-26 14:58:46 -04:00
rodrick-mpofu
94853d33bf Implement link shortcut feature (refs #682) 2025-03-25 02:24:20 -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
Ntwari Bruce
7ed779bbf3 feat: enhanced ai command to perfom other commands (#1156)
* Enhanced ai command to perfom other commands

* Enhance AI Command in Puter's shell
2025-03-08 17:47:53 -05:00
KernelDeimos
e6b3cb3666 fix: get event docs back in sync
I used 'fix' for this instead of 'doc' because I am also adding a
package for code that generates markdown, so this doesn't have the
zero-risk nature typically associated with a "doc: " commit.
2025-02-25 17:52:54 -05:00
KernelDeimos
04f9225af3 chore: update package-lock.json 2025-02-25 17:48:03 -05:00
KernelDeimos
d081c4f2fe fix(security): patch express via path-to-regexp
As far as I can tell from the block post:
https://blakeembrey.com/posts/2024-09-web-redos/
this vulnerability should not affect releases of Puter before this
update because we do not have any routes with multiple parameters where
the second parameter does not start with '.' or '/'.

However, for the sake of good security hygiene and so `npm audit` looks
nice, we're upgrading the package. (better late than never)
2025-02-21 23:42:47 -05: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
jelveh
1e5deabcdb Update package-lock.json 2025-02-06 18:20:12 -08:00
KernelDeimos
28c5800d06 sync: package-lock.json 2025-01-10 10:27:40 -05:00
KernelDeimos
740fdb592e fix: test for get-launch-apps 2025-01-09 11:10:41 -05:00
KernelDeimos
3097b86597 fix: add package-lock.json 2025-01-09 10:24:12 -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
90967ab109 dev: add ico support 2024-12-18 12:05:11 -05:00
KernelDeimos
20d27d59bf dev: create pre-sized icons for apps 2024-12-17 12:57:03 -05:00
Nariman Jelveh
40ea2a3f02 Revert "Created test cases for issue #878 " 2024-12-08 11:31:47 -08:00
Nariman Jelveh
c8894c7d4c Merge branch 'main' into warning_dialog 2024-12-08 11:29:52 -08:00
e5z26
2ca1f71595 removed jsdom in test file
removed because wasn't being used
2024-12-07 19:09:22 -05:00
KernelDeimos
c87db23faa refactor: combine parsely and strataparse into @heyputer/parsers 2024-12-06 15:08:23 -05:00
KernelDeimos
d1e8d51173 clean: remove contextlink
Updates references in phoenix shell to use context from putility.
2024-12-06 11:17:14 -05:00
KernelDeimos
9e5429b9ab dev: improve module docgen
- fixes some bugs
- adds list of relative requires
2024-12-04 10:43:49 -05:00
KernelDeimos
c1bcd84715 chore: update package-lock.json 2024-12-03 17:07:37 -05:00
KernelDeimos
857718538b fix: update package-lock.json 2024-12-02 10:26:52 -05:00
KernelDeimos
3d2648e4ec chore: update package-lock.json 2024-12-01 15:29:35 -05:00
KernelDeimos
2dd9417234 dev: get token counts on all services 2024-11-26 16:45:33 -05:00
jelveh
be36d31509 feat: allow developers to set social media images for their apps 2024-11-22 17:59:00 -08:00
jelveh
70096a8d6f fix(deps): update multiple dependencies 2024-11-22 06:35:22 -08:00
jelveh
2d4312972a feat: automatically open the browser when starting Puter 2024-11-21 22:51:43 -08:00
KernelDeimos
6e1ed7ab04 dev: update emu load indicator 2024-09-30 16:50:03 -04:00
KernelDeimos
08601ae2af feat: progress indicator for emulator 2024-09-25 23:47:10 -04:00
KernelDeimos
cc4ab1cb36 fix: html-webpack-plugin dev dep 2024-09-04 23:56:23 -04:00