Closed JedWatson closed 8 years ago
Any advice on how to migrate any project to use it and test fully? There are some required routes to be registered on web.js for this new ui to work correctly? When clicking on any model list I get an infinite request which never renders the page...
So excited for 0.4.0! I'm building pretty much all hobby apps in Express/Flux/React now and going forward. Having all my day-job/CMS's on the same stack is pretty much a dream come true so thanks for the amazing work!
I'd love to help where I can on the front-end design/development in Admin Area and will pull down the master to see what I can do. I'm using Keystone for 6 clients right now and would like to use it for everything pretty soon. Just want to add my 2-cents on the feature updates that I've found to be most critical to me from a business/client stand point and I know you're working on already...
Sub-collections (https://github.com/keystonejs/keystone/issues/153) Getting off Cloudinary - too expensive! (https://github.com/keystonejs/keystone/issues/526) Getting time zones completely solid (https://github.com/keystonejs/keystone/issues/1487) and a separate Time field would be great too.
I'd be very interested in making some example sites/themes for the community, like sydjs, but completely out of react-router/react in tandem with the 0.4.0 launch. Basically SPAs for the client side, which I think may be the future of agency level development. Probably going to be using a mix of http://material-ui.com/ and http://materializecss.com/ for the front-end, with some GSAP fanciness, some out-of-the-box load order optimization and a workflow like http://www.christianalfoni.com/articles/2014_12_13_Webpack-and-react-is-awesome. I'm going to start on the front-end for a few and hopefully I can integrate with 0.4.0 as it becomes more stable.
Thanks for the amazing work guys!
~ Kyle
My problem was simply this https://github.com/casesandberg/react-color/pull/26 @JedWatson May be we need a react-color fork to make v0.4 JUST WORK for newcomers? And then go back to upstream when they apply that PR.
Just played with the keystone-test-project. Really nice stuff. The ability to update in batch is great. For the main page, I'm not sure how I feel about the Grid vs the Table view, but I can see why you went that direction. For pagination, sometimes it's nice when it's on the top and bottom opposed to just the top.
The UI is really nice and beautiful. I am wonder when we should expect to finish. We have a project which need to do customization about the admin ui. Anything we can help?
@gemscng You could definitely help out with either of these 0.4 additions...
I was going to take these on, but had some projects snowball on me and have been behind schedule ever since. I'm still planning on starting them in the next week or so.
Sorry guys just trying to keep the lights on at the moment.
Hi, is there an ETA for 0.4?
There are only a few major things to complete; specifically:
As long as nothing unexpected comes up, expect a release later this month.
@LorbusChris I'm just finishing up my last open project today so I'm going to take a crack the mentioned improvements about mid-week if they're still on the table.
Regrettably I haven't been able to contribute much to Keystone myself, but I'm always spreading the word here in Chicago and trying to get people involved.
I'm sitting down with a dev shop on Wednesday who seem interested in looking deeper into Keystone so hopefully I can convince them try a project with it. They specialize in React so they may be able to bang out the above issues/improvements way faster than me and would likely add a lot more value to the project than I can.
I'll keep you posted.
I'd love to put in some effort on this. Keystone is my favourite CMS atm and I am considering it as a tool of choice for some talks I'm giving around rapid prototyping soon. Can you point me at some issues that need love?
For example, any outstanding todos on the REST API side or some such.
love the new Admin UI,
will be going more testing and will get back soon. keep it up!!
what will be the best way of posting the errors?
like : the add new company button is not working on the admin home page : url : http://localhost:3000/keystone/companies?create
@vikrant1011 this issue was reported. See #1723 Check if the issue was reported, if not, create one.
Big news - I've just updated the demo site (http://demo.keystonejs.com) to run the latest version from master. It's not quite ready for general release yet but all the features the demo uses work, so please check it out and let me know what you think!
And, if you find any (unreported) problems with it, please help out by opening issues here :)
@JedWatson What's the demo user/pass?
@jpdesigndev demo@keystonejs.com
/ demo
(it's in the right hand column on the home page)
Ah! Thanks.
Looking forward to general release and a good migration doc :) :+1:
I'm very enthusiastic about this new version, it looks awesome! I don't want to come across negative but I can't help but notice that the dependencies have increased massively. For a basic 'yeoman' app, the size of the node_modules directory jumped from 222 MB (v0.3.16) to a massive 377 MB (0.4.0-alpha). I suppose much of this also gets loaded into memory so can increase hosting costs. Am I correct? Is this something that is on your radar?
Once 0.4 is live, how much more work would it take to enable rendering of all templates via React?
@opensrcken I have an open PR ready for review that adds React universal routing + rendering capabilities. Ready for review. Want to give it a try and comment?
I'm a new guy to keystone. May I know if there is a way to generate the demo project with v0.4.0 by generator-keystone? which is same as http://demo.keystonejs.com/
@gongbi Pretty sure you can just clone the demo project from github? Isn't that easier?
@Mentioum Thanks for your reply, I found the source of the demo project now, https://github.com/keystonejs/keystone-demo.
@JedWatson Is it possible to simply upgrade an existing 0.3.x project's package.json, or is the migration path not so simple? I upgraded to 0.4.x and after a number of npm install issues, I now get:
/node_modules/keystone/admin/server/middleware/logError.js:7 var msg =
[${endpoint}];
EDIT My mistake, a simple upgrade of my node version to 5.x fixed everything, works beautifully, thanks for the hard work, the new admin ui is wonderful!
Hey guys, I'm new to KeystoneJS. I want to test the demo admin UI (http://demo.keystonejs.com/keystone/signin), but I get a "The email and password you entered are not valid." message. I'm using demo@keystonejs.com/demo for user/pass. Am I missing anything, or is anybody else experiencing same issue?
@puijob noted https://github.com/keystonejs/keystone-demo/issues/34
Thanks @morenoh149
Hi
How far away is the release of 0.4. We are starting a new project and we intend to use keystone. My question is. Should we use 0.3 and migrate to 0.4? or could we start developing with 0.4? @JedWatson
@karlAlnebratt use 0.3 as 0.4 release date is unknown
Thanks for the info @morenoh149
Hi, Great framework by the way!
I am new to KeystoneJS and have a few questions. Do you have a roadmap of where you see Keystone JS heading? Do you plan on supporting bootstrap 4, or is it possible to configure the version of bootstrap used? Is it possible to remove the dependency on jquery? I can see that KeystoneJS is built on nodejs, express and mongoDB. And with the new release you will be moving to the Admin UI to ReactJS and Elemental.
Will it be possible to build Angular/Angular2 websites with the new version of KeystoneJS? I am looking into building mobile apps. Is this possible with the new Keystone version?
Once again a very promising framework you guys have developed. Good work!!
regards Peter
@rodenp drop jquery is something we'll probably do at some point in the future. Keystone is just a backend adminUI. You should be able to use whatever you want to power your frontend.
+1 on redux. If your goal with React is to speed up development, it would seem like a missed opportunity if that doesn't make it into 0.4.
+1 Redux too :-)
+1 Redux, but I don't think it is worth delaying a release cycle to add Hot Module Reloading etc.
Also it's not clear what the pace of this release cycle is. I know it's behind, but I personally would be interested in using this framework (and contributing), and would like know realistic projections on a release date (best and worst case projections, etc.)
I'm about to start a basic project and I would like to benefit from Keystone 0.4 with all improvements and cool Admin UI compared to earlier version. Great work! Thank you for sharing.. I've never deployed Keystone on production yet (hopefully May timeframe) so I wonder if we have an idea when Keystonejs 0.4 will be available with general release (handlebars,...). Thanks!
Any idea when Keystone V0.4 is expected to be released?
I would strongly recommend that the Keystone API be documented as a swagger spec (Ref: http://swagger.io/) [currently open API: https://openapis.org/ ]
Api usage to consider [CRUD Operations S=Search/Find] POST /list to create a new item [C] PUT /list to update an existing item [U] GET /list/filter - Find an item by filter [S] GET /list/{id} - Find an item by id [R] DELETE /list/{ListId} - Deletes an item [D]
IMO, queries like filter are better implemented with query strings, which can be much more flexible, and easily applied to many URL endpoints using the same code. See the responsive APIs section of "Programming JavaScript Applications".
@ericelliott - Currently Keystone [V0.3] does not use http verbs PUT and DELETE.
All the CRUD operations use GET and POST. Can we update Keystone.js to use:
Also see #2363
See the section on resourceful routing for a discussion on why I like to use PUT for both create & update (also supporting POST for Create).
Basically, the mapping I prefer is:
GET /albums -> index
POST /albums -> create, return URI
GET /albums/:id -> show
PUT /albums/:id -> create or update
DELETE /albums/:id -> destroy
in post /albums you could also echo the created object. That's what I've seen in the past.
In V0,3 GET is used for delete. Hope the mapping gets updated for V0,4. Would appreciate if there is guidelines on how to modify V0,3 to use DELETE for delete
Can we add support for Google File Storage in addition to Amazon S3 and Azure?
When is the ETA on this? Editing the admin ui is a BIG thing
No ETA as of yet, but it won't be too long!
Good work ! Just wonder if you guys thinked about using Typescript for codebase, which would give a lot of benefits(tooling, code quality and stability, new ES6-ES7 features and amazing async await support). Typescript also have good support for react. If where is any plans for this I can take care to convert all code to Typescript and prepare infrastructure, just let me know :)
The biggest problem with Typescript is that it's going to scare away new contributors. I'm not sure I (as a newcomer to a codebase) would be willing to dive into a new technology (TypeScript) just to contribute a small fix to an open source project.
I think TypeScript is a great technology, and I love what it does, but I'm not convinced it's the right choice for Keystone at this point.
@mxstbr As I see keystone already use babel to allow ES6 and react html tags in js. Typescript have all this and much more. I highly suggest to watch this video for all developers and you may change your thinking about javascript development. Anders Hejlsberg know what he is talking http://youtu.be/6wEVu_mkJjM :)
Today, I'm really excited to be merging our work on the
elemental-integration
branch into master.We're really close to releasing a major new version which will finish our transition to React for the Admin UI, and be a strong foundation for a lot we've been wanting to do with Keystone for a long time, including opening up the Admin UI for customisation, and making the project more modular.
Once this lands, I expect we'll move much more quickly through the next few minor releases (0.5, 0.6, ...) as we introduce new functionality and potentially some breaking changes while we refactor the project more thoroughly. Our 1.0.0 release will follow as soon as we're ready to lock down the customisation and other APIs for long term support.
This means that
master
may be unstable for a while as the new UI is finished, but getting the project into a state where it is easier for others to contribute to the effort, and for the broader community to engage with our progress is really important. Until we get through this push, PRs and issues will continue to come in against a version that we've really moved on from, and I don't want to waste any of the valuable time and effort that's being dedicated to this project.The other change that will happen from today is we'll start creating issues to track our progress towards 0.4.0 more granularly, and that will make more sense when the primary working codebase is the
master
branch. Up to now, @jossmac and I have worked largely behind the scenes on tasks that really only the two of us are across, and I'm keen to facilitate a much broader engagement with what's left to do. (we'll be rearranging the milestones and issue tags a bit to better support this today as well)There will be a new
0.3.14
release today with all the current work inmaster
before the merge, and we'll create a0.3.x
branch which we'll continue to release from if any critical issues pop up in that version.Thanks everyone for your patience as we've been working towards this huge update, and for all your support and engagement over the last two years that Keystone has been out in the world. We're tremendously excited to get these changes we've been working on released, and move on to the next stage of Keystone's development.
Once this release settles down I'll be publishing a new roadmap for what's to come, and outline the vision we've got for the future of Keystone. In the meantime:
0.4.0 TODO
This list will be replaced with individual issues as we add them, but generally the entire Admin UI and back-end support for it has been rewritten. This means many features won't be completely working, and there's a few things left to add. The major areas are:
react-router
for complete client-side routing (plus possibly a flux/etc implementation)items/update
API endpoint and using it to save item changesAs a final, optional step there has been work done to centralise our Field types into a common Storage implementation. Because we're hoping to get this in, the different file field types (local, s3, etc) haven't had a huge amount of attention. Hopefully this can all be done but if it's dragging we'll just clean up what's there and get the release out, and refactor our file fields and storage for 0.5.
This is an area I'd really like some help with so if that interests you please let me know.
Changes
We'll be compiling a list of changes (particularly breaking changes) in the Wiki as we head towards release; please help by raising any upgrade issues you experience with your projects. Due to the scope of changes to Keystone's front end, we've tried to keep internal breaking changes to a minimum.
One of the big things worth calling out is we've updated to Mongoose v4.x, please see the mongoose changelog for details on what that involves.
Running Keystone 0.4.0 in development
To get up and running with the new version of Keystone, check out the
master
branch by specifying our github repo in yourpackage.json
:Please let us know what you like, what you don't, and any issues that you find (there will be heaps to start with, we know)
If you want to run Keystone in development mode to debug issues or help finish the new features, fork / clone Keystone locally, then run
npm link
in your keystone folder, followed bynpm link keystone
in your project.Then to enable debug builds and file watching, start your project with the KEYSTONE_DEV environment variable:
New Keystone Test Project
We have started a new project that can be used to test the various project and field configurations, and all the features supported in the Admin UI. It contains several models and init scripts that populate example data for testing against.
You can find it here: https://github.com/keystonejs/keystone-test-project
This is only a barebones project at the moment but we'll be adding a lot of lists, fields, data and options to it in the coming days and weeks. Ideas, additions and PRs for it are more than welcome.
Complete Getting Started Guide
Developing Elemental UI
The new Keystone Admin UI is built on our Elemental UI project. As the
master
branch of Keystone is developed, we'll be rapidly releasing new Elemental versions, so it will be important to keep up to date with the latest. If you experience problems with the development version of Keystone, check for an update to Elemental before looking into it further.If you want to run against the master branch of Elemental (or make changes to that project for Keystone) you'll need to clone it, link it and run
npm watch
to build it with babel.Following on from the guide to developing Keystone above, set it up like this:
Then: