GithubHelp home page GithubHelp logo

tgel0 / crssnt Goto Github PK

View Code? Open in Web Editor NEW
59.0 1.0 8.0 162 KB

๐Ÿฅ Open-source RSS feed generator for Google Sheets.

Home Page: https://crssnt.com

License: MIT License

JavaScript 100.00%
rss rss-feed rss-generator sheets sheets-api firebase

crssnt's Introduction

crssnt logo

crssnt is an open-source RSS feed generator for Google Sheets. With crssnt, you can create your own custom RSS feed from any data source that you can get displayed in a (public) Google Sheet:

  • existing RSS feeds
  • websites and APIs
  • data from manual input
  • data from Sheets add-ons
  • etc.

Quickstart

The easiest way to generate an RSS feed with crssnt is to add https://crssnt.com/preview/ to the beginning of your public Google Sheet URL, like this:

https://crssnt.com/preview/https://docs.google.com/spreadsheets/d/1wgHZMH8-kQsC0z38mnrfGpR1cgQE7yu2kUQB9On9iJw

There is more details in this blog post.

Data Privacy

No personal data is being stored while using the crssnt feed generator. Some general usage data such as date and time of the request as well as the underlying Google Sheet ID are stored for analytics purposes. You can disable the Sheet ID logging by adding &logging=false to the end of the crssnt feed URL.

Read more here.

For Devs

Installing, Contributing

As explained above, you can use crssnt without any installation by using my free hosted version via https://crssnt.com/preview/. If you want to install it on your own server for exploration or contribution purposes continue reading below.

Crssnt is built with Cloud Functions for Firebase. Check out the official Getting Started Guide to learn more about Firebase Functions.

Once you have installed the Firebase CLI and cloned this repository, you can emulate the function locally by running firebase emulators:start and going to http://localhost:4000/.

License

Licensed under the The MIT License. Copyright 2023 Tomi Gelo.

crssnt's People

Contributors

tgel0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

crssnt's Issues

Feature Request: Allow a header row

It would be handy to be able to have a header row to specify which columns go to which field in the RSS feed.
e.g.
A1: title - All under this go into Title
B1: link - All in this column go to link
C1: description
D1: pubdate
E1: author
F1: guid

This would give more flexibility for crssnt and prevent errors when dates are detected in description/title column

Default Sheet Name 'Sheet1' Suggest

It is displayed in different languages of each country. I often forget this. I often think, "Why isn't it working?"

ENG: Sheet1
Korean: ์‹œํŠธ1

It would be great if you could support in various languages.

&name=movie_manual&mode=manual
I can use this, but I don't use it when it's a single sheet.

Validation Failed

image
The feed caused a problem and did not work. I looked into this problem.

You have unescaped ampersands & in your URL. They either need to be (a) changed to character entities &, or (b) enclosed in a CDATA section.

A CDATA section lets you leave special characters like & unescaped, so that'd be easiest:

https://stackoverflow.com/questions/3431280/validation-failed-entityref-expecting

& was causing trouble.
I changed all & to & in the link
The feed is starting to work.

Google Sheet
Press the shortcut Ctrl+H
If you change all & to &, it will work fine.

years in titles causing title and date fields to get mixed up

I've been trying to figure out why some items in my RSS Feed have titles that look like dates, when the titles look like normal strings in my google sheet. I think titles that have years in them are being mistaken for dates and are pulled out of the row's value array. When this happens, whatever ends up being the first value in the array (in my case, a date field) after the title is removed is used as the RSS item's title.

You can see my RSS feed here: https://crssnt.com/preview/https:/docs.google.com/spreadsheets/d/160ITxx-DvIgBRGarDp40fkRSo0Y77zDyls9fhgEXiRc/edit?usp=sharing

Would it be possible to pull the title field out of the array before searching for the date and url fields, so that it doesn't get confused?

Something like

if(value.length > 0) {      
      let title = value.shift();

      let url = value.find(s => s.startsWith('http'));
      let date = value.find(s => Date.parse(s));

Thanks!

populate a link field

Hello.

I'm not using your project but I found a feed generated by it in my RSS reader bot.

Is it possible to populate a link field for RSS items? currently, only the title contains a link.

Otherwise, users are not able to receive updates

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.