Skip to content

Commit 1a49428

Browse files
Revised for Spring 2017.
1 parent 4b89b7c commit 1a49428

File tree

6 files changed

+114
-116
lines changed

6 files changed

+114
-116
lines changed

app/.meteor/packages

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,17 @@
77
# Basic packages and utilities for most Meteor app development
88
meteor-base@1.0.4
99
mobile-experience@1.0.4
10-
mongo@1.1.12_1
10+
mongo@1.1.14
1111
blaze-html-templates@1.0.4
12-
session@1.1.6
13-
jquery@1.11.9
14-
tracker@1.1.0
15-
es5-shim@4.6.14_1
16-
ecmascript@0.5.8_1
17-
underscore@1.0.9
18-
ejson@1.0.12
19-
check@1.2.3
20-
standard-minifier-js@1.2.0_1
12+
session@1.1.7
13+
jquery@1.11.10
14+
tracker@1.1.1
15+
es5-shim@4.6.15
16+
ecmascript@0.6.1
17+
underscore@1.0.10
18+
ejson@1.0.13
19+
check@1.2.4
20+
standard-minifier-js@1.2.1
2121
shell-server@0.2.1
2222

2323
# Collection utilities
@@ -30,8 +30,8 @@ aldeed:autoform
3030
sacha:spin
3131

3232
# Account management
33-
accounts-ui
34-
accounts-password@1.3.0
33+
accounts-ui@1.1.9
34+
accounts-password@1.3.3
3535

3636
# Routing
3737
kadira:flow-router
@@ -42,7 +42,7 @@ arillo:flow-router-helpers
4242
# Semantic UI (and packages to integrate with accounts and autoform)
4343
semantic:ui
4444
juliancwirko:postcss
45-
less@2.7.5_1
45+
less@2.7.8
4646
fabienb4:autoform-semantic-ui
4747

4848
# For prototyping purposes, enable autopublish and insecure

app/.meteor/release

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
METEOR@1.4.1.2
1+
METEOR@1.4.2.6

app/.meteor/versions

