jpillora / jpillora/node-edit-google-spreadsheet

Feature: Row API (List-based Feeds)

Open
#59 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement help wanted
Dominant language
JavaScript
Stars
301
Forks
98
PR merge metrics
No merged PRs in 30d

Description

Looking for Contributors Please look through these notes and then the source and if you decide to give this a shot, mention that you're working on this in the comments below and I'll give you push access.


Currently, this module only uses cell-based feeds, though there is also a row-based REST API: https://developers.google.com/google-apps/spreadsheets/#working_with_list-based_feeds. I haven't researched too deep into the REST API, though I think it would result in a module API like:

//add a new 'row' property
spreadsheet.rows.get(function(err, rows) {
  //get all rows
});

spreadsheet.rows.query({my:"query"}, function(err, rows) {
  //get specific rows
});

spreadsheet.rows.add({name:"foo",age:25}, function(err, newRow) {
  //insert a row
});

//each of the row objects above have:
row.update({name:"bar"}, function(err) {
   //updates this row inplace
});
row.delete(function(err) {
  //deletes this row and shifts up
});

Read through the docs and comment on the proposed API above, I may have missed something.

If the worksheets API feature is also being done, the rows object would a go inside each worksheet, and then be aliased from spreadsheet.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the linked Google list-based feeds documentation and inspect the source's existing cell-based feed implementation. Compare the proposed rows.get, query, add, update, and delete entry points with current conventions, then define a concrete scope and acceptance criteria for the row API.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.