Git Product home page Git Product logo

headlesscms.org's Introduction

⚠️ We have moved headlesscms.org to jamstack.org/headless-cms/

You can still contribute at https://github.com/jamstack/jamstack.org/ or join us on Slack at http://jamstack.slack.com/


headlesscms.org

headlesscms.org, a leaderboard of top open-source static site content management systems.

Netlify Status

Contributing

Missing a headless CMS here? Just fork the repo and add yours as a <name>.md in the content/projects folder.

Make sure to follow the following rules:

  • Truly headless: This means your CMS must interact with content and data, and cannot be responsible for building the site.
  • Jamstack: Your CMS has to work with the Jamstack methodology: JavaScript, API's and Markup.
  • Stick to the format: Fill out all the same fields as the other CMS's in content/projects.
  • Short description: Keep all the details for the body text, keep the description for the overview page short and sweet.

Usage

Be sure that you have the latest node and npm installed, then clone this repository and run:

npm install
npm start

In order to successfully retrieve Twitter followers and GitHub stars, you will need authentication keys for both services.

For GitHub you'll need is a personal access token with permission to create Gists. This can be generated at https://github.com/settings/tokens. For Twitter, you need to create an application at https://apps.twitter.com to get the necessary tokens. When deploying, you must set the environment variables per the example below. If you are developing locally, you can set these in a .env file at the root of the repo.

HEADLESS_CMS_GITHUB_TOKEN=examplekey123abc
HEADLESS_CMS_TWITTER_CONSUMER_KEY=examplekey231abc
HEADLESS_CMS_TWITTER_CONSUMER_SECRET=examplekey321abc
HEADLESS_CMS_TWITTER_ACCESS_TOKEN_KEY=examplekey231abc
HEADLESS_CMS_TWITTER_ACCESS_TOKEN_SECRET=examplekey321abc

GitHub and Twitter data is cached in the .tmp directory, and online in a Gist. If neither has data newer than 24 hours old, fresh data is fetched from GitHub and Twitter. Fetching caching occur automatically during the build.

Then visit http://localhost:3000/ - React Static will automatically reload when changes occur.

To test a production build locally, do:

npm run stage
npm run serve

To run a production build for deployment:

npm run build

Netlify

headlesscms.org is built and maintained by Netlify, a hosting and automation service for static websites and apps.

License

This project is licensed under the MIT license.

headlesscms.org's People

Contributors

andrzejwp avatar arnaudligny avatar artpar avatar bdougie avatar benaiah avatar biilmann avatar calavera avatar dbohdan avatar dependabot-preview[bot] avatar dirtyf avatar eliwilliamson avatar erquhart avatar fool avatar huguestennier avatar johnonolan avatar kaiuk-cp avatar lexoyo avatar maphew avatar nuex avatar philhawksworth avatar raneio avatar renovate-bot avatar ronakganatra avatar rybit avatar swyxio avatar thanethomson avatar tonyspiro avatar verythorough avatar vsopvsop avatar zachleat 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  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  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

headlesscms.org's Issues

Incorrectly sorting Github stars (7 days)

With the sorting set to GitHub Stars (7 days) a presumably brand new headless CMS is in the number 1 spot with only 5 stars total, 5 new stars. At first, I was excited to see a new top dog CMS, only to find out it's a completely unused CMS.

See attached screenshot.

Screenshot from 2019-06-11 11-14-36

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: Cannot find preset's package (github>netlify/renovate-config)

Staticgen.com in new tab

"Also visit staticgen.com for a ranked list of open-source site generators!" - here staticgen.com should open in a new tab.

typo on about page:

"They basically make it much easier to create, build and compile a moder website." (Should say "modern", I think.)

Closed Source not sorted when Github stars trending sorting is on

It looks like the closed source section is not following any sorting method since trending by Github Stars was introduced. ac7d4df

However, It seems that there needs to be some sorting reintroduced for that section even if they don't have Github Stars. I suggest adding the sorting by twitter followers (last 7 days) for closed source headless CMS, as it seems to be roughly the equivalent of Github stars for proprietary software on this site.

Build failing on netlify master

https://app.netlify.com/sites/headlesscms/deploys/5f314086652dffc507f04716