Lines changed: 74 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,105 +1,105 @@
1-
accounts-base@1.2.11
2-
accounts-password@1.3.0
1+
accounts-base@1.2.14
2+
accounts-password@1.3.4
33
accounts-ui@1.1.9
4-
accounts-ui-unstyled@1.1.12
4+
accounts-ui-unstyled@1.2.0
55
aldeed:autoform@5.8.1
66
aldeed:collection2@2.10.0
77
aldeed:collection2-core@1.2.0
88
aldeed:schema-deny@1.1.0
9-
aldeed:schema-index@1.1.0
9+
aldeed:schema-index@1.1.1
1010
aldeed:simple-schema@1.5.3
1111
allow-deny@1.0.5
1212
arillo:flow-router-helpers@0.5.2
1313
autopublish@1.0.7
14-
autoupdate@1.3.11
15-
babel-compiler@6.9.1_1
16-
babel-runtime@0.1.11_1
17-
base64@1.0.9
18-
binary-heap@1.0.9
19-
blaze@2.1.9
20-
blaze-html-templates@1.0.5
14+
autoupdate@1.3.12
15+
babel-compiler@6.14.0
16+
babel-runtime@1.0.1
17+
base64@1.0.10
18+
binary-heap@1.0.10
19+
blaze@2.3.0
20+
blaze-html-templates@1.1.0
2121
blaze-tools@1.0.10
22-
boilerplate-generator@1.0.9
23-
caching-compiler@1.1.7_1
24-
caching-html-compiler@1.0.7
25-
callback-hook@1.0.9
26-
check@1.2.3
27-
coffeescript@1.0.17
22+
boilerplate-generator@1.0.11
23+
caching-compiler@1.1.9
24+
caching-html-compiler@1.1.0
25+
callback-hook@1.0.10
26+
check@1.2.4
27+
coffeescript@1.12.0_1
2828
ddp@1.2.5
29-
ddp-client@1.3.1
30-
ddp-common@1.2.6
31-
ddp-rate-limiter@1.0.5
32-
ddp-server@1.3.10
29+
ddp-client@1.3.3
30+
ddp-common@1.2.8
31+
ddp-rate-limiter@1.0.6
32+
ddp-server@1.3.13
3333
deps@1.0.12
34-
diff-sequence@1.0.6
35-
ecmascript@0.5.8_1
36-
ecmascript-runtime@0.3.14_1
37-
ejson@1.0.12
38-
email@1.1.17
39-
es5-shim@4.6.14_1
34+
diff-sequence@1.0.7
35+
ecmascript@0.6.2
36+
ecmascript-runtime@0.3.15
37+
ejson@1.0.13
38+
email@1.1.18
39+
es5-shim@4.6.15
4040
fabienb4:autoform-semantic-ui@0.9.3
41-
fastclick@1.0.12
42-
geojson-utils@1.0.9
41+
fastclick@1.0.13
42+
geojson-utils@1.0.10
4343
hot-code-push@1.0.4
4444
html-tools@1.0.11
4545
htmljs@1.0.11
46-
http@1.2.9
47-
id-map@1.0.8
46+
http@1.2.11
47+
id-map@1.0.9
4848
insecure@1.0.7
49-
jquery@1.11.9
50-
juliancwirko:postcss@1.1.1
49+
jquery@1.11.10
50+
juliancwirko:postcss@1.2.0
5151
kadira:blaze-layout@2.3.0
5252
kadira:flow-router@2.12.1
53-
launch-screen@1.0.12
54-
less@2.7.5_1
53+
launch-screen@1.1.1
54+
less@2.7.9
5555
livedata@1.0.18
56-
localstorage@1.0.11
57-
logging@1.1.15_1
56+
localstorage@1.0.12
57+
logging@1.1.17
5858
mdg:validation-error@0.5.1
59-
meteor@1.2.17_1
59+
meteor@1.6.1
6060
meteor-base@1.0.4
61-
minifier-css@1.1.13
62-
minifier-js@1.2.14_1
63-
minimongo@1.0.17
61+
minifier-css@1.2.16
62+
minifier-js@1.2.17
63+
minimongo@1.0.20
6464
mobile-experience@1.0.4
65-
mobile-status-bar@1.0.12
66-
modules@0.7.6_1
67-
modules-runtime@0.7.6_1
68-
momentjs:moment@2.15.0
69-
mongo@1.1.12_1
70-
mongo-id@1.0.5
71-
npm-bcrypt@0.9.1
72-
npm-mongo@1.5.49
73-
observe-sequence@1.0.12
74-
ordered-dict@1.0.8
75-
promise@0.8.7
65+
mobile-status-bar@1.0.14
66+
modules@0.7.8
67+
modules-runtime@0.7.9
68+
momentjs:moment@2.17.1
69+
mongo@1.1.15
70+
mongo-id@1.0.6
71+
npm-bcrypt@0.9.2
72+
npm-mongo@2.2.16_1
73+
observe-sequence@1.0.15
74+
ordered-dict@1.0.9
75+
promise@0.8.8
7676
raix:eventemitter@0.1.3
7777
random@1.0.10
78-
rate-limit@1.0.5
78+
rate-limit@1.0.6
7979
reactive-dict@1.1.8
80-
reactive-var@1.0.10
81-
reload@1.1.10
82-
retry@1.0.8
83-
routepolicy@1.0.11
80+
reactive-var@1.0.11
81+
reload@1.1.11
82+
retry@1.0.9
83+
routepolicy@1.0.12
8484
sacha:spin@2.3.1
85-
semantic:ui@2.2.1
86-
semantic:ui-data@2.2.4
87-
service-configuration@1.0.10
88-
session@1.1.6
89-
sha@1.0.8
90-
shell-server@0.2.1
85+
semantic:ui@2.2.6_5
86+
semantic:ui-data@2.2.6_4
87+
service-configuration@1.0.11
88+
session@1.1.7
89+
sha@1.0.9
90+
shell-server@0.2.2
9191
spacebars@1.0.13
92-
spacebars-compiler@1.0.13
93-
srp@1.0.9
94-
standard-minifier-js@1.2.0_1
95-
templating@1.2.15
96-
templating-compiler@1.2.15
97-
templating-runtime@1.2.15
98-
templating-tools@1.0.5
99-
tracker@1.1.0
92+
spacebars-compiler@1.1.0
93+
srp@1.0.10
94+
standard-minifier-js@1.2.2
95+
templating@1.3.0
96+
templating-compiler@1.3.0
97+
templating-runtime@1.3.0
98+
templating-tools@1.1.0
99+
tracker@1.1.2
100100
ui@1.0.12
101-
underscore@1.0.9
102-
url@1.0.10
103-
webapp@1.3.11_1
101+
underscore@1.0.10
102+
url@1.1.0
103+
webapp@1.3.13
104104
webapp-hashing@1.0.9
105105
zimme:active-route@2.3.2

