heyputer / puter Goto Github PK
View Code? Open in Web Editor NEWπ The Internet OS! Free, Open-Source, and Self-Hostable.
Home Page: https://puter.com
License: GNU Affero General Public License v3.0
π The Internet OS! Free, Open-Source, and Self-Hostable.
Home Page: https://puter.com
License: GNU Affero General Public License v3.0
https://puter.com/
500 Internal Server Error
nginx/1.18.0 (Ubuntu)
Hi
When I start puter with $ npm start obtain this error:
"$ npm start
[email protected] start
nodemon --exec "node dev-server.js"
[nodemon] 3.1.0
[nodemon] to restart at any time, enter rs
[nodemon] watching path(s): .
[nodemon] watching extensions: js,json,mjs,jsx,svg,css
[nodemon] starting node dev-server.js
/home/seby/puter/dev-server.js:9
const env = argv[2] ?? "dev";
^
SyntaxError: Unexpected token '?'
at wrapSafe (internal/modules/cjs/loader.js:915:16)
at Module._compile (internal/modules/cjs/loader.js:963:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
at Module.load (internal/modules/cjs/loader.js:863:32)
at Function.Module._load (internal/modules/cjs/loader.js:708:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
at internal/main/run_main_module.js:17:47
[nodemon] app crashed - waiting for file changes before starting..."
Oh boy, where do I even start with this? A mockery of open source? No, that's too kind, this is more like open source crucifixion. The epitome of all things profane in the world of code, you've managed to make a farce of the one thing that separates us from the corporate, money-grabbing monopolists.
Your "open source" client for a closed service? That's a joke. I mean, are you trying to be funny? Because if it's humor you're going for, you might want to consider a career in stand-up comedy. You'll do less damage there.
Why did you even bother with the pretense of open source? Open source implies freedom, transparency, honesty - none of which I'm seeing here, buddy. It's like you're selling canned air for people to breathe.
In my four-and-a-half decades, I've seen some imbecilic abominations but, this... this is a new high in lows. Do you even understand what open source is? Do you? Because this, my dear friend, is a slap in the face to every developer who spends countless hours working on real open source projects.
How about trying to contribute something worthwhile to the community instead of writing a glorified API wrapper and slapping the open source label on it like it's some kind of badge of honor. It doesn't make your client less problematic, it just makes you look even more idiotic.
Oh, and on a side note: if you want to show off your programming skills, how about you release something that isn't a textbook example of how not to write software? You're making it cry.
So, in conclusion: clean up your act, learn what open source actually means, and start respecting the ethos of the community you're pretending to be part of. And for heaven's sake, please, take a C language course or two. It's just becoming embarrassing now.
It gives error accessing the page code.puter.com
Using another browser gives the same error.
Why is the app hosted on another server and not integrated directly using the vscode page
It would be great if puter.com worked as a PWA. I tried installing it on my phone but the home screen icon simply opened the site in my default browser.
As a PWA, the address bar and other browser controls would be hidden, giving more space to work.
When running npm start
, there are errors that can happen based on the environment. For example, a version of node
that we don't support or packages missing because npm install
wasn't run. While we should state this in the README.md file, I think it would also be very helpful if the error messages for common first-time errors that we know about are more friendly then Syntax Error: Unexpected token '?'
Hey guys, do you have road map to support git and github support in code? It will be really great feature for everybody using puter for development.
Btw, I really love the work you guys done.
I tried to capture images several times using the Camera application but the capture button is not working properly. I click multiple times, and then suddenly an image is captured. I don't know which click is working.
Another problem is that the captured image is not saved anywhere.
Hi! I have been trying to deploy to Cyclic for about 3 hours now. (I use Cyclic because I'm broke and I can't afford paid site hosting) I'm a bit of a beginner so sorry if I've made any stupid mistakes. I started by building it with npm run build. I then created index.html outside of the /dist directory. For the index.html file I used the provided code in the production tutorial. I then tried to deploy it to Cyclic, but it gave me some error about the package.json file saying that nodemon is for development only, not production. I set the root path and the output path just to /. I have even tried changing them both, but it hasn't helped. I've been playing around with the package.json file for a while now trying to get it to work. Here is the current package.json file:
{ "name": "puter.com", "version": "1.0.0", "author": "Puter Technologies Inc.", "license": "AGPL-3.0-only", "description": "Desktop environment in the browser!", "homepage": "https://puter.com", "directories": { "lib": "lib" }, "devDependencies": { "chalk": "^4.1.0", "clean-css": "^5.3.2", "html-entities": "^2.3.3", "webpack": "^5.88.2", "express": "^4.18.2", "nodemon": "^2.0.22", "uglify-js": "^3.17.4", "webpack-cli": "^5.1.1" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "node --exec \"node dev-server.js\" ", "build": "node ./build.js" }, "nodemonConfig": { "ext": "js, json, mjs, jsx, svg, css", "ignore": [ "./dist/", "./node_modules/" ] } }
Here is a screenshot of the current error:
I'm new to Github, sorry if I formated the code wrong
I was reading the Cyclic docs, and it says that the failed to run error comes from the package.json not being in the build folder, but if the build folder is /, and the package.json is in that directory, why can't it run?
Note: Changing it back to nodemon in the start script allows it to work in the terminal, but not Cyclic.
Help would be appreciated. Thanks!
In the current implementation, whenever a user initiates a move or copy operation for files or folders, a progress window appears immediately. This behavior, while informative for lengthy operations, can be unnecessarily intrusive for operations that are completed within a short time frame (< 2 seconds). To enhance the user experience, the progress window's appearance should be delayed, showing up only if the operation exceeds 2 seconds.
Expected Behavior:
Whenever I click "Upload Your App," it takes me to the Dev Center, but never shows UI or anything for uploading an app. Could I have a little help, please?
Currently, when users input their password on the login form, the characters are masked, and there's no option to view the entered password. This can lead to increased login failures due to typographical errors, especially on mobile devices or for users with accessibility needs.
Integrate a toggle button (typically an eye icon) within the password input field. Clicking the toggle should switch the input type between "password" and "text", allowing users to temporarily see their password in plaintext. Ensure the default state is to hide the password, preserving security and privacy.
Here's facebook's implementation:
The locally launched service still uses the online database, and the domain name remains puter.com.
I started a service using npm start and published a folder as a webpage. I noticed that the registration is using a remote online database, the SMTP service is also remote, and the domain name is puter.com. I believe there should be a configuration file for customization.
Hi, guys i try run this on Colab or Hugging face or ... in all of them i can install and run puter correctly and can find open ports and IP
but i cant connect to them. why ?
When a user selects a file(s) and presses the appropriate keyboard shortcut, the system should prompt the user to confirm the permanent deletion of the selected file(s). Upon confirmation, the file(s) would be permanently deleted from the user's filesystem, bypassing the trash.
Currently, when you try to run puter on a subfolder, it redirects to the index after opening/closing applications. Puter works fine until you reload the page. I tried setting the gui_origin
to my subfolder, but it seems to still redirect.
can you add a browser app in the virtual desktop?
Thank you for open sourcing this project!
In my eyes, this is a perfect fit for Docker deployment, used perhaps as a way to manage/access devices at a remote site.
Is Docker on the roadmap?
I would like to build my API server for this front end. It would be helpful if you make the backend open-source as well. I just need the API requests payload's JSON format and the response JSON structure. By the way awesome project man hats off
Users should be able to undo/redo their last action(s). These actions are the minimum we need to support:
Additionally, we need keyboard shortcuts (e.g., Ctrl/Cmd+Z for undo and Ctrl/Cmd+Y or Ctrl/Cmd+Shift+Z for redo).
The current behavior of Puter automatically arranges items on the desktop in a predefined grid pattern. While this ensures a neat and organized appearance, it limits users' ability to personalize their workspace by placing items freely. Implementing an option to disable auto-arrange would allow users to customize their desktop layout to better suit their preferences and workflows.
Expected Behavior:
puter.kv
module could be used for this (docs)When an app window is blurred some essential events are not sent to its iframe. For example, if Dev Center is not in focus and a local item is dragged over the Drop Area, the Drop Area is not activated because the drag event is simply not sent to the iframe.
Another example would be that when an iframe is not focused and a mouse is over it scrolling, the scrollbars in the iframe don't react. This is again because the blurred iframe is not receiving any of the native events (probably because of pointer-event: none
). The default behavior in many desktop environments is that the blurred app still reacts to many of these events.
I followed the instructions to install puter locally. I then pointed Firefox at locahost:4000 and got a log in dialog that offered to create an account. Fillied in the username, etc. and hit the button but it simply reopened the dialog. In Vivalid it works.
We need a SECURITY.md file in the root of this repository, outlining:
This will guide users and contributors to report security concerns responsibly.
How can one enable volume so that we can use this app past any container redeploy
Currently, users are able to upload files directly into the Trash folder. This behavior is counterintuitive, as the Trash is typically used for storing files intended to be deleted, not for receiving new uploads. Allowing uploads directly to Trash can lead to confusion and potential data loss, as users may not realize files have been uploaded to Trash and could permanently delete them.
The Trash folder should not accept any uploads directly from the user interface or via drag-and-drop actions. Attempting to upload files to the Trash should fail with a warning message alert indicating that uploads to Trash are not allowed.
In traditional desktop environments, users have the option to view hidden files, which are often system files or user preferences that are not displayed by default to prevent accidental modifications. This functionality is crucial for advanced users who need to access or modify these files for configuration purposes.
Expected Behavior:
puter.kv
module could be used for this (docs)Great project! Do you plan to release API docs for api.puter.com
?
Using some basic CSS and a little bit of Javascript, could you make the interface adapt to mobile devices? This would just require some small tweaks to the code, but would improve the OS a lot.
Let's go π₯
The old file is not getting replaced properly. The old file icon is still visible.
Can Chinese be supported?
As title says. When I upload something. it either hangs at 100% or just halfway and never uploads. And yes I made an account.
Is server having problems? Or uploading not completely implemented yet?
Thanks
Users often adjust the size of their browser window for various reasons, such as multitasking or changing display settings. Currently, in Puter, resizing the browser can lead to open windows moving out of the viewport, making them inaccessible or partially hidden. This issue can disrupt the user's workflow and requires manual adjustment to bring these windows back into view. Implementing an automatic adjustment feature that ensures all windows remain within the viewport during and after a browser resize would improve usability and UX.
Expected Behavior:
When a user attempts to rename a file and presses the delete key to remove characters from the existing file name, instead of the expected behavior (deletion of characters), the file is immediately moved to the Trash.
Currently, when users hover over a context menu item that has a submenu, the submenu opens as expected. However, if the user's mouse cursor leaves the active menu item even for a brief moment, the submenu immediately closes. This behavior creates a usability issue, as it requires users to maintain hover over the active item while navigating to the submenu. Users naturally tend to move their mouse diagonally towards the submenu, often momentarily leaving the active item's hover area, which results in the submenu closing prematurely.
Current state: This is how the mouse should be moved for the submenu not to close:
To address this issue, it would be beneficial to introduce a grace period that allows the submenu to remain open for a short duration after the mouse leaves the active item. This grace period would provide a more forgiving navigation experience, accommodating natural mouse movement patterns without penalizing slight deviations.
This is a very interesting project , but i think something import is need .
Attempting to log into an existing Puter account throws a CORS error:
jquery-3.6.1.min.js:2 Access to XMLHttpRequest at 'https://puter.com/login' from origin 'http://localhost:4000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
We fixed this for /signup
and I'm assuming the same fix would work for /login
Dockerfile
was just merged so it would be a good idea to add the instructions to ./README.md
π³ π
Some kind of API for apps like allowing you to make a command line tool.
Self explanatory.
Hi everyone,
What is the reason my local reployment wants to establish a websocket with puter.com?
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://puter.com/socket.io/?auth_token=XYZ. (Reason: CORS request did not succeed). Status code: (null).
Firefox canβt establish a connection to the server at wss://puter.com/socket.io/?auth_token=XYZ&transport=websocket&sid=xgBTosy78HgA20tOAK-2. bundle.min.js:126:17426
Is there a way to host the service fully locally, i.e. on a machine without access to the Internet?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.