Dhravya / supermemory

Build your own second brain with supermemory. It's a ChatGPT for your bookmarks. Import tweets or save websites and content using the chrome extension.

Home Page:https://supermemory.ai

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Safari version?

LuiFerreiraD opened this issue · comments

Will there be a Safari extension anytime?

right now it's just me and @yxshv developing it so supporting a safari extension would be quite time consuming for us.

we have big goals with this project, so we will first work on that and then with enough bandwidth, will make the extension!

Haven't tried it yet, but Apple provides an automatic converter: Converting a web extension for Safari

A bookmarket could also work. It looks like it could be adapted from the sendUrlToAPI function you have in the extension app. And change the backendUrl when selfhosting. I'll give it a once i get it up and running self hosing. There could be issues with CORS.

Here's a very rough bookmarket

javascript: (function() {
  const endpoints = [
    'https://your-production-api-endpoint.com/api/',  // Production API endpoint
    'http://localhost:3000/api/'                     // Development API endpoint
  ];
  const data = { url: window.location.href };  // Data to be sent

  Promise.all(endpoints.map(url =>
    fetch(url, {
      method: 'POST',   // Use 'POST' or 'GET' as required by your API
      headers: {
        'Content-Type': 'application/json'
      },
      body: JSON.stringify(data)
    })
    .then(response => {
      if (!response.ok) {
        throw new Error(`Failed to save at ${url}: ${response.statusText}`);
      }
      return response.json();
    })
  ))
  .then(results => {
    alert('Website saved successfully to all endpoints!');
  })
  .catch(error => {
    console.error('Error:', error);
    alert('Error occurred: ' + error.message);
  });
})();

One-Line format

javascript:(function(){const endpoints=['https://your-production-api-endpoint.com/api/','http://localhost:3000/api/'];const data={url:window.location.href};Promise.all(endpoints.map(url=>fetch(url,{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify(data)}).then(response=>{if(!response.ok){throw new Error(`Failed to save at ${url}: ${response.statusText}`);}return response.json();}))).then(results=>{alert('Website saved successfully to all endpoints!');}).catch(error=>{console.error('Error:',error);alert('Error occurred: '+error.message);});})();

This could definitely work, JWT shouldn't be needed if the cookie is stored already (user is authenticated)