Git Product home page Git Product logo

flintcms's Issues

Dynamic routes for sections/entries

Currently, the only available URL route for an entry is /:sectionSlug/:entrySlug, which is pretty lame. The route for all entries in a section should be configurable in the section. In the catch-all route currently used for pages, we can also evaluate to route to an entry.

Dropdown field is breaking

The Dropdown field is throwing an error:

TypeError: sorted is undefined [index.js:50]

That's components/Fields/Dropdown/index.js.

Database migrations and data import/export

I'm not too familiar with MongoDB, though I've enjoed using database migrations and seeding that is available in frameworks, such as Laravel.

I'm wondering how to migrate/import/export database/collections to/from MongoDB, in order to keep the project consistent between environments? Is there some sort of hidden magic, or JSON exporter/importer tool (given that Mongo is a BSON)?

How do you guys recommend approaching this? With SQL it's fairly easy, create a dump and reimport it to another env.

Write documentation

Getting Started

  • Introduction
  • Installation
  • Site Configuration
  • Directory Structure
  • System Requirements

Core Concepts

  • Users
  • Pages
  • Sections
  • Fields
  • Group Field
  • Entries
  • Assets
  • UserGroups

Templating

  • Entry Model
  • Section Model
  • Asset Model
  • Site Model
  • Field Model
  • User Model
  • UserGroup Model
  • Page Model

Plugins

  • Overview
  • Hooks & Events
  • Module Structure

Deployment

  • Heroku

Error on install flintcms

Hello Guys,
I've installed flint following https://flintcms.co/docs/installation/ but once i run node index.js somre errors displays:

(node:20789) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'error' of undefined
at missingEnvVariables.forEach.v (/home/antonio/Scrivania/experiments/flintpractice/node_modules/flintcms/server/utils/validate-env-variables.js:14:40)
at Array.forEach ()
at validateEnvVariables (/home/antonio/Scrivania/experiments/flintpractice/node_modules/flintcms/server/utils/validate-env-variables.js:14:23)
at Flint.startServer (/home/antonio/Scrivania/experiments/flintpractice/node_modules/flintcms/index.js:93:33)
at Object. (/home/antonio/Scrivania/experiments/flintpractice/index.js:7:13)
at Module._compile (internal/modules/cjs/loader.js:678:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10)
at Module.load (internal/modules/cjs/loader.js:589:32)
at tryModuleLoad (internal/modules/cjs/loader.js:528:12)
at Function.Module._load (internal/modules/cjs/loader.js:520:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:719:10)
at startup (internal/bootstrap/node.js:228:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:575:3)
(node:20789) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:20789) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
I'm the only who get this error?
Thanks

node index.js in my command line returns nothing

Hi,

I just wanted to say that I love the idea behind flintcms. I've just installed it and I'm trying to run the example code:

const Flint = require('flintcms');

const flintServer = new Flint({
  siteName: 'My Amazing Flint Site!'
});

flintServer.startServer();

But it's not working. I get returned to the command line without any errors, nothing in the log.

Any ideas?

I'm running Mac Sierra 10.12.6
Node v9.6.1
npm v5.6.0

Flint is awesome.

Just wanted to say this is a killer start on something that I've been wanting to work on / use for a long time. Craft is great for organizing content so it is a great inspiration for a Node based CMS. There is a huge void that Flint could fill. I can't stand PHP anymore.

Looking forward to contributing where I can. Looks like you haven't made any commits in a while. Do you plan on continuing to work on Flint?

Also, I couldn't figure out how to add a new admin account from the docs. After reviewing the source I found the post route to add a new admin and did it from Curl.

I'm a Designer/Art director by day with a programming background so I can help with UX and design work as well.

DatePicker component not working as page field

Looking into this one it seems that the date is saving as a string when being used as a page field. But the picker works fine in the aside when it is supplied a proper date date from the DB.

I can get it to work by changing the value def in the DatePicker constructor() to:
const value = (props.defaultValue ? new Date(props.defaultValue).getTime() : props.value);
But I think this is more of a hack than a fix. You probably have a better idea how to normalize the data the field is receiving.

Rich Text background is transparent

The Rich Text field's background of both the editor and the toolbar is transparent instead of white. This becomes an issue when a Rich Text field is within a Group field - Group fields blocks are contained in a grey box, which shows through the Rich Text field.

Global Fields

One thing that I'm missing from Flint with regards to its main source of inspiration is the ability to define global fields that will be available throughout the entire website.

These fields could be used for variety of things, but most importantly to define stuff like metadata (which could be overridden with page-/entry-specific fields in the template logic) and other bits of info.

@JasonEtco what are your thoughts on this? How feasible do you think that could be? I'm no good with React, so I doubt I'd be able to write this functionality myself, unless there's a way to leverage the plugins subsystem without dabbling into React?

Security issue

Hello,

As a member of theΒ Node.js Security WG
I would like to draw your attention to a security report that has been made regarding this issue.

I have made attempts to contact the person identified as a maintainer of this package but did not get any answer. What is the best way to reach someone with commit rights over this repo and hopefully npm publishing rights as well, in order to invite them to privately discuss the issue on the HackerOne platform and provide a resolution?

Thanks,
Liran.

References:

🎨 Design empty content states

Design the empty state for the various pages that have content. Example, when a user opens their Flint site for the first time the dashboard's homepage should have a more inviting design that illustrates the best next steps.

  • Home
  • Sections
  • Entries
  • Assets
  • Fields
  • Pages

Multilingual

Hey, great initiative.

Love the ideas, inspiration and execution of the project. I was wondering since multilingual is baked into CraftCMS, if it was a planned feature for Flint as well.

Thank you!
Oz

Tags

A new feature, the ability to add "Tags" to entries. This will be a way of organizing entries within the same section on a more granular level, and will enable more broad searches.

Search

An endpoint to search for entries or pages whose title contains a string. Eventually, when tags are added, it will also search for entries with a given tag.

Onboarding modal/page

Currently, when a new server starts up, the user is just thrown into it. An onboarding modal/page would be a good way of instructing people what the first steps are (make field, make a page/section, make an entry).

Support CSS bundle cache busting

Find a way of enabling an option to add a hash to the compiled CSS bundle to allow for cache busting. This can be done fairly easily by timestamp when the bundle is compiled, then stored in a global variable and added to the collectData's flint object. So you would use it like:

<link rel="stylesheet" href="{{ flint.cssBundle }}">

It could also store the hash in the database's Site document.

It would also be cool to compare the bundle that already exists before overwriting it, to see if the hash needs to be updated. This would prevent unnecessary cache updates.

Improve Logging

Create a log file that is auto-updated when any mutation succeeds or fails, then create a view for this log file in the admin dashboard.

Necessary information:

  • Timestamps
  • Location of error (if appropriate)
  • User that was logged in at the time

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.