app/imports/ui/layouts/header.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<a class="{{ isActiveRoute 'Add_Stuff_Page'}} item" href="{{ pathFor 'Add_Stuff_Page' }}">Add Stuff </a>
77
<a class="{{ isActiveRoute 'List_Stuff_Page'}} item" href="{{ pathFor 'List_Stuff_Page' }}">List Stuff</a>
88
{{/if}}
9-
<a href="#" class="item">{{> loginButtons }} </a>
9+
<a href="#" class="right aligned item">{{> loginButtons align="right"}} </a>
1010
</div>
1111
</div>
1212
</template>

app/package.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
"lint": "eslint --quiet ./imports"
77
},
88
"dependencies": {
9+
"babel-runtime": "^6.22.0",
910
"bcrypt": "^0.8.7",
1011
"meteor-node-stubs": "~0.2.0"
1112
},
@@ -22,7 +23,11 @@
2223
},
2324
"postcss": {
2425
"plugins": {
25-
"autoprefixer": {"browsers": ["last 2 versions"]}
26+
"autoprefixer": {
27+
"browsers": [
28+
"last 2 versions"
29+
]
30+
}
2631
}
2732
}
2833
}

index.md

Lines changed: 19 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ To keep this codebase simple and small, some important capabilities are intentio
1616

1717
Examples of the these capabilities will be provided elsewhere.
1818

19-
## Typical usage
19+
## Installation
2020

