themeteorchef / base Goto Github PK
View Code? Open in Web Editor NEWA starting point for Meteor apps.
Home Page: http://themeteorchef.com/base
License: MIT License
A starting point for Meteor apps.
Home Page: http://themeteorchef.com/base
License: MIT License
Bump Meteor to latest release.
A number of people have expressed an interest in dropping CoffeeScript for native JavaScript. As Base was designed specifically for recipes on The Meteor Chef, this seems like a worthwhile change. Also, ES6 looks promising and will eventually open up comparable support for a lot of the CoffeeScript techniques used in Base.
Noticing a lot of spam and bounces on demos and it'd be good to incorporate some sort of validation on the server. Should add a check via Mailgun validation API as well as adding a "verify" email step (maybe).
Add the ability to short-hand starting Meteor w/ settings.json
in tow. Hat tip to @gerardsychay for this one: http://differential.com/blog/use-packagejson-in-your-meteor-app-for-fun-profit.
via Tom Utiger
When booting Base on a Windows box the following error prevents the server from starting up:
Your app is crashing. Here's the latest log.
Started MongoDB.
Errors prevented startup:
While checking for particle4dev:[email protected]:
error: No compatible binary build found for this package. Contact the package author and ask them to publish it for your platform.
Your application has errors. Waiting for file change.
Need to spin up a VM and see what's up.
Not sure when it happened, but an ID is missing on the dropdown menu causing the menu toggle to break on mobile devices. Needs a patch!
Rename /client/routes/filters.js
to hooks.js
to better match Iron Router terminology.
Add the ability to set the current page's title (e.g. on the browser tab) via a currentPageTitle
Session variable. Example:
// Document Title
Tracker.autorun(function(){
var currentPage = Session.get('currentPageTitle');
document.title = currentPage ? currentPage + " | Site Name" : "Site Name";
});
Testing is straight up confusing. Need to add support for tests by default but also load up the repo with a lot of easy to grok examples for noobs like myself.
With Meteor's announcement that they'll be going whole hog on ES2015, Base should convert all code to be friendly from the start.
Include latest bug fix for Meteor at 1.0.3.2.
meteor --settings settings.json
Made a whoopsie in the CoffeeScript to JavaScript conversion. The {{currentRoute}}
helpers is broken as the helper itself doesn't explicitly return
any values :p
Since Base is a "from scratch" kit, it'd be nice to show an example of using _ensureIndex()
on collections to improve performance.
Not sure which package to use for this, or, to write something custom. Thinking here is that it would be nice to have a number of different implementations: top bar, bottom bar, four-corner-growl, popover, etc.
Current spread: https://atmospherejs.com/?q=alerts.
If anyone has thoughts on this or preference, please comment!
There are a bunch of established Meteor boilerplates out there. How does this one compare?
A little derp brought to my attention by this post.
Right now /server/admin/startup.js
is not wrapped in a Meteor.startup()
callback and should be.
I'd imagine that a lot of the configuration URLs for browser-policy are pretty common (e.g. Typekit, FontAwesome, S3, etc.). Would be nice to create a guide for these common settings so they can just be copy and pasted (as opposed to discovered through trial and error).
The application.html file is missing the viewport meta tag for Bootstrap's mobile/responsive support, as described here: http://getbootstrap.com/css/#overview-mobile.
Currently, loading base on a smartphone or tablet does not scale properly.
Would be nice to have a simple template with Loading...
in it.
Would be handy to see patterns/examples of certain files in the wiki, e.g. setting up collections, security patterns, etc.
As an opinionated convention, setup example collection to automatically deny all client-side inserts.
Collection.deny({
insert: function(){
// Deny all client side inserts and force Method-only insertion.
return true;
},
update: function(){
// Deny all client side updates and force Method-only insertion.
return true;
},
remove: function(){
// Deny all client side removes and force Method-only insertion.
return true;
}
});
There are a few "for every project" things that would be good to offer up as a checklist for going into production (would live in the wiki).
Windows support!
Per a chat w/ Josh Owens, settings.json
should be split into two versions: settings-development.json
and settings-production.json
. The latter should be added to a .gitignore
to prevent checking in production API keys/passwords to the repo.
In tandem with this, it'd be nice to add an example of a deployment script using this pattern so it's a bit less confusing.
This should include support for browser-policy
by default.
We can use stevezhu:lodash
for this.
Autopublish
is MIA but not providing any example publications to fill in the gap. Should define a publication off the Example
collection to showcase the pattern better.
Really handy package allow-env
gives you the ability to specify which environment variables are accessible on the client (e.g. checking if you're in development or production).
Feature request: Would be great to be able to easily use Flow Router with Base. Router Layer https://github.com/nicolaslopezj/meteor-router-layer/ helps package authors to support multiple routers.
Modulus has removed the -f
flag to force NPM installs. Need to update deployment scripts to reflect this change/support latest Modulus CLI.
It'd be nice to work in some sort of "standard" for Sass/CSS structure. I've grown fond of Harry Robert's (of CSS Wizardry) ITCSS methodology and would like to use it as a guide.
At some point I added in a package called npm-packages
that is a poor man's version of meteorhacks:npm
. Should swap out what's there now for the latter.
A reader expressed an interest in having a few of the more generic UI helpers present in the recipes present in Base. Need to comb through to see what would be a good candidate for this. May even be helpful to have as a package, too.
Bump Meteor to latest release.
Adding a settings.json to the root would be handy, along with some intstructions on how to get it working and why it's helpful.
oAuth is a great feature to have for something like this, maybe find a way to make its addition a conditional thing?
Been working with meteorhacks:ssr quite a bit and have become a fan of its API. It's also a bit more up to date than cmather:handlebars-server
and a few people have asked about the use of ssr
. Going to swap these out.
just a heads up of the conflict...
Thanks to a tip via @101dotnet, turns out that the pinglamb:bootstrap3
package currently in use has been deprecated.
Need to update to something maintained.
After updating Base to use the fourseven:scss
package in 2.13.0
, any partial files are being ignored without a master import file (expected behavior, just missed it). Removing the underscore prefix on each file name will allow files to be compiled automatically. Without this, changes to these files will not be bundled/force the browser to refresh.
"Ryan Glover" at https://github.com/themeteorchef/base/commits/master looks funny
Meteor has release a new version at 1.0.4.2
. The release introduces a new naming convention for onRendered
and onCreated
which we need to update.
Brought to mind by this: https://atom.io/docs/latest/contributing. Would be cool to have something that makes contributing a little more clear.
It'd be nice to get a "welcome" email pattern into the general workflow. Something that showcases how to do server side rendering (using something like meteorhacks:ssr
) for email.
I'd like Base to become more of a thing over time. Not sure if this will ever really happen, but would like to get a nice page setup to showcase what and who it's for.
This is more for TMC stuff. Would be nice to get a "skin" for Bootstrap that's unique to TMC. This is purely polish, so no immediacy to it. But, would be nice!
Although no collections are defined, would be good to have support for schemas. Thinking aldeed:collection2 would be best for this.
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.