Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[1.0] Plugins wishlist (and example sites) #1199

Closed
32 of 33 tasks
KyleAMathews opened this issue Jun 17, 2017 · 97 comments
Closed
32 of 33 tasks

[1.0] Plugins wishlist (and example sites) #1199

KyleAMathews opened this issue Jun 17, 2017 · 97 comments
Labels
good first issue Issue that doesn't require previous experience with Gatsby help wanted Issue with a clear description that the community can help with.

Comments

@KyleAMathews
Copy link
Contributor

KyleAMathews commented Jun 17, 2017

There's a lot of plugins that would be fairly easy to write that'd be great to get in. Many would just be basically wrapping either a webpack plugin (e.g. adding support for a CSS preprocessor) or an NPM library (e.g. for transformer plugin). When you create a new plugin, you should also create a companion example site as both a way to demonstrate how the plugin works as well as an integration test for the plugin.

Adding plugins and example sites are easy. Simply checkout the Gatsby repo and run npm install at the root of repo. Then run npm run plop and choose to create either a plugin or example site and then follow the prompts to do the initial setup. Some of the plugins on the wishlist already have stubs in the repository.

If you want to try building one of these, just leave a comment to claim it and start coding! Also this list is by no means complete. Feel free to suggest ideas and take those on as well!

Plugin wishlist

CSS

Transformer plugins

Source plugins

Docs on writing source plugins https://www.gatsbyjs.org/docs/create-source-plugin/

Example sites

Beyond example sites showing off how to use the above plugins, it'd be great to have example sites demonstrating possible ways to build:

  • Multi-language sites
  • Search
  • Pagination
  • React Helmet
  • Remark (markdown)
@fk
Copy link
Contributor