2121
First, [install Meteor](https://www.meteor.com/install).
2222

@@ -30,17 +30,30 @@ Fourth, uncompress the zip file, and copy the following files and directories in
3030
* config/
3131
* .gitignore
3232

33-
You don't need to copy the README.md file (you should write your own), and you don't need to copy the doc/ directory (it contains only screenshots displayed in this page of documentation.)
33+
You don't need to copy the README.md or index.md files (you should write your own), and you don't need to copy the doc/ directory (it contains only screenshots displayed in this page of documentation.)
34+
35+
Now your local repo should contain the template. To test that everything is OK, cd into the app directory install the required libraries with:
3436

35-
Now your local repo should contain the template. To test that everything is OK, cd into the app directory and run the application with the following two commands:
3637

3738
```
3839
$ meteor npm install
40+
meteor npm install --save babel-runtime
41+
```
42+
43+
Once the libraries are installed, you can run the application by invoking the ["start" script in the package.json file](https://github.com/ics-software-engineering/meteor-application-template/blob/master/app/package.json#L5):
44+
45+
```
3946
$ meteor npm run start
4047
```
4148

4249
If all goes well, the template application will appear at [http://localhost:3000](http://localhost:3000). You can login using the credentials in [settings.development.json](https://github.com/ics-software-engineering/meteor-application-template/blob/master/config/settings.development.json), or else register a new account.
4350

51+
Lastly, you can run ESLint over the code in the imports/ directory with:
52+
53+
```
54+
meteor npm run lint
55+
```
56+
4457
## Walkthrough
4558

4659
The following sections describe the major features of this template.
@@ -145,27 +158,6 @@ This system adopts the following naming conventions:
145158

146159
### Preinstalled packages
147160

148-
This application includes a number of additional packages useful for development. Here is a recent output of `meteor list`, with base packages removed.
149-
150-
```
151-
accounts-password 1.3.0 Password support for accounts
152-
accounts-ui 1.1.9 Simple templates to add login widgets to an app
153-
aldeed:autoform 5.8.1 Easily create forms with automatic insert and update.
154-
aldeed:collection2 2.10.0 Automatic validation of insert/update operations on client and server.
155-
arillo:flow-router-helpers 0.5.2 Template helpers for flow-router
156-
autopublish 1.0.7 (For prototyping only) Publish the entire database to all clients
157-
check 1.2.3 Check whether a value matches a pattern
158-
fabienb4:autoform-semantic-ui 0.9.3 Semantic-ui template for aldeed:autoform package.
159-
insecure 1.0.7 (For prototyping only) Allow all database writes from the client
160-
juliancwirko:postcss 1.1.1 Minifier for Meteor with PostCSS processing
161-
kadira:blaze-layout 2.3.0 Layout Manager for Blaze (works well with FlowRouter)
162-
kadira:flow-router 2.12.1 Carefully Designed Client Side Router for Meteor
163-
less 2.7.5 Leaner CSS language
164-
sacha:spin 2.3.1 Simple spinner package for Meteor
165-
semantic:ui 2.2.1 Official Semantic UI Integration for Meteor
166-
zimme:active-route 2.3.2 Active route helpers
167-
```
168-
169161
In a nutshell, meteor-application-template includes support for:
170162

171163
* Forms (autoform, collection2, check, autoform-semantic-ui )
@@ -175,7 +167,6 @@ In a nutshell, meteor-application-template includes support for:
175167

176168
It does not provide security (both autopublish and insecure packages) remain enabled. This is intentional.
177169

178-
179170
### Application functionality
180171

181172
The application implements a simple CRUD application for managing "Stuff", which is a Mongo Collection consisting of a name (String) and a quantity (Number). There are four pages, each implemented by a template in the imports/ui/pages directory.
@@ -239,6 +230,8 @@ To implement the Add Stuff and Edit Stuff pages, the application uses [AutoForm]
239230

240231
To present the forms, the application uses the quickform component. See [imports/ui/pages/add-stuff-page.html](https://github.com/ics-software-engineering/meteor-application-template/blob/master/app/imports/ui/pages/add-stuff-page.html) and [imports/ui/pages/edit-stuff-page.html](https://github.com/ics-software-engineering/meteor-application-template/blob/master/app/imports/ui/pages/edit-stuff-page.html).
241232

233+
See [meteor-example-form](https://ics-software-engineering.github.io/meteor-example-form/) for a more sophisticated approach.
234+
242235
### Authentication
243236

244237
For authentication, the application uses the Meteor accounts-ui package, with some simple customization in [imports/startup/both/accounts-config.js](https://github.com/ics-software-engineering/meteor-application-template/blob/master/app/imports/startup/both/accounts-config.js).
@@ -280,7 +273,7 @@ It's significantly easier to do development with ESLint integrated directly into
280273

281274
## Screencast
282275

283-
Click the image below to watch a 27 minute walkthrough of this system.
276+
Click the image below to watch a 27 minute walkthrough of this system. This screencast was generated for a previous version of meteor-application-template, so there may be small differences in the code base.
284277

285278
[<img src="https://raw.githubusercontent.com/ics-software-engineering/meteor-application-template/master/doc/meteor-application-template-youtube.png" width="600">](https://www.youtube.com/watch?v=kEJN3kjyugs)
286279

0 commit comments

Comments
 (0)