GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - jonascript/feathers-airtable: A Feathers Common API service for Airtable

BranchesTags
Open more actions menu

Latest commit

 

History

37 Commits
37 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
lib
lib
 
 
src
src
 
 
test
test
 
 
.babelrc
.babelrc
 
 
.editorconfig
.editorconfig
 
 
.env.sample
.env.sample
 
 
.gitignore
.gitignore
 
 
.istanbul.yml
.istanbul.yml
 
 
.npmignore
.npmignore
 
 
.travis.yml
.travis.yml
 
 
CHANGELOG.md
CHANGELOG.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
feathers-airtable-demo.gif
feathers-airtable-demo.gif
 
 
mocha.opts
mocha.opts
 
 
package-lock.json
package-lock.json
 
 
package.json
package.json
 
 

Repository files navigation

feathers-airtable

This module wraps airtable in feathers common API to make it callable by frameworks such as React Admin.

This is currently Alpha.

To Do

  • Multi option
  • Allow Airtable specific whitelist calls

Demo of feathers airtable

$ npm install --save feathers-airtable

Important: feathers-airtable implements the Feathers Common database adapter API and querying syntax.

API

service(options)

Returns a new service instance initialized with the given options.

const service = require('feathers-airtable');

app.use('/my-table', service({
  apiKey: '123123213'
  baseId: '123123'
  tableName: 'Table 1'
}));
app.use('/my-table', service({ apiKey, baseId, tableName }));

Options:

  • apiKey (required) - Airtable API Key
  • tableName (required) - Name of your table
  • baseId (required) - (e.g. appAbba123456)

Example

See the clients chapter for more information about using Feathers in the browser and React Native.

Server

import feathers from '@feathersjs/feathers';
import airtable from 'feathers-airtable';

const app = feathers()
  .use('/my-table', airtable({
    apiKey: '123123213'
    baseId: '123123'
    tableName: 'Table 1' 
  }));

const myTable = app.service('my-table');

myTable.create({
  text: 'Message from React Native'
});

Browser

I would strongly recommend not using this in the browser directly as Airtable API key grants full permissions!

Developing

To develop you need to do the following

  1. copy the .env.sample file into .env and
  2. Create a test Base and Table and fill in the values to match
  3. Run the test by doing jest -i or jest --watch -i (i makes sure the tests are run sequentially)
  4. The tests should clean up the records in the DB but if you get odd failing tests do to stray records while developing you can simply delete the records in the table.
  5. DON'T ever set to live data as it could be destructive.

License

Copyright (c) 2020

Licensed under the MIT license.

About

A Feathers Common API service for Airtable

Topics

feathers-servicefeathers-service-adapterfeathersjs

Resources

Readme
MIT license

Contributing

Contributing
Activity

Stars

7 stars

Watchers

1 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.