mirror of
https://github.com/HeyPuter/puter.git
synced 2026-11-01 23:06:52 +01:00
Page:
src backend src modules test_drivers requests
Pages
AI
Home
README
api README
api concepts share_link
api drivers
api group
api notifications
api share
api type_tagged
api types app_share
api types file_share
backend Kernel
backend README
backend contributors boot_sequence
backend contributors modules
backend contributors structure
backend features protected_apps
backend features service_scripts
backend howto_make_driver
backend lists_of_things list_of_permissions
backend lists_of_things list_of_tto_types
backend modules puterai requests
backend modules test_drivers requests
backend notes 2024_10_03_email_in_use_checks
contributors comment_prefixes
contributors email_testing
contributors extensions README
contributors extensions definitions
contributors extensions events
contributors extensions
contributors structure
contributors vscode
devmeta track_comments
docmeta
gui webpack_attempts
phoenix missing_posix
phoenix parser
planning alternatives_to_$
planning micro_modules
prod
scratch
self_hosters config
self_hosters config_values
self_hosters credit_context
self_hosters domains
self_hosters first_run_issues
self_hosters instructions
self_hosters support
src backend A&A auth
src backend A&A permission
src backend A_and_A auth
src backend A_and_A permission
src backend Kernel
src backend README
src backend contributors boot_sequence
src backend contributors coding_style
src backend contributors modules
src backend contributors structure
src backend features batch_and_symlinks
src backend features metered_services
src backend features protected_apps
src backend features service_scripts
src backend howto_make_driver
src backend lists_of_things list_of_permissions
src backend lists_of_things list_of_tto_types
src backend modules puterai README
src backend notes 2024_10_03_email_in_use_checks
src backend services config
src backend services log
src backend src modules puterai README
src backend src modules puterai ai_services_config
src backend src modules puterai api_examples
src backend src modules puterai config
src backend src modules puterai contributors ai_usage_testing
src backend src modules puterai requests
src backend src modules test_drivers requests
src gui el()
src gui webpack_attempts
src phoenix missing_posix
src phoenix parser
testing_with_email
tools api_tester cartesian
uncategorized README
uncategorized es6_note
uncategorized puter_mods
No results
1
src backend src modules test_drivers requests
KernelDeimos edited this page 2025-02-25 15:04:16 -05:00
blob = await (await fetch("http://api.puter.localhost:4100/drivers/call", {
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
"body": JSON.stringify({
interface: 'test-image',
method: 'get_image',
args: {
source_type: 'string:url:web'
}
}),
"method": "POST",
})).blob();
dataurl = await new Promise((y, n) => {
a = new FileReader();
a.onload = _ => y(a.result);
a.onerror = _ => n(a.error);
a.readAsDataURL(blob)
});
URL.createObjectURL(await (await fetch("http://api.puter.localhost:4100/drivers/call", {
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
"body": JSON.stringify({
interface: 'test-image',
method: 'echo_image',
args: {
source: dataurl,
}
}),
"method": "POST",
})).blob());
await(async () => {
blob = await (await fetch("http://api.puter.localhost:4100/drivers/call", {
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
"body": JSON.stringify({
interface: 'test-image',
method: 'get_image',
args: {
source_type: 'string:url:web'
}
}),
"method": "POST",
})).blob();
const endpoint = 'http://api.puter.localhost:4100/drivers/call';
const body = {
object: {
interface: 'test-image',
method: 'echo_image',
['args.source']: {
$: 'file',
size: blob.size,
type: blob.type,
},
},
file: [
blob,
]
};
const formData = new FormData();
for ( const k in body ) {
console.log('k', k);
const append = v => {
if ( v instanceof Blob ) {
formData.append(k, v, 'filename');
} else {
formData.append(k, JSON.stringify(v));
}
};
if ( Array.isArray(body[k]) ) {
for ( const v of body[k] ) append(v);
} else {
append(body[k]);
}
}
const response = await fetch(endpoint, {
method: 'POST',
headers: { 'Authorization': `Bearer ${puter.authToken}` },
body: formData
});
const echo_blob = await response.blob();
const echo_url = URL.createObjectURL(echo_blob);
return echo_url;
})();
General
API
- Index (README.md)
- api drivers
- Group Endpoints
- Notification Endpoints
- Share Endpoints
- Type-Tagged Objects
Concepts
Types
For Contributors
- Comment Prefixes
- contributors vscode
- Local Email Testing
- Puter Extensions
- Repository Structure and Tooling
Extensions
Devmeta
Planning
- Micro Modules
- [planning alternatives_to_
](planning-alternatives_to_)
Self_hosters
- Configuring Domains for Self-Hosted Puter
- Configuring Puter
- First Run Issues
- self_hosters config_values
- self_hosters support
- Self-Hosting Puter
Src
Backend
A_and_A
For Contributors
- Backend Style
- Puter Backend - Directory Structure
- Puter Backend Boot Sequence
- Puter Kernel Moduels and Services
Features
- Batch and Symlinks
- Metered Services and Cost Management
- Protected Apps and Subdomains
- Service Scripts
Lists_of_things
Modules
Puterai
Notes
Services
Src
Modules
Puterai
- Index (README.md)
- Configuring AI Services
- PuterAI API Request Examples
- src backend src modules puterai config
####### For Contributors
Test_drivers
Gui
Phoenix
Tools
Api_tester
Uncategorized
This wiki is generated from the repository. Do not edit files the wiki.
You are reading documentation for Puter, an open-source high-level operating system.
Getting started with Puter on localhost is as simple as:
git clone https://github.com/HeyPuter/puter.git
npm install
npm run start