PocketBase on avoimen lähdekoodin taustaohjelma, joka koostuu sulautetusta SQLite-tietokannasta, jossa on tietojen validointi, reaaliaikaiset tilaukset ja helppokäyttöinen REST API. Se tarjoaa myös todennusta ja tiedostojen tallennusta mediatiedostoille.
PocketBase on täydellinen projekteihin, joille et halua rakentaa taustajärjestelmää aikarajoitusten tai mukavuuden vuoksi, koska se on täysin kannettava ja vaatii vain vähän asennusta. Se integroituu myös suosittuihin teknologioihin, kuten Vue, Svelte, React, Angular ja Flutter.
PocketBasen tarjoamat palvelut
PocketBase tarjoaa suurimman osan muiden taustapalveluntarjoajien, kuten SupaBasen, tarjoamista palveluista.
- SQLite-tietokanta: PocketBase sisältää sulautetun SQLite-tietokannan. Tämä eroaa muista taustapalveluntarjoajista, jotka käyttävät suurempia tietokantoja, kuten PostgreSQL tai MySQL. SQLiten käyttö tekee PocketBasesta kevyemmän. Voit myös tilata reaaliaikaisia tietokantatapahtumia API: n kautta.
- Todennus: PocketBase tukee sähköpostin/salasanan todennusta ja OAuth2-todennus Facebookin, Googlen, GitLabin ja GitHubin kautta.
- Tiedostojen tallennus: Voit ladata valokuvia, ääni- ja videotiedostoja paikalliseen tallennustilaan tai S3-ämpäriin PocketBasen avulla.
- Järjestelmänvalvojan hallintapaneeli: Järjestelmänvalvojan hallintapaneelin avulla voit luoda ja hallita kokoelmia tietokannassa. Voit myös ladata tiedostoja, tarkastella lokitiedostoja ja määrittää sähköpostien lähetysasetukset,
Asiakirjojen mukaan PocketBase voi palvella helposti yli 10 000 samanaikaista ja jatkuvaa reaaliaikaista palvelua yhteydet kuudella virtuaalisella yksityispalvelimella, joten se on edullinen taustavaihtoehto pienille ja keskisuurille sovellukset.
Huomaa, että PocketBase skaalautuu vain pystysuunnassa. Tämä tarkoittaa, että sinun on lisättävä enemmän prosessoria ja RAM-muistia prosessointitehon lisäämiseksi. Jos sinulla on suuri sovellus, harkitse a taustapalveluntarjoaja, kuten Firebase joka mahdollistaa vaakasuuntaisen skaalauksen.
PocketBasen käytön aloittaminen
Tällä hetkellä PocketBase tarjoaa kaksi SDK: ta:
- JavaScript SDK, jota voit käyttää JavaScript-kehysten, kuten Svelte, React, Vue ja Angular, kanssa.
- Dart SDK for Flutter-sovellukset.
Helpoin tapa aloittaa on lataa PocketBase. Linkkejä on useita, joten varmista, että lataat ympäristösi kanssa yhteensopivan.
Kun olet ladannut sen, pura se ja siirry pocketbase-kansioon. Suorita sitten tämä komento terminaalissa:
./pocketbase palvelee
Tämän komennon pitäisi käynnistää verkkopalvelin näillä reiteillä.
- Palvelin: http://127.0.0.1:8090/
- REST API: http://127.0.0.1:8090/api/
- Järjestelmänvalvojan käyttöliittymä: http://127.0.0.1:8090/_/
Navigoi kohtaan http://127.0.0.1:8090/_/ URL-osoite ensimmäisen kokoelmasi luomiseen järjestelmänvalvojan hallintapaneelin avulla.
Kokoelman luominen PocketBaseen
Kun avaat järjestelmänvalvojan käyttöliittymän ensimmäisen kerran, se pyytää sähköpostiosoitetta ja salasanaa järjestelmänvalvojan tilin luomiseksi.
Tältä järjestelmänvalvojan käyttöliittymä näyttää:
Napsauttamalla Uusi kokoelma -painike järjestelmänvalvojan käyttöliittymässä avaa kokoelmapaneelin, jonka voit täyttää tiedoilla luodaksesi uuden kokoelman.
Näin voit luoda kokoelman nimeltä todos, joka koostuu otsikosta ja täytetyistä kentistä:
Kokoelma voi olla joko perus- tai todistuskokoelma. Peruskokoelma on oletuskokoelmatyyppi, ja voit käyttää sitä kaikentyyppisille tiedoille. Todennuskokoelma sisältää ylimääräisiä kenttiä käyttäjien hallintaa varten, kuten käyttäjänimi, sähköpostiosoite ja vahvistettu.
Sinun ei tarvitse käyttää järjestelmänvalvojan käyttöliittymää kokoelman luomiseen. voit luoda sellaisen Web API: n avulla. PocketBase-dokumentit tarjota SDK-kohtaisia esimerkkejä kokoelmien luomisesta ja hallinnasta API: n kautta. Voit luoda, tarkastella, päivittää, poistaa tai tuoda kokoelmia.
PocketBasen käyttäminen React-sovelluksessa
JavaScript SDK: n avulla voit olla vuorovaikutuksessa React-projektin PocketBasen kanssa.
Jos haluat seurata mukana, aloita React-projektin luominen.
Asenna sitten PocketBase JavaScript SDK React-projektiisi npm: n kautta:
npm install pocketbase --save
Seuraavaksi tuo PocketBase app.js: ssa ja alusta se.
tuonti PocketBase alkaen'taskukanta';
konst pb = Uusi PocketBase(' http://127.0.0.1:8090');
Havainnollistaaksesi, kuinka PocketBase integroi Reactin, luo aputoiminnot tehtäväsovellukselle. Nämä toiminnot luovat, päivittävät, hakevat ja poistavat kohteita.
Luo Todo-kohde
Luo app.js: ssa funktio nimeltä addTodo.
konst addTodo = asynk (tehtävä) => {
yrittää {
konst ennätys = odottaaodottaa pb.collection("tehtävät").luoda (tehtävä);
palata ennätys;
} ottaa kiinni (virhe) {
palata { virhe: virheviesti };
}
};
Tämä toiminto lisää uuden tietueen todos-kokoelmaan.
Päivitä Todo-kohde
Jos haluat päivittää tietueen tehtäväkokoelmassa, luo toiminto nimeltä updateTodo ja käytä päivitysmenetelmää.
konst updateTodo = asynk (tietueen_tunnus, tehtävä) => {
yrittää {
konst ennätys = odottaa pb.collection("tehtävät").päivitys (tietueen_tunnus, tehtävä);
palata ennätys;
} ottaa kiinni (virhe) {
palata { virhe: virheviesti };
}
};
UpdateTodo-toiminto löytää tehtävän tietueen tunnuksen perusteella ja päivittää sen uusilla tiedoilla.
Poista Todo-kohde
Luo app.js: ssa toiminto nimeltä deleteTodo, joka poistaa tietueen tehtäväkokoelmasta.
konst deleteTodo = asynk (tietueen_tunnus) => {
yrittää {
odottaa pb.collection("tehtävät").delete (tietueen_tunnus);
} ottaa kiinni (virhe) {
palata { virhe: virheviesti };
}
};
Hae Todo-kohde
Voit noutaa yksittäisen tehtäväkohteen tai kaikki kohteet kokoelmasta.
Tämä toiminto hakee yksittäisen tehtäväkohteen tunnuksella:
konst getTodo = asynk (tietueen_tunnus) => {
yrittää {
konst ennätys = odottaa pb.collection("tehtävät").getOne (tietueen_tunnus, {
laajentaa: "relField1,relField2.subRelField",
});
palata ennätys
} ottaa kiinni (virhe) {
palata { virhe: virheviesti };
}
};
Vaikka alla oleva toiminto noutaa kaikki tehtäväkokoelman tietueet:
konst getTodos = asynk (tietueen_tunnus) => {
yrittää {
konst kirjaa = odottaa pb
.kokoelma("tehtävät")
.getFullList(200 /* eräkoko */, {
järjestellä: "- luotu",
});
palata kirjaa;
} ottaa kiinni (virhe) {
palata { virhe: virheviesti };
}
}
Voit käyttää näitä toimintoja sovelluksen käyttöliittymän luomiseen ja päivittämiseen.
Katso tarkempia esimerkkejä kohdasta PocketBase Records API dokumentaatio tai luotu API-dokumentaatio kohdassa "Järjestelmänvalvojan käyttöliittymä > Kokoelmat > API-esikatselu". Sinun pitäisi pystyä käyttämään kokoelmasi luetteloa, tarkastella, luoda, päivittää, poistaa ja reaaliaikaista dokumentaatiota.
Miksi sinun pitäisi käyttää PocketBasea
PocketBase on paras taustaohjelma pienille ja keskisuurille projekteille. Se vaatii minimaalisen asennuksen ja on helppokäyttöinen. Se tarjoaa kaksi asiakas-SDK: ta – JavaScript SDK: n ja Dart SDK: n – ja voit käyttää sitä verkko- ja mobiilisovelluksissa.
PocketBase on myös itseisännöivä, ja voit isännöidä sitä paikallisella palvelimella tai VPS: llä. Vaikka se ei tue pilvitoimintoja, voit käyttää sitä Go-kehyksenä ja luoda oman sovelluksesi mukautetulla liiketoimintalogiikalla.