perak / kitchen-site Goto Github PK
View Code? Open in Web Editor NEWMeteor Kitchen site source code
License: MIT License
Meteor Kitchen site source code
License: MIT License
I guess this is on your radar but if it's wasn't, there it is.
Is this something that is under active development or design?
I'd be interested in contributing if I could have some guidance.
Feel free to PM me if I might help out.
All links that are set to "http://www.meteorkitchen.com/api_reference#component" don't work, seems like they should be pointing to http://www.meteorkitchen.com/api_reference#custom_component.
Currently, layout is fixed: it contains navbar at the top and footer. It should be more customisable.
For the bootstrap based styling, I started experiencing this error after adding the meteor-famous package. It is solved by switching to this bootstrap3-less package, but it doesn't seem to work as well with bootstrap-swatch
Hello! It would be very important to have an internationalization system as "i18n".
Seeing as we're already writing a schema, which pretty much gets thrown away after generation, using a package like Simple Schema or Collections2 to allow for server side validation, more data types, and schemas that can be modified after compile-time.
Also allows for a package like AutoForms which would also save a lot of form-modifications on schema changes.
Bootwatch has added a great Google Material version.
MK's "query" object generates code for publish & subscribe, but publication is allways only return from find() function described in query object.
Meteor kitchen should offer a way to subscribe to custom, manually written publication.
The default Accounts.resetPassword generates such URL pattern : /reset-password/:resetToken
The generated reset controller and route are not correctly configured :
this.route("reset_password", {path: "/reset_password", controller: "ResetPasswordController"});
It should be fixed like that :
this.route("reset_password", {path: "/reset-password/:resetPasswordToken", controller: "ResetPasswordController"});
Could I get an example of the invoice example with roles? I am experiencing a bug where the GUI is storing the array of application roles as one comma separated string.
for instance:
{
fname: 'Stewart',
lname: 'Robinson',
addr1: '124 H Street',
addr2: '#81',
city: 'Murray',
state: 'UT',
postalCode: '84107',
contact: { type: 'im', client: 'skype', user: 'sfrobins' }
}
I can find no way to get meteor kitchen to accept the contact object as a member of the parent JSON object.
Unless a user installs the software before registering or logs out, there is no readily accessible documentation about how to install or upgrade the main package. The private site should mostly add to the base content instead of replacing it - it makes it seem like the site has changed unless you realize you're logged in and that changes the content on the Home link.
Meteor kitchen site should use SSL for secure installation etc.
Directory structure should be changed to be 100% compatible with "em" scaffolding tool.
When using the GUI to create edit and detail views the route filters do not get passed to the build. Route params is passed fine. This results in the page's route working correctly but the data is all the collection's records instead of one.
Thank you for this great tool !! I have just found it and starting to play with it.
I was trying to import kitchen-site.json
file into the site (to learn how it's made) but encountered 3 errors that prevented successful import.
"options": { "sort": { "name": 1 } }
. Also fails to save if I enter profile.name
in the editor.Changing these lines, I was able to import and edit the site with the GUI.
lots of scrolling required when you have lots of pages
I'd much rather see this:
home_public
login
than this:
home_public
components (1)
query
close_route_params (0)
back_route_params (0)
menus (0)
pages (0)
queries (0)
login
query
components (0)
close_route_params (0)
back_route_params (0)
menus (0)
pages (0)
queries (0)
Built-in form component should support more input controls (checkbox, radio, select, multiselect, lookup from collection etc.).
For example: http://useraccounts.meteor.com
Awesome tool, just wrote a 723 LOC config file, saves a lot of boiler-making.
On slower connections however, having to download all packages and then find out that there's an error in your queries is a slight annoyance though. Docs don't mention that queries should have unique names, but I guess it isn't too unreasonable an assumption
Hi,
I have centos 6.6 running (command line only) and have tried to run meteor-kitchen but i get :
/lib64/libc.so.6: version `GLIBC_2.14' not found (required by meteor-kitchen)
I checked online but i cant find a solution to upgrade GLIBC. I have 2.12 running
Object properties form: while submit is in progress (metreor server is sometimes insanely slow) submit button should be in disables state.
Is it possible to be able to DataView groupings set?
@perak I know this is not because of Kitchen but I thought you may be able to direct me to a solution. Check out my issue on the yaml2json repo coolaj86/yaml2json#4.
I am getting the console error when running meteor-kitchen and yaml2json. I could not find anyone having a similar issue on the web. Thanks
DataView component should support pagination or "continous scroll" for large datasets
Though the GUI for the app builder is in early alpha, perhaps I could switch long vertical "radio" lists (e.g. collection field properties) to be a dropdown select list and have some placeholders, helptext or tooltips for the form fields (linked to docs)?
Default forms related to user accounts should be refactored to enable customization, localization etc.
What input type choose to edit time fields ?
Current (bootswatch-amelia) theme is not the best choice for site of this type
How can I access the this.userFullName
within the application in addition to the this.userId
? For example, I do not want to access this.userId
, but evaluate tothis.userFullName
in a meteor.publish routine.
When retrieving a lost password, entering user email is case-sensitive. shouldn't be.
I will add property to page object that enables access to pages from public zone for authenticated users.
Instead of manually writing JSON input file, there should be GUI or wizard.
How to implement relations between collections? I have in the "ViewTableItems" by "collectionname. fieldName" it but tries unfortunately without success. In the collectionname.js I set some helpers function.
How can I add roles later in an application? Where should I make adjustments anywhere?
I started playing with MK, but when I download the examples (tried invoice and admin) I get the following error...
Error parsing JSON. Parsing stopped at line 446 char 21.
Something I am doing wrong ?
Json is placed in root of my Meteor Apps & using the command line as per instructions:
meteor-kitchen ./example-invoices.json ./example-invoices
TIA, Dave
Possibility to define meta tags and add them automatically into layout is needed.
$ meteor-kitchen -c -j --example-invoices ./invoices
*** Meteor Kitchen v0.9.4 ***
Meteor Application Generator - www.meteorkitchen.com
Copyright (c) Petar Korponaić
[email protected]
Reading input file...
Executing "meteor create ./invoices/"...
./invoices/: created.
To run your new app:
cd ./invoices/
meteor
Removing packages "autopublish" and "insecure"...
Checking installed packages...
Executing "meteor add coffeescript mquandalle:jade standard-app-packages less accounts-base spiderable iron:router natestrauser:font-awesome matb33:collection-hooks perak:user-roles reactive-dict accounts-password mizzao:bootboxjs mrt:moment rajit:bootstrap3-datepicker"...
removed autopublish from project
removed insecure from project
added iron:location at version 1.0.3
added accounts-password at version 1.0.4
added coffeescript at version 1.0.4
added accounts-base at version 1.1.2
added matb33:collection-hooks at version 0.7.6
added less at version 1.0.11
added iron:dynamic-template at version 1.0.3
added iron:router at version 1.0.3
added natestrauser:font-awesome at version 4.2.0
added iron:layout at version 1.0.3
added mquandalle:jade at version 0.3.0
added standard-app-packages at version 1.0.3
added iron:middleware-stack at version 1.0.3
added iron:url at version 1.0.3
added spiderable at version 1.0.5
added service-configuration at version 1.0.2
added mrt:moment at version 2.8.1
added email at version 1.0.4
added sha at version 1.0.1
added iron:controller at version 1.0.3
added perak:user-roles at version 1.0.10
added rajit:bootstrap3-datepicker at version 1.3.1
added localstorage at version 1.0.1
added srp at version 1.0.1
added iron:core at version 1.0.3
added mizzao:bootboxjs at version 4.3.0
added npm-bcrypt at version 0.7.7
coffeescript: Javascript dialect with fewer braces and semicolons
mquandalle:jade: Jade template language
standard-app-packages: Moved to meteor-platform
less: The dynamic stylesheet language
accounts-base: A user account system
spiderable: Makes the application crawlable to web spiders
iron:router: Routing specifically designed for Meteor
natestrauser:font-awesome: Latest version Font-Awesome loaded via CDN
matb33:collection-hooks: Extends Mongo.Collection with before/after hooks for insert/update/remove/find/findOne
perak:user-roles: User roles package for Meteor
reactive-dict: Reactive dictionary
accounts-password: Password support for accounts
mizzao:bootboxjs: Programmatic dialog boxes using Twitter's bootstrap modals
mrt:moment: Moment.js, a JavaScript date library for dates, packaged for Meteor. See http://momentjs.com.
rajit:bootstrap3-datepicker: Meteor packaging of eternicode/bootstrap-datepicker for Bootstrap 3
Creating directory structure...
Creating router...
Creating collection "customers"...
Creating collection "invoices"...
Creating collection "invoice_items"...
Copying bootstrap3-less files...
Using theme "bootswatch-paper"...
Creating zone "public_zone"...
Creating component "left_menu"...
Creating component "right_menu"...
Creating page "home_public"...
Creating component "home_jumbotron"...
Creating page "login"...
Creating page "register"...
Creating page "forgot_password"...
Creating page "reset_password"...
Creating zone "private_zone"...
Creating component "left_menu"...
Creating component "right_menu"...
Creating page "home_private"...
Creating page "customers"...
Creating component "view"...
Creating page "insert"...
Creating component "insert_form"...
Creating page "details"...
Creating component "details_form"...
Creating page "edit"...
Creating component "edit_form"...
Creating page "invoices"...
Creating component "view"...
Creating page "insert"...
Creating component "insert_form"...
Creating page "details"...
Creating component "details_form"...
Creating page "items"...
Creating component "view"...
Creating page "insert"...
Creating component "insert_form"...
Creating page "edit"...
Creating component "edit_form"...
Creating page "edit"...
Creating component "edit_form"...
Creating page "user_settings"...
Creating component "side_menu"...
Creating page "change_pass"...
Creating page "logout"...
Copying "/home/james/.meteor-kitchen/templates/bootstrap/string_utils.js" to "/home/james/projects/mk/invoices/lib/string_utils.js"...
Copying "/home/james/.meteor-kitchen/templates/bootstrap/object_utils.js" to "/home/james/projects/mk/invoices/lib/object_utils.js"...
Copying "/home/james/.meteor-kitchen/templates/bootstrap/http_utils.js" to "/home/james/projects/mk/invoices/client/lib/http_utils.js"...
Copying "/home/james/.meteor-kitchen/templates/bootstrap/form_utils.js" to "/home/james/projects/mk/invoices/client/lib/form_utils.js"...
Converting JavaScript files to CoffeeScript...
Executing "js2coffee /home/james/projects/mk/invoices/client/lib/form_utils.js > /home/james/projects/mk/invoices/client/lib/form_utils.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/lib/http_utils.js > /home/james/projects/mk/invoices/client/lib/http_utils.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/not_found/not_found.js > /home/james/projects/mk/invoices/client/views/not_found/not_found.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/home_public/home_public.js > /home/james/projects/mk/invoices/client/views/home_public/home_public.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/insert/insert.js > /home/james/projects/mk/invoices/client/views/invoices/insert/insert.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/details/insert/insert.js > /home/james/projects/mk/invoices/client/views/invoices/details/insert/insert.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/details/details.js > /home/james/projects/mk/invoices/client/views/invoices/details/details.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/details/edit/edit.js > /home/james/projects/mk/invoices/client/views/invoices/details/edit/edit.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/details/items/items.js > /home/james/projects/mk/invoices/client/views/invoices/details/items/items.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/invoices.js > /home/james/projects/mk/invoices/client/views/invoices/invoices.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/invoices/edit/edit.js > /home/james/projects/mk/invoices/client/views/invoices/edit/edit.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/logout/logout.js > /home/james/projects/mk/invoices/client/views/logout/logout.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/layout/layout.js > /home/james/projects/mk/invoices/client/views/layout/layout.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/user_settings/user_settings.js > /home/james/projects/mk/invoices/client/views/user_settings/user_settings.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/user_settings/change_pass/change_pass.js > /home/james/projects/mk/invoices/client/views/user_settings/change_pass/change_pass.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/forgot_password/forgot_password.js > /home/james/projects/mk/invoices/client/views/forgot_password/forgot_password.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/loading/loading.js > /home/james/projects/mk/invoices/client/views/loading/loading.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/login/login.js > /home/james/projects/mk/invoices/client/views/login/login.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/customers/insert/insert.js > /home/james/projects/mk/invoices/client/views/customers/insert/insert.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/customers/details/details.js > /home/james/projects/mk/invoices/client/views/customers/details/details.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/customers/customers.js > /home/james/projects/mk/invoices/client/views/customers/customers.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/customers/edit/edit.js > /home/james/projects/mk/invoices/client/views/customers/edit/edit.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/reset_password/reset_password.js > /home/james/projects/mk/invoices/client/views/reset_password/reset_password.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/home_private/home_private.js > /home/james/projects/mk/invoices/client/views/home_private/home_private.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/views/register/register.js > /home/james/projects/mk/invoices/client/views/register/register.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/client/client.js > /home/james/projects/mk/invoices/client/client.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/lib/string_utils.js > /home/james/projects/mk/invoices/lib/string_utils.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/lib/object_utils.js > /home/james/projects/mk/invoices/lib/object_utils.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/collections/customers.js > /home/james/projects/mk/invoices/server/collections/customers.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/collections/invoices.js > /home/james/projects/mk/invoices/server/collections/invoices.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/collections/invoice_items.js > /home/james/projects/mk/invoices/server/collections/invoice_items.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/publish/customers.js > /home/james/projects/mk/invoices/server/publish/customers.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/publish/invoices.js > /home/james/projects/mk/invoices/server/publish/invoices.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/publish/invoice_items.js > /home/james/projects/mk/invoices/server/publish/invoice_items.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/server/server.js > /home/james/projects/mk/invoices/server/server.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/collections/customers.js > /home/james/projects/mk/invoices/both/collections/customers.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/collections/invoices.js > /home/james/projects/mk/invoices/both/collections/invoices.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/collections/invoice_items.js > /home/james/projects/mk/invoices/both/collections/invoice_items.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/home_public/home_public_controller.js > /home/james/projects/mk/invoices/both/router/controllers/home_public/home_public_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/insert/insert_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/insert/insert_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/details/insert/insert_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/details/insert/insert_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/details/details_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/details/details_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/details/edit/edit_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/details/edit/edit_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/details/items/items_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/details/items/items_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/invoices_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/invoices_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/invoices/edit/edit_controller.js > /home/james/projects/mk/invoices/both/router/controllers/invoices/edit/edit_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/logout/logout_controller.js > /home/james/projects/mk/invoices/both/router/controllers/logout/logout_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/user_settings/user_settings_controller.js > /home/james/projects/mk/invoices/both/router/controllers/user_settings/user_settings_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/user_settings/change_pass/change_pass_controller.js > /home/james/projects/mk/invoices/both/router/controllers/user_settings/change_pass/change_pass_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/forgot_password/forgot_password_controller.js > /home/james/projects/mk/invoices/both/router/controllers/forgot_password/forgot_password_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/login/login_controller.js > /home/james/projects/mk/invoices/both/router/controllers/login/login_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/customers/insert/insert_controller.js > /home/james/projects/mk/invoices/both/router/controllers/customers/insert/insert_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/customers/details/details_controller.js > /home/james/projects/mk/invoices/both/router/controllers/customers/details/details_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/customers/customers_controller.js > /home/james/projects/mk/invoices/both/router/controllers/customers/customers_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/customers/edit/edit_controller.js > /home/james/projects/mk/invoices/both/router/controllers/customers/edit/edit_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/reset_password/reset_password_controller.js > /home/james/projects/mk/invoices/both/router/controllers/reset_password/reset_password_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/home_private/home_private_controller.js > /home/james/projects/mk/invoices/both/router/controllers/home_private/home_private_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/controllers/register/register_controller.js > /home/james/projects/mk/invoices/both/router/controllers/register/register_controller.coffee"...
Executing "js2coffee /home/james/projects/mk/invoices/both/router/router.js > /home/james/projects/mk/invoices/both/router/router.coffee"...
Converting HTML files to Jade...
Converting "/home/james/projects/mk/invoices/client/views/not_found/not_found.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/home_public/home_public.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/insert/insert.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/details/insert/insert.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/details/details.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/details/edit/edit.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/details/items/items.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/invoices.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/invoices/edit/edit.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/logout/logout.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/layout/layout.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/user_settings/user_settings.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/user_settings/change_pass/change_pass.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/forgot_password/forgot_password.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/loading/loading.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/login/login.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/customers/insert/insert.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/customers/details/details.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/customers/customers.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/customers/edit/edit.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/reset_password/reset_password.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/home_private/home_private.html" to Jade...
Converting "/home/james/projects/mk/invoices/client/views/register/register.html" to Jade...
Generator finished.
james@agape ~/projects/mk $ cd invoices/
james@agape ~/projects/mk/invoices $ ll
total 40
drwxr-xr-x 10 james james 4096 Dec 2 21:51 ./
drwxr-xr-x 4 james james 4096 Dec 2 21:51 ../
drwxr-xr-x 5 james james 4096 Dec 2 21:51 both/
drwxr-xr-x 5 james james 4096 Dec 2 21:51 client/
drwxr-xr-x 2 james james 4096 Dec 2 21:51 lib/
drwxr-xr-x 2 james james 4096 Dec 2 21:51 .meteor/
drwxr-xr-x 2 james james 4096 Dec 2 21:51 private/
drwxr-xr-x 3 james james 4096 Dec 2 21:51 public/
drwxr-xr-x 7 james james 4096 Dec 2 21:51 server/
drwxr-xr-x 2 james james 4096 Dec 2 21:51 settings/
james@agape ~/projects/mk/invoices $ meteor
[[[[[ ~/projects/mk/invoices ]]]]]
=> Started proxy.
=> Started MongoDB.
=> Errors prevented startup:
While Building the application:
:892:13: Can't use the built-in 'if' here (compiling client/views/invoices/details/items/items.jade)
at [object Object]..extend.codeGenPath (:892:13)
at [object Object]..extend.codeGenTemplateTag (:823:31)
at [object Object].SpacebarsCompiler.TemplateTagReplacer.def.visitObject (:1083:27)
at [object Object].HTML.Visitor.def.visit (:101:31)
at Object.SpacebarsCompiler.codeGen (:1130:26)
at [object Object]..extend.codeGenBlock (:997:30)
at [object Object]..extend.codeGenTemplateTag (:810:36)
at [object Object].SpacebarsCompiler.TemplateTagReplacer.def.visitObject (:1083:27)
at [object Object].HTML.Visitor.def.visit (:101:31)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at SpacebarsCompiler.codeGen (:1130:26)
at :630:18
at Function..each..forEach (:147:22)
at sourceHandler (:624:5)
:892:13: Can't use the built-in 'if' here (compiling client/views/customers/customers.jade)
at [object Object]..extend.codeGenPath (:892:13)
at [object Object]..extend.codeGenTemplateTag (:823:31)
at [object Object].SpacebarsCompiler.TemplateTagReplacer.def.visitObject (:1083:27)
at [object Object].HTML.Visitor.def.visit (:101:31)
at Object.SpacebarsCompiler.codeGen (:1130:26)
at [object Object]..extend.codeGenBlock (:997:30)
at [object Object]..extend.codeGenTemplateTag (:810:36)
at [object Object].SpacebarsCompiler.TemplateTagReplacer.def.visitObject (:1083:27)
at [object Object].HTML.Visitor.def.visit (:101:31)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at SpacebarsCompiler.codeGen (:1130:26)
at :630:18
at Function..each..forEach (:147:22)
at sourceHandler (:624:5)
:892:13: Can't use the built-in 'if' here (compiling client/views/invoices/invoices.jade)
at [object Object]..extend.codeGenPath (:892:13)
at [object Object]..extend.codeGenTemplateTag (:823:31)
at [object Object].SpacebarsCompiler.TemplateTagReplacer.def.visitObject (:1083:27)
at [object Object].HTML.Visitor.def.visit (:101:31)
at Object.SpacebarsCompiler.codeGen (:1130:26)
at [object Object]..extend.codeGenBlock (:997:30)
at [object Object]..extend.codeGenTemplateTag (:810:36)
at [object Object].SpacebarsCompiler.TemplateTagReplacer.def.visitObject (:1083:27)
at [object Object].HTML.Visitor.def.visit (:101:31)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at [object Object].HTML.TransformingVisitor.def.visitArray (:140:32)
at [object Object].HTML.TransformingVisitor.def.visitChildren (:173:28)
at [object Object].HTML.TransformingVisitor.def.visitTag (:159:42)
at [object Object].HTML.Visitor.def.visit (:86:32)
at SpacebarsCompiler.codeGen (:1130:26)
at :630:18
at Function..each..forEach (:147:22)
at sourceHandler (:624:5)
=> Your application has errors. Waiting for file change.
@perak since you have been working with Kitchen the longest do you have any suggestions with managing medium to large JSON files?
I find my JSON getting out of hand quickly. My eyes have brackets burned into my retinas! LOL
I tried to modularize into separate JSON then compile it later with a deep merge script but alas I could not get it to work perfectly.
Reading the documentation, it seems that a "Custom Component" and a "Plug-in" are one in the same. If so, perhaps one of the two terms should be depreciated.
Perhaps a related issue (and previously reported) - there's the documentation issue with what are just plain "Components". Maybe http://getbootstrap.com/components/ and Kitchen's supported components are the same ?
When using a handlebars helper in the title of a page it renders as the string in the browser title.
"pages": [
{
"name": "home_private",
"title": "Welcome {{userFullName}}!",
"text": "This page is under construction."
}
]
makes site title in browser look like: Welcome {{userFullName}}!
Not terribly important but it looks a bit messy
Reset password link doesn't work :(
The Object Reference mentions that there is a dataview property called 'views', where you can provide an array of strings with the values "table", "list", "gallery". It seems that no matter what values are provided, only the 'table' view is generated.
The generated code has a session variable that seems to keep track of which view should be displayed. Does this mean that the user should be able to switch between view types?
It is entirely possible that I am not configuring something correctly, so I provided my example below. The views property is the last property inside "components".
{
"name": "employees",
"components": [
{
"name": "view",
"type": "dataview",
"title": "Employees",
"text_if_empty": "No employees :(",
"query": {
"name": "employees",
"collection": "employees",
"filter": {}
},
"insert_route": "employees.insert",
"edit_route": "employees.edit",
"edit_route_params": [
{ "name": "employeeId", "value": "this._id" }
],
"details_route": "employees.details",
"details_route_params": [
{ "name": "employeeId", "value": "this._id" }
],
"views": ["gallery", "list"]
}
],
"pages": [
{
"name": "insert",
"components": [
{
"name": "insert_form",
"type": "form",
"mode": "insert",
"title": "New Employee",
"query": {
"name": "employees_empty",
"collection": "employees",
"filter": {"_id": null}
},
"submit_route": "employees",
"cancel_route": "employees"
}
]
},
{
"name": "details",
"route_params": ["employeeId"],
"components": [
{
"name": "details_form",
"type": "form",
"mode": "read_only",
"title": "Details",
"query": {
"name": "employee",
"collection": "employees",
"filter": { "_id": ":employeeId" }
},
"close_route": "employees"
}
]
},
{
"name": "edit",
"route_params": ["employeeId"],
"components": [
{
"name": "edit_form",
"type": "form",
"mode": "update",
"title": "Edit employee",
"submit_route": "employees",
"cancel_route": "employees",
"query": {
"name": "employee",
"collection": "employees",
"filter": { "_id": ":employeeId" }
}
}
]
}
]
}
For improved collection security please consider integrating this package.
I may be looking in the wrong repository, unless it's closed source. Thanks for any info.
Maybe even break the long forms into Tabs (like: Step 1: Properties, Step 2: Behaviors, etc... where appropriate) , saving the data at each step?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.