“One of the unique features that I particularly appreciate is the ability to call backend functions directly from my frontend code, rather than having build a request URL. This has greatly streamlined my workflow and made it much easier to get my projects up and running.”
Jayson Anthony, Full Stack Developer
One command line deploys on Amazon Lambda. Extensible to other platforms, open source. Working to bring our cloud to you. Faster cheaper open source.
Scale backend code automatically to zero or to millions of users with no AWS knowledge.
Know and love React, Svelte or Vue? Use Node.js to write and genezio deploy the complete full-stack app.
Natural function calls for backend method invocation replaces REST bringing type safety, code clarity and auto completion in your favorite IDE.
Escape limitations imposed by Firebase-like frameworks in which the backend is just a database and a few functions, and write full business logic in backend classes.
Share DB connections at the microservice level for fast response times.
export class HelloClass {
helloWorld() {
return "Hello world!";
}
hello(name, location) {
return `Hello, ${name}, from ${location}!`;
}
}
Start from our examples! Pick one and clone it from our GitHub repo. Generally an example has frontend and backend code and a configuration file named genezio.yaml
Type genezio local to start your backend dev environment. Use npm start in the frontend folder. Point your browser to http://localhost:3000/. You are all set!
Once you typed genezio local, an SDK with frontend classes that mirror the backend classes was generated in your frontend folder. The SDK uses JSON RPC to communicate with the backend.
You will need to import the SDK class in your code and call its methods - that's it - enjoy our examples!
We now support Javascript, TypeScript and DART on both the frontend and backend, and Python on the frontend.
At genezio, classes are the basic unit of deployment for the backend. Instead of deploying single functions, we group them into classes for more flexibility and better code readability.
/**
* This is an auto generated code. This code should not be modified since the
* file can be overwritten if new genezio commands are executed.
/*
import { Remote } from "./remote.js"
export class HelloWorldService {
static remote = new Remote(<"PROJECT_URL">)
static async helloWorld() {
return HelloWorldService.remote.call("HelloWorldService.helloWorld")
}
static async hello(name, from) {
return HelloWorldService.remote.call("HelloWorldService.hello", name, from)
}
}
import { useState } from "react"
import { HelloClass } from "./sdk/hello.sdk.js";
const [name, setName] = useState("Billy");
const [location, setLocation] = useState("NY");
const View = () => {
return (
<>
`${HelloClass.hello(name, location)}`
</>
);
};
export default View;
Use genezio deploy at the command prompt in the project folder where the yaml config file resides. This deploys both the backend and the frontend code, if it exists.
First the backend bundle is created and deployed in the genezio cloud that runs on AWS. Then the SDK code is regenerated in the frontend folder. Then the frontend is deployed and the CDN is configured.
It's live now!
Whether you are developing a website or you want to write your first blockchain or AI app, we've got you covered!
Check out our examples!