fk commented Jun 18, 2017

  • Tweets and Gists in Markdown (see jekyll-twitter-plugin)
  • automagical figure/figcaption for Markdown images that need a caption and/or reference to source/license
  • KaTeX, MathJax (in Markdown) – also while googling around stumbled upon jekyll-scholar, which "formats your bibliographies and reading lists for the web and gives your blog posts citation super-powers", …so I guess BibTeX ;)
  • favicon generator – not super necessary (as there already is http://realfavicongenerator.net/ and I also can see a lot of reasons for generating each of those manually) but quite easy to implement (apart from that SVG icon that macOS Safari wants for its "pinned tabs")
  • Dribbble
  • Flickr
  • 500px

@KyleAMathews KyleAMathews changed the title Plugins wishlist (and example sites) [1.0] Plugins wishlist (and example sites) Jun 20, 2017
@jbolda jbolda added Help Wanted for Plugins help wanted Issue with a clear description that the community can help with. labels Jun 25, 2017
@KyleAMathews
Copy link
Contributor Author

These are great sources of standalone data sets + public APIs

@erutan
Copy link

erutan commented Jul 3, 2017

Flickr would be useful - while the site itself is languishing, it's robut public API makes it a useful source to store photos to pull into blog posts and pages.

@Vagr9K
Copy link
Contributor

Vagr9K commented Jul 5, 2017

I'll work on toml-transformer.

@timsuchanek
Copy link
Contributor

Working on styled-jsx and an algolia syncer

@KyleAMathews
Copy link
Contributor Author

@Vagr9K @timsuchanek awesome! Added you to the list

@joshboldt
Copy link

Anyone working on DatoCMS? Would love to see that happen.

@mfeltscher
Copy link
Contributor

Is there anyone already working on a Medium integration? Would be cool to fetch the latest posts of a given blog.

@jondubin
Copy link

jondubin commented Jul 8, 2017

@mfeltscher you read my mind! I have the same need, and started looking into how we could write one. Since the Medium API is limited in this regard (afaik you can't get the most recent posts from a blog), we'd either have to scrape or use a blog's rss feed. I started writing the general purpose rss source here: https://github.com/jondubin/gatsby-source-rss Contributions/thoughts welcome!

@KyleAMathews
Copy link
Contributor Author

@jondubin hey would you be interested in adding the source plugin to the Gatsby repo? This is a bit of an experiment but I think that having most community plugins in the same repo will help keep the quality of plugin code much higher as there'll be a lot more eyeballs on code here plus we can keep investing in better and better testing infrastructure to ensure everything works well.

Thoughts?

@jondubin
Copy link

jondubin commented Jul 8, 2017

@KyleAMathews say no more! I'll migrate as soon as I get the chance.

@felixjung
Copy link
Contributor

Hey there, I started playing with Gatsby this weekend. Looks cool! I want to build a personal website and use glamorous for styles. The way I see this, it does not need its own plugin. Because it uses glamor in the background, it jut works when you use the glamor plugin. Am I missing something?

@KyleAMathews
Copy link
Contributor Author

@felixjung dunno! Want to try and report back? I haven't used Glamorous or researched its SSR method so don't know if the existing glamor plugin will just work or not

@felixjung
Copy link
Contributor

felixjung commented Jul 9, 2017

It does work 😆 Looking at its docs, I couldn't find anything about SSR stuff. Kent C. Dodds just wrote it works because glamor and react support it. So I tried and it works when you enable the glamor plugin. 🎉

@KyleAMathews
Copy link
Contributor Author

Oh well perfect then :-) you want to add mention of it then to the glamor plugin readme and we can check that one off then 👍

@felixjung
Copy link
Contributor

Sure, can do.

@fk
Copy link
Contributor

fk commented Jul 9, 2017

@jondubin +1 regarding the limitations of the Medium API. I also tried the RSS way, only to find out the feed also contains the user's comments, which you can work around, but … 🙄

@rawrmonstar
Copy link
Contributor

I think I'm going to work on a emotion plugin

@etienne-dldc
Copy link

Hi, it would be great to have a plugin for Directus since it's an open source alternative to Contentful :)

@mfeltscher
Copy link
Contributor

@fk @jondubin While looking into this issue I found another solution to fetch posts from Medium as described in this blog post: https://medium.com/@{username}/latest?format=json.

@Khaledgarbaya
Copy link
Contributor

👋 I can work on the gatsby-transformer-xml plugin

@Khaledgarbaya
Copy link
Contributor

here's the PR for gatsby-transformer-xml

@sebastienfi
Copy link
Contributor

@KyleAMathews Wordpress.com source plugin is done.

@Khaledgarbaya
Copy link
Contributor

A cloudinary plugin idea:
more info

@daon
Copy link

daon commented Aug 16, 2018

I'll work on pdf-transformer.

@Jaikant
Copy link
Contributor

Jaikant commented Sep 6, 2018

I'll work on the dynamodb source plugin.

@DSchau
Copy link
Contributor

DSchau commented Oct 2, 2018

@KyleAMathews I'm gonna break this apart into a few issues so it's a little more approachable. I'll close this out once they're created!

@larowlan
Copy link
Contributor

larowlan commented Oct 9, 2018

issue summary has

Drupal (there's the start of one already in the repo but there's a number of additions that'd be great to make)

Is there a list somewhere of the additions you're chasing?

@aroduribe
Copy link

Is the source wishlist still valid on what we can add?

@kenigbolo
Copy link

@KyleAMathews I have a small node utility I use for fixer-io and I'd actually love to add this as a plugin I can use in gatsby so basically I'd be making a gatsby-fixer-io plugin. Is it okay to submit a PR for this already as I have this mapped out at the moment

@KyleAMathews
Copy link
Contributor Author

@kenigbolo we try to only add really core plugins to this repo. We'd love for you to publish your plugin to npm yourself so it can show up in the plugin library! https://www.gatsbyjs.org/docs/submit-to-plugin-library/

@KyleAMathews
Copy link
Contributor Author

@aroduribe not really. Many of these things have been done. If there's one that looks interesting, double check against the plugin library to see if it's been done or not. https://www.gatsbyjs.org/plugins/

You can also check https://github.com/gatsbyjs/gatsby/labels/status%3A%20help%20wanted for work to help out.

Other ways to contribute also can be found at https://www.gatsbyjs.org/docs/how-to-contribute/

@paulspencerwilliams
Copy link

Since it's acquisition by Smugmug in April, Flickr seems to be going through a small renaissance. As a long time user of the Flickr, I'm really tempted to have a go at writing a source plugin...

Flickr would be useful - while the site itself is languishing, it's robut public API makes it a useful source to store photos to pull into blog posts and pages.

@gatsbot gatsbot bot added the stale? Issue that may be closed soon due to the original author not responding any more. label Feb 14, 2019
@dustinhorton
Copy link
Contributor

dustinhorton commented Feb 22, 2019

Curious if anyone has looking into a Notion source plugin…

@Necmttn
Copy link
Contributor

Necmttn commented Feb 23, 2019

@dustinhorton I was looking at it yesterday. but they don't have a public API so need to use public boards etc.

there's an unofficial API SDK written in GO.
https://github.com/kjk/notionapi

let me know if you are willing to write one. I might contribute as well.

I have written gatsby-source-trello for the same reasons.

@dustinhorton
Copy link
Contributor

@Necmttn Yeah I'd stumbled on that after searching for a Gatsby source plugin. Public would suite my needs fine, but I've only got one small use case so afraid I can't afford to commit the time it'd take. I will take a look over your Trello plugin to start to get an idea of what it might entail—thanks or linking.

@gatsbot gatsbot bot closed this as completed Mar 6, 2019
@LekoArts LekoArts reopened this Mar 6, 2019
@m-allanson m-allanson added not stale and removed stale? Issue that may be closed soon due to the original author not responding any more. labels Mar 6, 2019
@gatsbyjs gatsbyjs deleted a comment from gatsbot bot May 30, 2019
@gatsbyjs gatsbyjs deleted a comment from gatsbot bot May 30, 2019
@wmlutz
Copy link

wmlutz commented Jul 3, 2019

I built this fam: https://github.com/wmlutz/gatsby-source-dynamodb

@moonmeister
Copy link
Contributor

Reviewing current docs and plugins seems like everything in this has been covered. Closing this, any new source plugin requests can have an issue opened. (FYI: this is the oldest open issue, so yay team for getting all these done.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Issue that doesn't require previous experience with Gatsby help wanted Issue with a clear description that the community can help with.
Projects
None yet
Development

No branches or pull requests