Skip to content

polyfire-ai/polyfire-js

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 

πŸ”₯ polyfire

Documentation | Discord | Dashboard

⚑ An all-in-one managed backend for AI apps. Build AI apps from the frontend, very fast. πŸͺΆ

Why use Polyfire?

  • Just code from the frontend, no backend needed
  • If you already have backend, less code to write
  • Most backend services you'd need in a couple lines of code

We manage your AI backend so you don't have to.

Demo Gif

🧰 Examples

We have several examples in our documentation. But here are two simple ones to get you started

React

import { useState, useEffect } from "react";
import { createRoot } from "react-dom/client";
import { PolyfireProvider, usePolyfire } from "polyfire-js/hooks";

function App() {
  const { auth: { login, status }, models: { generate } } = usePolyfire();
  const [haiku, setHaiku] = useState();

  useEffect(() => {
    if (status === "authenticated") generate("haiku").then(setHaiku);
  }, [status]);

  if (status === "unauthenticated")
    return <button onClick={() => login("github")}>Login with Github</button>;
  else if (status === "loading" || !haiku) return <h1>Loading...</h1>;
  return <h1>{haiku}</h1>;
}

document.body.innerHTML = '<div id="app"></div>';
const root = createRoot(document.getElementById("app"));
root.render(<PolyfireProvider project="your_project_id"><App /></PolyfireProvider>);

Don't forget to change the your_project_id by your project ID you will have got on https://beta.polyfire.com

Vanilla JS

<script src="https://github.com/polyfire-ai/polyfire-js/releases/download/0.2.7/polyfire-min-0.2.7.js"></script>
<script>
	(async () => {
		const polyfire = window.PolyfireClientBuilder({ project: "your_project_id" })
		
		const isAuthenticated = await polyfire.auth.init();
		if (!isAuthenticated) {
		  await polyfire.auth.login("github")
		}
		
		const helloWorld = await polyfire.models.generate("Write me a hello world haiku");
		console.log(helloWorld);
	})()
</script>

Don't forget to change the your_project_id by your project ID you will have got on https://beta.polyfire.com

πŸ†• Getting Started

To get an overview of Polyfire follow this Basic Usage tutorial.

✨ Starter Guides

We also made a couple of tutorials you can use to get started with Polyfire:

πŸ“š Useful References

πŸ”— Links

We're open source! Make a good PR to the JS SDK or the API and we'll merge it.