6:12:16 PM: Local archive not found, fetching new data.
6:12:16 PM: [before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4
6:12:21 PM:   Error: {"message":"Not Found","documentation_url":"https://docs.github.com/res  t"}
6:12:21 PM:   
6:12:21 PM:   - request.js:73 IncomingMessage.response.on
6:12:21 PM:     [repo]/[@octokit]/rest/lib/request/request.js:73:18
6:12:21 PM:   
6:12:21 PM:   - events.js:185 IncomingMessage.emit
6:12:21 PM:     events.js:185:15
6:12:21 PM:   
6:12:21 PM:   - _stream_readable.js:1106 endReadableNT
6:12:21 PM:     _stream_readable.js:1106:12
6:12:21 PM:   
6:12:21 PM:   - next_tick.js:178 process._tickCallback
6:12:21 PM:     internal/process/next_tick.js:178:19
6:12:21 PM:   
6:12:21 PM: 
6:12:21 PM: npm ERR! code ELIFECYCLE
6:12:21 PM: npm ERR! errno 1
6:12:21 PM: npm ERR! [email protected] build: `react-static build`
6:12:21 PM: npm ERR! Exit status 1
6:12:21 PM: npm ERR!
6:12:21 PM: npm ERR! Failed at the [email protected] build script.
6:12:21 PM: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
6:12:21 PM: npm ERR! A complete log of this run can be found in:
6:12:21 PM: npm ERR!     /opt/buildhome/.npm/_logs/2020-08-10T12_42_21_218Z-debug.log
6:12:21 PM: ​
6:12:21 PM: ┌─────────────────────────────┐
6:12:21 PM: │   "build.command" failed    │
6:12:21 PM: └─────────────────────────────┘
6:12:21 PM: ​
6:12:21 PM:   Error message
6:12:21 PM:   Command failed with exit code 1: npm run build
6:12:21 PM: ​```

finding out types of the last 4 cms

We have to find out what type the following are: (git-based or headless or other (if "other" then remove them entirely)
Hyde
CloudCannon
Bowtie
Appernetec

Newly added project not showing on dev

Hi all,

Thanks for building this. Big Netlify here.

I'm busy trying to add a new headless CMS that we're building, but I find on my local machine that the project is not showing up after adding the relevant markdown file to content/projects. When I run the production build and serve locally it is showing, but it also shows an outdated version and not my latest changes. Seems like the caching is a bit sticky.

Even after deleting both the dist and tmp directories, it is not showing. Is this something that someone else has experienced as well? Any idea how to fix?

Sort based on Programming language

It would be really helpful for knowing primary language of the projects. For example, If we can show a tag on the project card for the language it is built on (PHP, Nodejs, Python etc). Additionally if we can sort based on those languages, i.e show only PHP cms, or only python cms.

still needed..

  • The About copy hasn't been updated?

  • It still says “application:” on all of them, that needs removing,

  • (T as short for JAMstack doesn't work, we can't use it like that).

  • The contact page just have everything in one sentence. It should break when it concerns the formula.

  • Error: This is actually written out on the contact page: Check The Rules

  • The favicon looks weird (Should have it's own I guess).

  • Share button should open reddit and HN icons as well

  • Cloud CMS support site generators is empty. It should say All.

  • In general it seems like the copy is off for the Contact page. Did you remember to paste it in?

Show database for each project

Besides the used programming language, this is the most important thing to know about the CMS (at least for me). Would be cool if it was listed!

'npm start' fails on clean install

Hi,
I just cloned the repo and ran npm install
And then ran npm start.
It failed with this message:

> [email protected] start /Users/cz/Documents/a-projects/headlesscms_org/test/headlesscms.org
> react-static start

=> Building Routes...
Local archive not found, fetching new data.
[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4
  Error: Token authentication requires a token to be set
  
  - authenticate.js:25 authenticate
    [headlesscms.org]/[@octokit]/rest/lib/plugins/authentication/authenticate.js:25:15
  
  - fetch-archive.js:24 authenticate
    /Users/cz/Documents/a-projects/headlesscms_org/test/headlesscms.org/scripts/fetch-archive.js:24:11
  
  - fetch-archive.js:137 _callee8$
    /Users/cz/Documents/a-projects/headlesscms_org/test/headlesscms.org/scripts/fetch-archive.js:137:3
  
  - runtime.js:62 tryCatch
    [headlesscms.org]/[babel-runtime]/[regenerator-runtime]/runtime.js:62:40
  
  - runtime.js:296 Generator.invoke [as _invoke]
    [headlesscms.org]/[babel-runtime]/[regenerator-runtime]/runtime.js:296:22
  
  - runtime.js:114 Generator.prototype.<computed> [as next]
    [headlesscms.org]/[babel-runtime]/[regenerator-runtime]/runtime.js:114:21
  
  - fetch-archive.js:383 step
    /Users/cz/Documents/a-projects/headlesscms_org/test/headlesscms.org/scripts/fetch-archive.js:383:191
  
  - fetch-archive.js:383 
    /Users/cz/Documents/a-projects/headlesscms_org/test/headlesscms.org/scripts/fetch-archive.js:383:361

I had had some errors when running npm install, so I deleted the package-lock.json and installed again and it installed with no errors. However, npm start gave the same results.

I updated to latest node (13.12.0) and npm (6.14.4), but no change in behaviour.

Help! :)

Links are incorrect when page first loads

If you open https://headlesscms.org/ and don't change any of the filter settings, some of the CMS item links are wrong. They seem to be fine all the way to the second item listed under "Closed Source" -- at that point, Appernetic links to the page for Watson Content Hub, BowTie links to Quintype, etc. It seems that once you change the filters or sort options the problem goes away, even if you go back to the default. Reloading the page brings the problem back.

v2

Just some thoughts for what we could/should do next.

Create a starter template

There should be a starter template using the headlesscms site underpinning with some simple configuration to create new sites for tracking GitHub projects. This would be a good precursor to migrating staticgen.com over to the headlesscms.org setup.

Extensible sorting/filtering

The current layout can only handle so much sorting/filtering before it sort of breaks. We should consider how to redesign so that an arbitrary number of sorts and filters can work without breaking the layout.

Scalable card data

Like sorting/filtering, cards just become bland data lists when too many points are added. We need a way to allow a fair amount of data on cards that still works for the UI. Perhaps making them expandable?

More stats

Arbitrary stat support should be a thing. You may want to track npm downloads or GitHub contributors, for example. The current setup is GitHub only, and limited to four items by the UI.

Flexible stats window

We're currently adding daily to the GitHub data for headlesscms.org. The original goal was 30 days, but maybe 60 is better. Currently at 38 days and counting. What would be nice is to capture maybe 60 or 90 days of data max, but allow the user to select what window they want to see reflected in the cards, e.g. last 7 days.

Flexible stats display

Some stats aren't just a plus/minus thing. GitHub issues, for example, can show zero change over a 30 day span, when in reality, 300 issues were closed and 300 new issues were opened. The activity is an important sign of life, so we see a need to display change data for individual stat in more than one way.

UI: filter by self-hosted

Right now it's possible to see that several CMS are open-source, but which ones can be hosted on-premises for simple internal apps? It's a not a rare use-case :)

Error: {"message":"Bad credentials","documentation_url":"https://developer.github.com/v3"}

Following the README.md to set .env as follows:

HEADLESS_CMS_GITHUB_TOKEN=examplekey123abc
HEADLESS_CMS_TWITTER_CONSUMER_KEY=examplekey231abc
HEADLESS_CMS_TWITTER_CONSUMER_SECRET=examplekey321abc
HEADLESS_CMS_TWITTER_ACCESS_TOKEN_KEY=examplekey231abc
HEADLESS_CMS_TWITTER_ACCESS_TOKEN_SECRET=examplekey321abc

When running npm start I still get:

> [email protected] start D:\project_amanah\headlesscms.org
> react-static start

=> Building Routes...
Local archive not found, fetching new data.
[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4
  Error: {"message":"Bad credentials","documentation_url":"https://developer.github.com/v3"}

  - request.js:73 IncomingMessage.<anonymous>
    [headlesscms.org]/[@octokit]/rest/lib/request/request.js:73:18

  - events.js:228 IncomingMessage.emit
    events.js:228:7

  - _stream_readable.js:1185 endReadableNT
    _stream_readable.js:1185:12

  - task_queues.js:81 processTicksAndRejections
    internal/process/task_queues.js:81:21


npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: `react-static start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\ceefour\AppData\Roaming\npm-cache\_logs\2020-03-26T22_29_38_689Z-debug.log

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.