diff --git a/client/home/home.jsx b/client/home/home.jsx
new file mode 100644
index 0000000..21c2025
--- /dev/null
+++ b/client/home/home.jsx
@@ -0,0 +1,29 @@
+var React = require('react');
+var _ = require('lodash');
+var cx = require('classnames');
+
+
+
+
+//var Icon = require('naturalcrit/icon.svg.jsx');
+//var Logo = require('naturalcrit/logo/logo.jsx');
+
+//var HomebrewIcon = require('naturalcrit/homebrewIcon.svg.jsx');
+//var CombatIcon = require('naturalcrit/combatIcon.svg.jsx');
+
+var Home = React.createClass({
+
+ navigate : function(){
+
+ },
+
+ render : function(){
+ return(
+
+
+
+ );
+ }
+});
+
+module.exports = Home;
diff --git a/client/naturalCrit/home/home.less b/client/home/home.less
similarity index 92%
rename from client/naturalCrit/home/home.less
rename to client/home/home.less
index 165d5f3..ec02809 100644
--- a/client/naturalCrit/home/home.less
+++ b/client/home/home.less
@@ -1,3 +1,16 @@
+@import 'naturalcrit/styles/reset.less';
+//@import 'naturalcrit/styles/elements.less';
+@import 'naturalcrit/styles/animations.less';
+@import 'naturalcrit/styles/colors.less';
+@import 'naturalcrit/styles/tooltip.less';
+
+html,body, #reactContainer{
+ min-height: 100vh;
+ height: 100vh;
+ margin: 0;
+ font-family : 'Open Sans', sans-serif;
+}
+
.home{
height : 100vh;
diff --git a/client/homebrew/brewRenderer/brewRenderer.jsx b/client/homebrew/brewRenderer/brewRenderer.jsx
new file mode 100644
index 0000000..b1647ec
--- /dev/null
+++ b/client/homebrew/brewRenderer/brewRenderer.jsx
@@ -0,0 +1,14 @@
+var React = require('react');
+var _ = require('lodash');
+var cx = require('classnames');
+
+var COM = React.createClass({
+
+ render : function(){
+ return
+ COM Ready!
+
+ }
+});
+
+module.exports = COM;
diff --git a/client/homebrew/brewRenderer/brewRenderer.less b/client/homebrew/brewRenderer/brewRenderer.less
new file mode 100644
index 0000000..6bb4bdf
--- /dev/null
+++ b/client/homebrew/brewRenderer/brewRenderer.less
@@ -0,0 +1,3 @@
+.COM{
+
+}
\ No newline at end of file
diff --git a/client/homebrew/homebrew.jsx b/client/homebrew/homebrew.jsx
index 94ebe55..8bb19e0 100644
--- a/client/homebrew/homebrew.jsx
+++ b/client/homebrew/homebrew.jsx
@@ -4,9 +4,9 @@ var cx = require('classnames');
var CreateRouter = require('pico-router').createRouter;
-var HomePage = require('./homePage/homePage.jsx');
-var EditPage = require('./editPage/editPage.jsx');
-var SharePage = require('./sharePage/sharePage.jsx');
+var HomePage = require('./pages/homePage/homePage.jsx');
+var EditPage = require('./pages/editPage/editPage.jsx');
+var SharePage = require('./pages/sharePage/sharePage.jsx');
var Router;
var Homebrew = React.createClass({
diff --git a/client/homebrew/homebrew.less b/client/homebrew/homebrew.less
index 9fe5e25..231bd3f 100644
--- a/client/homebrew/homebrew.less
+++ b/client/homebrew/homebrew.less
@@ -9,7 +9,6 @@ html,body, #reactContainer{
height: 100vh;
margin: 0;
font-family : 'Open Sans', sans-serif;
- //overflow: hidden;
}
.homebrew{
@@ -26,7 +25,7 @@ html,body, #reactContainer{
.content{
flex: auto;
position: relative;
- height: calc(~"100% - 29px");
+ height: calc(~"100% - 29px"); //Navbar height
}
}
diff --git a/client/homebrew/editPage/editPage.jsx b/client/homebrew/pages/editPage/editPage.jsx
similarity index 86%
rename from client/homebrew/editPage/editPage.jsx
rename to client/homebrew/pages/editPage/editPage.jsx
index ad3188c..2496bcc 100644
--- a/client/homebrew/editPage/editPage.jsx
+++ b/client/homebrew/pages/editPage/editPage.jsx
@@ -2,11 +2,11 @@ var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
-var Statusbar = require('../statusbar/statusbar.jsx');
-var PageContainer = require('../pageContainer/pageContainer.jsx');
-var Editor = require('../editor/editor.jsx');
+var Statusbar = require('../../statusbar/statusbar.jsx');
+var PageContainer = require('../../pageContainer/pageContainer.jsx');
+var Editor = require('../../editor/editor.jsx');
-var FullClassGen = require('../editor/snippets/fullclass.gen.js');
+var FullClassGen = require('../../editor/snippets/fullclass.gen.js');
var request = require("superagent");
diff --git a/client/homebrew/editPage/editPage.less b/client/homebrew/pages/editPage/editPage.less
similarity index 100%
rename from client/homebrew/editPage/editPage.less
rename to client/homebrew/pages/editPage/editPage.less
diff --git a/client/homebrew/homePage/homePage.jsx b/client/homebrew/pages/homePage/homePage.jsx
similarity index 88%
rename from client/homebrew/homePage/homePage.jsx
rename to client/homebrew/pages/homePage/homePage.jsx
index becfa05..0297c5a 100644
--- a/client/homebrew/homePage/homePage.jsx
+++ b/client/homebrew/pages/homePage/homePage.jsx
@@ -3,23 +3,23 @@ var _ = require('lodash');
var cx = require('classnames');
//var Statusbar = require('../statusbar/statusbar.jsx');
-var PageContainer = require('../pageContainer/pageContainer.jsx');
+//var PageContainer = require('../pageContainer/pageContainer.jsx');
//var Editor = require('../editor/editor.jsx');
var Nav = require('naturalcrit/nav/nav.jsx');
-var Navbar = require('../navbar/navbar.jsx');
+var Navbar = require('../../navbar/navbar.jsx');
-var RedditShare = require('../navbar/redditShare.navitem.jsx');
+var RedditShare = require('../../navbar/redditShare.navitem.jsx');
-var SplitPane = require('../splitPane/splitPane.jsx');
+var SplitPane = require('naturalcrit/splitPane/splitPane.jsx');
//var CodeEditor = require('naturalcrit/codeEditor/codeEditor.jsx');
-var Editor = require('../editor/editor.jsx');
+var Editor = require('../../editor/editor.jsx');
diff --git a/client/homebrew/homePage/homePage.less b/client/homebrew/pages/homePage/homePage.less
similarity index 100%
rename from client/homebrew/homePage/homePage.less
rename to client/homebrew/pages/homePage/homePage.less
diff --git a/client/homebrew/homePage/welcome_msg.txt b/client/homebrew/pages/homePage/welcome_msg.txt
similarity index 100%
rename from client/homebrew/homePage/welcome_msg.txt
rename to client/homebrew/pages/homePage/welcome_msg.txt
diff --git a/client/homebrew/sharePage/sharePage.jsx b/client/homebrew/pages/sharePage/sharePage.jsx
similarity index 84%
rename from client/homebrew/sharePage/sharePage.jsx
rename to client/homebrew/pages/sharePage/sharePage.jsx
index a097ed7..b5a9bdf 100644
--- a/client/homebrew/sharePage/sharePage.jsx
+++ b/client/homebrew/pages/sharePage/sharePage.jsx
@@ -2,9 +2,9 @@ var React = require('react');
var _ = require('lodash');
var cx = require('classnames');
-var Statusbar = require('../statusbar/statusbar.jsx');
+var Statusbar = require('../../statusbar/statusbar.jsx');
-var PageContainer = require('../pageContainer/pageContainer.jsx');
+var PageContainer = require('../../pageContainer/pageContainer.jsx');
var SharePage = React.createClass({
getDefaultProps: function() {
diff --git a/client/homebrew/sharePage/sharePage.less b/client/homebrew/pages/sharePage/sharePage.less
similarity index 100%
rename from client/homebrew/sharePage/sharePage.less
rename to client/homebrew/pages/sharePage/sharePage.less
diff --git a/client/naturalCrit/favicon.ico b/client/main/favicon.ico
similarity index 100%
rename from client/naturalCrit/favicon.ico
rename to client/main/favicon.ico
diff --git a/client/main/main.jsx b/client/main/main.jsx
new file mode 100644
index 0000000..54bd35d
--- /dev/null
+++ b/client/main/main.jsx
@@ -0,0 +1,46 @@
+var React = require('react');
+var _ = require('lodash');
+var cx = require('classnames');
+
+var Router = require('pico-router');
+
+var Main = React.createClass({
+
+ render : function(){
+ return
+
+
+
+
+
+
Top-tier tools for the discerning DM
+
+
+
+
+ {/* Replace with anchor tag */}
+
+
+
+ {/*
*/}
+
The Homebrewery
+
Make authentic-looking 5e homebrews using Markdown
+
+
+
+ {/*
+
+
+
+
Combat Manager
+
Easily create and manage complex encouters for your party
+
+
+ */}
+
+
+
+ }
+});
+
+module.exports = Main;
diff --git a/client/main/main.less b/client/main/main.less
new file mode 100644
index 0000000..66d0da3
--- /dev/null
+++ b/client/main/main.less
@@ -0,0 +1,178 @@
+@import 'naturalcrit/styles/reset.less';
+//@import 'naturalcrit/styles/elements.less';
+@import 'naturalcrit/styles/animations.less';
+@import 'naturalcrit/styles/colors.less';
+@import 'naturalcrit/styles/tooltip.less';
+
+html,body, #reactContainer{
+ min-height: 100vh;
+ height: 100vh;
+ margin: 0;
+ font-family : 'Open Sans', sans-serif;
+}
+
+
+.main{
+ height : 100vh;
+ background-color : white;
+ .top{
+ .fadeInTop(1s);
+ .delay(0.5);
+ margin-bottom : 100px;
+ padding-top : 100px;
+ text-align : center;
+ .logo{
+ font-size : 4em;
+ color : black;
+ svg{
+ fill : black;
+ }
+ }
+ p{
+ margin-top : 10px;
+ font-size : 1.3em;
+ font-style : italic;
+ color : @grey;
+ }
+ }
+ .tools{
+ width : 100%;
+ text-align : center;
+ .toolContainer{
+ .sequentialDelay(0.5s, 1s);
+ .fadeInDown(1s);
+ .keep();
+ display : inline-block;
+ cursor : pointer;
+ opacity : 0;
+ text-align : center;
+ border-right : 1px solid #333;
+ &:last-child{
+ border : none;
+ }
+ .content{
+ .addSketch(360px);
+ .animateAll(0.5s);
+ position : relative;
+ width : 500px;
+ padding : 40px;
+ &:hover{
+ svg, h2{
+ .transform(scale(1.3));
+ }
+ }
+ h2{
+ .animateAll(0.5s);
+ font-family : 'CodeBold';
+ font-size : 2em;
+ }
+ p{
+ max-width : 300px;
+ margin : 20px auto;
+ line-height : 1.5em;
+ }
+ svg{
+ .animateAll(0.5s);
+ height : 10em;
+ }
+ }
+ //Proejct specific styles
+ &.homebrew{
+ .content:hover{
+ background-color : fade(@teal, 20%);
+ }
+ }
+ &.combat{
+ .content:hover{
+ background-color : fade(@red, 20%);
+ }
+ }
+ //Under Construction styles
+ &.underConstruction{
+ cursor : initial;
+ .content{
+ &:hover{
+ svg, h2{
+ .transform(scale(1.0));
+ }
+ }
+ svg, h2{
+ opacity : 0.3;
+ }
+ &:after{
+ .animateAll();
+ content : "Under Construction";
+ position : absolute;
+ display : block;
+ top : 120px;
+ left : 0px;
+ width : 100%;
+ padding : 10px 0px;
+ //opacity : 0;
+ background-color : fade(@grey, 50%);
+ font-size : 2em;
+ font-weight : 800;
+ text-align : center;
+ text-transform : uppercase;
+ }
+ &:before{
+ content : "";
+ position : absolute;
+ display : block;
+ top : 130px;
+ right : 30px;
+ height : 50px;
+ width : 40px;
+ //opacity : 0;
+ background-image : url('/assets/naturalCrit/home/bulldozer.png');
+ background-repeat : no-repeat;
+ background-size : contain;
+ animation-iteration-count : infinite;
+ }
+ }
+ }
+ }
+ }
+}
+.addSketch(@length, @color : black){
+ path, line, polyline, circle, rect, polygon {
+ .sketch(@length, @color, 4s);
+ stroke-dasharray : @length;
+ stroke-dashoffset : 0px;
+ stroke : @color;
+ stroke-width : 0.5px;
+ fill : @color;
+ //.animateAll(3s);
+ }
+}
+.sketch(@length, @color : black, @duration : 3s, @easing : @defaultEasing){
+ .createAnimation(sketch, @duration, @easing);
+ .sketchKeyFrames(){
+ 0% { stroke-dashoffset : @length; fill: transparent;}
+ 50% { stroke-dashoffset : @length; fill: transparent;}
+ 80% { stroke-dashoffset : 0px; fill: transparent;}
+ 100% { stroke-dashoffset : 0px; fill:@color;}
+ }
+ @-webkit-keyframes sketch {.sketchKeyFrames();}
+ @-moz-keyframes sketch {.sketchKeyFrames();}
+ @-ms-keyframes sketch {.sketchKeyFrames();}
+ @-o-keyframes sketch {.sketchKeyFrames();}
+ @keyframes sketch {.sketchKeyFrames();}
+}
+/*
+.sketch(@length, @color : black, @duration : 3s, @easing : @defaultEasing){
+ .createAnimation(bounce, @duration, @easing);
+ .sketchKeyFrames(){
+ 0% { stroke-dashoffset : 0px; fill:@color;}
+ 15% { stroke-dashoffset : 0px; fill : transparent}
+ 50% { stroke-dashoffset : @length; fill: transparent}
+ 85% { stroke-dashoffset : 0px; fill:transparent;}
+ 100% { stroke-dashoffset : 0px; fill:@color;}
+ }
+ @-webkit-keyframes bounce {.sketchKeyFrames();}
+ @-moz-keyframes bounce {.sketchKeyFrames();}
+ @-ms-keyframes bounce {.sketchKeyFrames();}
+ @-o-keyframes bounce {.sketchKeyFrames();}
+ @keyframes bounce {.sketchKeyFrames();}
+}
+*/
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/combatManager.jsx b/client/naturalCrit/combatManager/combatManager.jsx
deleted file mode 100644
index fbb8c64..0000000
--- a/client/naturalCrit/combatManager/combatManager.jsx
+++ /dev/null
@@ -1,165 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var Sidebar = require('./sidebar/sidebar.jsx');
-var Encounter = require('./encounter/encounter.jsx');
-
-var encounters = [
- {
- name : 'The Big Bad',
- desc : 'The big fight!',
- reward : 'gems',
- enemies : ['goblin', 'goblin'],
- reserve : ['goblin'],
- },
- {
- name : 'Demon Goats',
- desc : 'Gross fight',
- reward : 'curved horn, goat sac',
- enemies : ['demon_goat', 'demon_goat', 'demon_goat'],
- unique : {
- demon_goat : {
- "hp" : 140,
- "ac" : 16,
- "attr" : {
- "str" : 8,
- "con" : 8,
- "dex" : 8,
- "int" : 8,
- "wis" : 8,
- "cha" : 8
- },
- "attacks" : {
- "charge" : {
- "atk" : "1d20+5",
- "dmg" : "1d8+5",
- "type" : "bludge"
- }
- },
- "abilities" : ["charge"],
- }
- }
- },
-
-];
-
-var defaultMonsterManual = require('naturalcrit/defaultMonsterManual.js');
-
-var attrMod = function(attr){
- return Math.floor(attr/2) - 5;
-}
-
-
-var Store = require('naturalcrit/combat.store');
-var Actions = require('naturalcrit/combat.actions');
-
-
-
-var CombatManager = React.createClass({
- mixins : [Store.mixin()],
-
-
- getInitialState: function() {
- var self = this;
- return {
- selectedEncounterIndex : 0,
- encounters : JSON.parse(localStorage.getItem('encounters')) || encounters,
- monsterManual : JSON.parse(localStorage.getItem('monsterManual')) || defaultMonsterManual,
-
- players : localStorage.getItem('players') || 'jasper 13\nzatch 19',
-
-
- };
- },
-
- onStoreChange : function(){
- console.log('STORE CAHNGE', Store.getInc());
- this.setState({
- inc : Store.getInc()
- })
- },
-
-
- handleEncounterJSONChange : function(encounterIndex, json){
- this.state.encounters[encounterIndex] = json;
- this.setState({
- encounters : this.state.encounters
- })
- localStorage.setItem("encounters", JSON.stringify(this.state.encounters));
- },
- handleMonsterManualJSONChange : function(json){
- this.setState({
- monsterManual : json
- });
- localStorage.setItem("monsterManual", JSON.stringify(this.state.monsterManual));
- },
- handlePlayerChange : function(e){
- this.setState({
- players : e.target.value
- });
- localStorage.setItem("players", e.target.value);
- },
- handleSelectedEncounterChange : function(encounterIndex){
- console.log(encounterIndex);
- this.setState({
- selectedEncounterIndex : encounterIndex
- });
- },
- handleRemoveEncounter : function(encounterIndex){
- this.state.encounters.splice(encounterIndex, 1);
- this.setState({
- encounters : this.state.encounters
- });
- localStorage.setItem("encounters", JSON.stringify(this.state.encounters));
- },
-
- renderSelectedEncounter : function(){
- var self = this;
-
- if(this.state.selectedEncounterIndex != null && this.state.encounters[this.state.selectedEncounterIndex]){
- var selectedEncounter = this.state.encounters[this.state.selectedEncounterIndex]
- return
- }
-
- return null;
- },
-
- temp : function(){
- Actions.setInc(++this.state.inc);
- },
-
-
- render : function(){
- var self = this;
- return(
-
-
-
-
- {this.renderSelectedEncounter()}
-
-
-
-
- );
- }
-});
-
-module.exports = CombatManager;
diff --git a/client/naturalCrit/combatManager/combatManager.less b/client/naturalCrit/combatManager/combatManager.less
deleted file mode 100644
index 63bb121..0000000
--- a/client/naturalCrit/combatManager/combatManager.less
+++ /dev/null
@@ -1,8 +0,0 @@
-.combatManager{
-
- .encounterContainer{
- display: inline-block;
- vertical-align: top;
- }
-
-}
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/encounter/encounter.jsx b/client/naturalCrit/combatManager/encounter/encounter.jsx
deleted file mode 100644
index 406a432..0000000
--- a/client/naturalCrit/combatManager/encounter/encounter.jsx
+++ /dev/null
@@ -1,162 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var Store = require('naturalcrit/combat.store.js');
-
-var MonsterCard = require('./monsterCard/monsterCard.jsx');
-
-
-
-var attrMod = function(attr){
- return Math.floor(attr/2) - 5;
-}
-
-var Encounter = React.createClass({
- mixins : [Store.mixin()],
- getInitialState: function() {
- return {
- enemies: this.createEnemies(this.props)
- };
- },
-
- onStoreChange : function(){
- var players = Store.getplayersText();
-
- },
-
- getDefaultProps: function() {
- return {
- name : '',
- desc : '',
- reward : '',
- enemies : [],
- players : '',
- unique : {},
-
- monsterManual : {}
- };
- },
-
-
-
- componentWillReceiveProps: function(nextProps) {
- this.setState({
- enemies : this.createEnemies(nextProps)
- })
- },
-
- createEnemies : function(props){
- var self = this;
- return _.indexBy(_.map(props.enemies, function(type, index){
- return self.createEnemy(props, type, index)
- }), 'id')
- },
-
- createEnemy : function(props, type, index){
- var stats = props.unique[type] || props.monsterManual[type];
- if(!stats) return;
- return _.extend({
- id : type + index,
- name : type,
- currentHP : stats.hp,
- initiative : _.random(1,20) + attrMod(stats.attr.dex)
- }, stats);
- },
-
-
- updateHP : function(enemyId, newHP){
- this.state.enemies[enemyId].currentHP = newHP;
- this.setState({
- enemies : this.state.enemies
- });
- },
- removeEnemy : function(enemyId){
- delete this.state.enemies[enemyId];
- this.setState({
- enemies : this.state.enemies
- });
- },
-
-
- getPlayerObjects : function(){
- return _.reduce(this.props.players.split('\n'), function(r, line){
- var parts = line.split(' ');
- if(parts.length != 2) return r;
- r.push({
- name : parts[0],
- initiative : parts[1] * 1,
- isPC : true
- })
- return r;
- },[])
- },
-
-
- renderEnemies : function(){
- var self = this;
-
- var sortedEnemies = _.sortBy(_.union(_.values(this.state.enemies), this.getPlayerObjects()), function(e){
- if(e && e.initiative) return -e.initiative;
- return 0;
- });
-
- return _.map(sortedEnemies, function(enemy){
- if(enemy.isPC){
- return
- }
-
- return
- })
- },
-
- render : function(){
- var self = this;
-
- var reward;
- if(this.props.reward){
- reward =
- Rewards: {this.props.reward}
-
- }
-
- return(
-
-
-
{this.props.name}
-
{this.props.desc}
- {reward}
-
-
-
- {this.renderEnemies()}
-
-
- );
- }
-});
-
-module.exports = Encounter;
-
-
-var PlayerCard = React.createClass({
-
- getDefaultProps: function() {
- return {
- name : '',
- initiative : 0
- };
- },
- render : function(){
- return
- {_.startCase(this.props.name)}
- {this.props.initiative}
-
- },
-
-})
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/encounter/encounter.less b/client/naturalCrit/combatManager/encounter/encounter.less
deleted file mode 100644
index e458274..0000000
--- a/client/naturalCrit/combatManager/encounter/encounter.less
+++ /dev/null
@@ -1,36 +0,0 @@
-
-.mainEncounter{
- box-sizing : border-box;
- overflow : hidden;
- width : auto;
-
- &>.info{
-
- margin-left: 10px;
- padding-bottom : 10px;
- border-bottom: 1px solid #ddd;
- h1{
- font-size: 2em;
- font-weight: 800;
- margin-bottom: 5px;
- }
- p{
- margin-left: 10px;
- font-size: 0.8em;
- line-height: 1.5em;
- max-width: 600px;
- }
- .reward{
- font-size: 0.8em;
- font-weight: 800;
- margin-top: 5px;
- i{
- margin-right: 5px;
- }
- }
-
- }
-
-
-
-}
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/encounter/monsterCard/attackSlot/attackSlot.jsx b/client/naturalCrit/combatManager/encounter/monsterCard/attackSlot/attackSlot.jsx
deleted file mode 100644
index 274cd29..0000000
--- a/client/naturalCrit/combatManager/encounter/monsterCard/attackSlot/attackSlot.jsx
+++ /dev/null
@@ -1,101 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var RollDice = require('naturalcrit/rollDice');
-
-var AttackSlot = React.createClass({
- getDefaultProps: function() {
- return {
- name : '',
- uses : null
- };
- },
-
- getInitialState: function() {
- return {
- lastRoll: {},
- usedCount : 0
- };
- },
-
- rollDice : function(key, notation){
- var res = RollDice(notation);
- this.state.lastRoll[key] = res
- this.state.lastRoll[key + 'key'] = _.uniqueId(key);
- this.setState({
- lastRoll : this.state.lastRoll
- })
- },
-
- renderUses : function(){
- var self = this;
- if(!this.props.uses) return null;
-
- return _.times(this.props.uses, function(index){
- var atCount = index < self.state.usedCount;
- return
- })
- },
- updateCount : function(used){
- this.setState({
- usedCount : this.state.usedCount + (used ? -1 : 1)
- });
- },
-
- renderNotes : function(){
- var notes = _.omit(this.props, ['name', 'atk', 'dmg', 'uses', 'heal']);
- return _.map(notes, function(text, key){
- return {key + ': ' + text}
- });
- },
-
- renderRolls : function(){
- var self = this;
-
- return _.map(['atk', 'dmg', 'heal'], function(type){
- if(!self.props[type]) return null;
- return
-
-
- {self.state.lastRoll[type]}
-
- })
-
- },
-
-
- render : function(){
- var self = this;
- return(
-
-
-
{this.props.name}
-
- {this.renderUses()}
-
-
- {this.renderNotes()}
-
-
-
-
- {this.renderRolls()}
-
-
- );
- }
-});
-
-module.exports = AttackSlot;
diff --git a/client/naturalCrit/combatManager/encounter/monsterCard/attackSlot/attackSlot.less b/client/naturalCrit/combatManager/encounter/monsterCard/attackSlot/attackSlot.less
deleted file mode 100644
index 0a5ee42..0000000
--- a/client/naturalCrit/combatManager/encounter/monsterCard/attackSlot/attackSlot.less
+++ /dev/null
@@ -1,71 +0,0 @@
-
-.attackSlot{
- //border : 1px solid black;
- border-bottom: 1px solid #eee;
- margin-bottom : 5px;
- font-size : 0.8em;
- .info, .rolls{
- display : inline-block;
- vertical-align : top;
- }
- .info{
- width : 40%;
- .name{
- font-weight : 800;
- margin-bottom: 3px;
- }
- .notes{
- font-size : 0.8em;
- }
- .uses{
- cursor : pointer;
- //font-size: 0.8em;
- //margin-top: 3px;
- }
- }
- .rolls{
- .roll{
- margin-bottom : 2px;
- &>span{
- font-weight: 800;
- .fadeInLeft();
- }
- button{
- width : 70px;
- margin-right : 5px;
- cursor : pointer;
- font-size : 0.7em;
- font-weight : 800;
- text-align : left;
- border : none;
- outline : 0;
- i{
- width : 15px;
- margin-right : 5px;
- border-right : 1px solid white;
- }
- &:hover{
- //text-align: right;
- }
- }
- &.atk{
- button{
- background-color : fade(@blue, 40%);
- i { border-color: @blue}
- }
- }
- &.dmg{
- button{
- background-color : fade(@red, 40%);
- i { border-color: @red}
- }
- }
- &.heal{
- button{
- background-color : fade(@green, 40%);
- i { border-color: @green}
- }
- }
- }
- }
-}
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/encounter/monsterCard/monsterCard.jsx b/client/naturalCrit/combatManager/encounter/monsterCard/monsterCard.jsx
deleted file mode 100644
index fdded94..0000000
--- a/client/naturalCrit/combatManager/encounter/monsterCard/monsterCard.jsx
+++ /dev/null
@@ -1,202 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var AttackSlot = require('./attackSlot/attackSlot.jsx');
-
-var MonsterCard = React.createClass({
- getDefaultProps: function() {
- return {
- name : '',
- hp : 1,
- currentHP : 1,
- ac: 1,
- move : 30,
- attr : {
- str : 8,
- con : 8,
- dex : 8,
- int : 8,
- wis : 8,
- cha : 8
- },
- attacks : {},
- spells : {},
- abilities : [],
- items : [],
-
- updateHP : function(){},
- remove : function(){},
- };
- },
-
- getInitialState: function() {
- return {
- status : 'normal',
- usedItems : [],
- lastRoll : { },
- mousePos : null,
- tempHP : 0
- };
- },
-
- componentDidMount: function() {
- window.addEventListener('mousemove', this.handleMouseDrag);
- window.addEventListener('mouseup', this.handleMouseUp);
- },
-
- handleMouseDown : function(e){
- this.setState({
- mousePos : {
- x : e.pageX,
- y : e.pageY,
- }
- });
- e.stopPropagation()
- e.preventDefault()
- },
- handleMouseUp : function(e){
- if(!this.state.mousePos) return;
-
-
- this.props.updateHP(this.props.currentHP + this.state.tempHP);
- this.setState({
- mousePos : null,
- tempHP : 0
- });
- },
-
- handleMouseDrag : function(e){
- if (!this.state.mousePos) return;
- var distance = Math.sqrt(Math.pow(e.pageX - this.state.mousePos.x, 2) + Math.pow(e.pageY - this.state.mousePos.y, 2));
- var mult = (e.pageY > this.state.mousePos.y ? -1 : 1)
-
- this.setState({
- tempHP : Math.floor(distance * mult/25)
- })
- },
-
- addUsed : function(item, shouldRemove){
- if(!shouldRemove) this.state.usedItems.push(item);
- if(shouldRemove) this.state.usedItems.splice(this.state.usedItems.indexOf(item), 1);
-
- this.setState({
- usedItems : this.state.usedItems
- });
- },
-
-
- renderHPBox : function(){
- var self = this;
-
- var tempHP
- if(this.state.tempHP){
- var sign = (this.state.tempHP > 0 ? '+' : '');
- tempHP = {['(',sign,this.state.tempHP,')'].join('')}
- }
-
- return
-
- {tempHP} {this.props.currentHP}
-
- {self.renderStats()}
-
- },
-
- renderStats : function(){
- var stats = {
- 'fa fa-shield' : this.props.ac,
- //'fa fa-hourglass-2' : this.props.initiative,
- }
- return _.map(stats, function(val, icon){
- return {val}
- })
- },
-
- renderAttacks : function(){
- var self = this;
- return _.map(this.props.attacks, function(attack, name){
- return
- })
- },
-
- renderSpells : function(){
- var self = this;
- return _.map(this.props.spells, function(spell, name){
- return
- })
- },
-
- renderAbilities : function(){
- return _.map(this.props.abilities, function(text, name){
- return
- {name}: {text}
-
- });
- },
-
- renderItems : function(){
- var self = this;
- var usedItems = this.state.usedItems.slice(0);
- return _.map(this.props.items, function(item, index){
- var used = _.contains(usedItems, item);
- if(used){
- usedItems.splice(usedItems.indexOf(item), 1);
- }
- return
- {item}
-
- });
- },
-
- render : function(){
- var self = this;
- var condition = ''
- if(this.props.currentHP + this.state.tempHP > this.props.hp) condition='overhealed';
- if(this.props.currentHP + this.state.tempHP <= this.props.hp * 0.5) condition='hurt';
- if(this.props.currentHP + this.state.tempHP <= this.props.hp * 0.2) condition='last_legs';
- if(this.props.currentHP + this.state.tempHP <= 0) condition='dead';
-
-
- return(
-
-
-
-
-
- {this.renderHPBox()}
-
- {this.props.name}
-
-
-
- {this.renderAttacks()}
-
-
- {this.renderSpells()}
-
-
-
- {this.renderAbilities()}
-
-
-
- {this.renderItems()}
-
-
- );
- }
-});
-
-module.exports = MonsterCard;
-
-/*
-
-
-{this.props.initiative}
-
-
-*/
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/encounter/monsterCard/monsterCard.less b/client/naturalCrit/combatManager/encounter/monsterCard/monsterCard.less
deleted file mode 100644
index fd82263..0000000
--- a/client/naturalCrit/combatManager/encounter/monsterCard/monsterCard.less
+++ /dev/null
@@ -1,129 +0,0 @@
-
-@marginSize : 10px;
-.playerCard{
- display : inline-block;
- box-sizing : border-box;
- margin : @marginSize;
- padding : 10px;
- background-color : white;
- border : 1px solid #bbb;
- .name{
- margin-right : 20px;
- }
- .initiative{
- font-size : 0.8em;
- i{
- font-size : 0.8em;
- }
- }
- &:nth-child(5n + 1){ background-color: fade(@blue, 25%); }
- &:nth-child(5n + 2){ background-color: fade(@purple, 25%); }
- &:nth-child(5n + 3){ background-color: fade(@steel, 25%); }
- &:nth-child(5n + 4){ background-color: fade(@green, 25%); }
- &:nth-child(5n + 5){ background-color: fade(@orange, 25%); }
-}
-.monsterCard{
- position : relative;
- display : inline-block;
- vertical-align : top;
- box-sizing : border-box;
- width : 220px;
- margin : @marginSize;
- padding : 10px;
- background-color : white;
- border : 1px solid #bbb;
- .healthbar{
- position : absolute;
- top : 0px;
- left : 0px;
- z-index : 50;
- height : 3px;
- max-width : 100%;
- background-color : @green;
- }
- .overhealbar{
- position : absolute;
- top : 0px;
- left : 0px;
- z-index : 100;
- height : 3px;
- max-width : 100%;
- background-color : @blueLight;
- }
- &.hurt{
- .healthbar{
- background-color : orange;
- }
- }
- &.last_legs{
- background-color : lighten(@red, 49%);
- .healthbar{
- background-color : red;
- }
- }
- &.dead{
- opacity : 0.3;
- }
- &>.info{
- margin-bottom : 10px;
- .name{
- margin-right : 10px;
- font-size : 1.5em;
- }
- .stat{
- margin-right : 5px;
- font-size : 0.7em;
- i{
- font-size : 0.7em;
- }
- }
- }
- .hpBox{
- .noselect();
- position : absolute;
- top : 5px;
- right : 5px;
- cursor : pointer;
- text-align : right;
- .currentHP{
- font-size : 2em;
- font-weight : 800;
- line-height : 0.8em;
- .tempHP{
- vertical-align : top;
- font-size : 0.4em;
- line-height : 0.8em;
- }
- }
- .stat{
- font-size : 0.8em;
- }
- .hpText{
- font-size : 0.6em;
- font-weight : 800;
- }
- }
- .abilitiesContainer{
- margin-top : 10px;
- .ability{
- font-size: 0.7em;
- .name{
- font-weight: 800;
- }
- }
- }
- .itemContainer{
- margin-top : 10px;
- i{
- font-size : 0.7em;
- }
- span{
- margin-right : 5px;
- cursor : pointer;
- font-size : 0.7em;
- &.used{
- text-decoration : line-through;
- }
- }
- }
-}
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/sidebar/CODE Bold.otf b/client/naturalCrit/combatManager/sidebar/CODE Bold.otf
deleted file mode 100644
index 50dd77d..0000000
Binary files a/client/naturalCrit/combatManager/sidebar/CODE Bold.otf and /dev/null differ
diff --git a/client/naturalCrit/combatManager/sidebar/CODE Light.otf b/client/naturalCrit/combatManager/sidebar/CODE Light.otf
deleted file mode 100644
index 1ff9d87..0000000
Binary files a/client/naturalCrit/combatManager/sidebar/CODE Light.otf and /dev/null differ
diff --git a/client/naturalCrit/combatManager/sidebar/dmDice/dmDice.jsx b/client/naturalCrit/combatManager/sidebar/dmDice/dmDice.jsx
deleted file mode 100644
index c5773f7..0000000
--- a/client/naturalCrit/combatManager/sidebar/dmDice/dmDice.jsx
+++ /dev/null
@@ -1,59 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var RollDice = require('naturalcrit/rollDice');
-
-var DmDice = React.createClass({
-
- getInitialState: function() {
- return {
- lastRoll:{ },
- diceNotation : {
- a : "1d20",
- b : "6d6 + 3",
- c : "1d20 - 1"
- }
-
- };
- },
-
- roll : function(id){
- this.state.lastRoll[id] = RollDice(this.state.diceNotation[id]);
- this.setState({
- lastRoll : this.state.lastRoll
- });
- },
- handleChange : function(id, e){
- this.state.diceNotation[id] = e.target.value;
- this.setState({
- diceNotation : this.state.diceNotation
- });
-
- e.stopPropagation();
- e.preventDefault();
- },
-
- renderRolls : function(){
- var self = this;
- return _.map(['a', 'b', 'c'], function(id){
- return
-
-
- {self.state.lastRoll[id]}
-
- })
- },
-
- render : function(){
- var self = this;
- return(
-
-
DM Dice
- {this.renderRolls()}
-
- );
- }
-});
-
-module.exports = DmDice;
diff --git a/client/naturalCrit/combatManager/sidebar/dmDice/dmDice.less b/client/naturalCrit/combatManager/sidebar/dmDice/dmDice.less
deleted file mode 100644
index e3428c5..0000000
--- a/client/naturalCrit/combatManager/sidebar/dmDice/dmDice.less
+++ /dev/null
@@ -1,32 +0,0 @@
-.dmDice{
-
- h3{
- color : white;
- background-color: @teal;
- }
-
- .roll{
- cursor: pointer;
- .noselect();
- input[type="text"]{
- margin-left: 10px;
- margin-bottom: 6px;
- margin-top: 6px;
- width : 60px;
- font-family: monospace;
- padding : 5px;
- }
- i.fa-random{
- font-size: 0.8em;
- margin: 0 10px;
- }
- span{
- font-weight: 800;
- .fadeInLeft();
- }
-
- &:hover{
- background-color: fade(@teal, 20%);
- }
- }
-}
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/sidebar/encounters/encounters.jsx b/client/naturalCrit/combatManager/sidebar/encounters/encounters.jsx
deleted file mode 100644
index 5bcf839..0000000
--- a/client/naturalCrit/combatManager/sidebar/encounters/encounters.jsx
+++ /dev/null
@@ -1,100 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var JSONFileEditor = require('naturalcrit/jsonFileEditor/jsonFileEditor.jsx');
-
-//var GetRandomEncounter = require('naturalcrit/randomEncounter.js');
-
-var Store = require('naturalcrit/combat.store.js');
-var Actions = require('naturalcrit/combat.actions.js');
-
-
-var Encounters = React.createClass({
- mixins : [Store.mixin()],
- onStoreChange : function(){
- this.setState({
- encounters : Store.getEncounters(),
- selectedEncounter : Store.getSelectedEncounterIndex()
- });
- },
- getInitialState: function() {
- return {
- encounters : Store.getEncounters(),
- selectedEncounter : Store.getSelectedEncounterIndex()
- };
- },
- /*
- getDefaultProps: function() {
- return {
- encounters : [],
- selectedEncounter : 0,
-
- onJSONChange : function(encounterIndex, json){},
- onSelectEncounter : function(encounterIndex){},
- onRemoveEncounter : function(encounterIndex){}
- };
- },
- */
- handleJSONChange : function(encounterIndex, json){
- //this.props.onJSONChange(encounterIndex, json);
- Actions.updateEncounter(encounterIndex, json);
- },
- handleSelectEncounter : function(encounterIndex){
- //this.props.onSelectEncounter(encounterIndex);
- Actions.selectEncounter(encounterIndex);
- },
- handleRemoveEncounter : function(encounterIndex){
- //this.props.onRemoveEncounter(encounterIndex);
- Actions.removeEncounter(encounterIndex);
- },
- addRandomEncounter : function(){
- Actions.addEncounter();
- },
-
-
- renderEncounters : function(){
- var self = this;
- return _.map(this.state.encounters, function(encounter, index){
-
- var isSelected = self.state.selectedEncounter == index;
- return
-
-
-
-
-
-
-
-
- })
- },
-
- render : function(){
- var self = this;
- return(
-
-
- Encounters
-
-
- {this.renderEncounters()}
-
-
-
-
-
- );
- }
-});
-
-module.exports = Encounters;
diff --git a/client/naturalCrit/combatManager/sidebar/encounters/encounters.less b/client/naturalCrit/combatManager/sidebar/encounters/encounters.less
deleted file mode 100644
index 371ec57..0000000
--- a/client/naturalCrit/combatManager/sidebar/encounters/encounters.less
+++ /dev/null
@@ -1,53 +0,0 @@
-
-.encounters{
- margin-bottom : 20px;
- h3{
- background-color : @red;
- color : white;
- button{
- .animate(color);
- float : right;
- cursor : pointer;
- background-color : transparent;
- border : none;
- outline : none;
- &:hover{
- color : white;
- }
- }
- }
- .encounter{
- position : relative;
- padding-left : 15px;
- border-left : 0px solid @teal;
- .animateAll();
- &:hover{
- i.remove{
- opacity : 1;
- }
- }
- i.remove{
- .animate(opacity);
- position : absolute;
- top : 3px;
- right : 3px;
- cursor : pointer;
- opacity : 0;
- font-size : 0.6em;
- color : #333;
- &:hover{
- color : @red;
- }
- }
- i.select{
- cursor : pointer;
- }
- .jsonFileEditor{
- display : inline-block;
- }
- &.selected{
- //background-color : fade(@green, 30%);
- border-left : 8px solid @teal;
- }
- }
-}
\ No newline at end of file
diff --git a/client/naturalCrit/combatManager/sidebar/sidebar.jsx b/client/naturalCrit/combatManager/sidebar/sidebar.jsx
deleted file mode 100644
index c5daa37..0000000
--- a/client/naturalCrit/combatManager/sidebar/sidebar.jsx
+++ /dev/null
@@ -1,76 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var JSONFileEditor = require('naturalcrit/jsonFileEditor/jsonFileEditor.jsx');
-
-var DMDice = require('./dmDice/dmDice.jsx');
-var Encounters = require('./encounters/encounters.jsx');
-
-var Store = require('naturalcrit/combat.store.js');
-var Actions = require('naturalcrit/combat.actions.js');
-
-
-var Sidebar = React.createClass({
- mixins : [Store.mixin()],
-
- getInitialState: function() {
- return {
- hide : false,
-
- monsterManual : Store.getMonsterManual(),
- players : Store.getPlayersText()
- };
- },
-
- onStoreChange : function(){
- this.setState({
- players : Store.getPlayersText(),
- monsterManual : Store.getMonsterManual()
- })
- },
-
- handleLogoClick : function(){
- this.setState({
- hide : !this.state.hide
- })
- },
- handleMonsterManualChange : function(json){
- Actions.updateMonsterManual(json);
- },
- handlePlayerChange : function(e){
- Actions.updatePlayers(e.target.value);
- },
-
- render : function(){
- var self = this;
- return(
-
-
-
-
- NaturalCrit
- Combat Manager
-
-
-
-
-
-
-
-
-
Players
-
-
-
-
-
- );
- }
-});
-
-module.exports = Sidebar;
diff --git a/client/naturalCrit/combatManager/sidebar/sidebar.less b/client/naturalCrit/combatManager/sidebar/sidebar.less
deleted file mode 100644
index a94a408..0000000
--- a/client/naturalCrit/combatManager/sidebar/sidebar.less
+++ /dev/null
@@ -1,90 +0,0 @@
-
-@font-face {
- font-family : CodeLight;
- src : url('/assets/naturalCrit/sidebar/CODE Light.otf');
-}
-@font-face {
- font-family : CodeBold;
- src : url('/assets/naturalCrit/sidebar/CODE Bold.otf');
-}
-.sidebar{
- .animateAll();
- float : left;
- box-sizing : border-box;
- height : 100%;
- width : @sidebarWidth;
- padding-bottom : 20px;
- background-color : white;
- //border : 1px solid @steel;
- &.hide{
- height : 50px;
- width : 50px;
- .logo .name{
- left : -200px;
- opacity : 0;
- }
- .contents{
- height : 0px;
- opacity : 0;
- }
- }
- .logo{
- padding : 10px 10px;
- background-color : @steel;
- font-family : 'CodeLight', sans-serif;
- font-size : 1.8em;
- color : white;
- svg{
- vertical-align : middle;
- height : 1em;
- margin-right : 0.2em;
- cursor : pointer;
- fill : white;
- }
-
- span.name{
- .animateAll();
- position : absolute;
- top : 15px;
- left : 50px;
- opacity : 1;
- font-size: 0.9em;
- line-height: 0.5em;
- span.crit{
- font-family : 'CodeBold';
- }
- small{
- font-size: 0.3em;
- font-family : 'Open Sans';
- font-weight: 800;
- text-transform: uppercase;
- }
- }
- }
- .contents{
- .animate(opacity);
- box-sizing : border-box;
- width : 100%;
- &>*{
- width : 100%;
- }
- h3{
- padding : 10px;
- font-size : 0.8em;
- font-weight : 800;
- text-transform : uppercase;
- }
- .addPlayers{
- h3{
- color : white;
- background-color: @purple;
- }
- textarea{
- height : 80px;
- width : 100px;
- margin : 10px;
- }
- }
-
- }
-}
\ No newline at end of file
diff --git a/client/naturalCrit/home/bulldozer.png b/client/naturalCrit/home/bulldozer.png
deleted file mode 100644
index 3e5acc3..0000000
Binary files a/client/naturalCrit/home/bulldozer.png and /dev/null differ
diff --git a/client/naturalCrit/home/home.jsx b/client/naturalCrit/home/home.jsx
deleted file mode 100644
index 2262b7b..0000000
--- a/client/naturalCrit/home/home.jsx
+++ /dev/null
@@ -1,55 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-
-var Router = require('pico-router');
-
-
-//var Icon = require('naturalcrit/icon.svg.jsx');
-//var Logo = require('naturalcrit/logo/logo.jsx');
-
-//var HomebrewIcon = require('naturalcrit/homebrewIcon.svg.jsx');
-//var CombatIcon = require('naturalcrit/combatIcon.svg.jsx');
-
-var Home = React.createClass({
-
- navigate : function(){
-
- },
-
- render : function(){
- return(
-
-
-
-
-
-
Top-tier tools for the discerning DM
-
-
-
-
-
-
- {/*
*/}
-
The Homebrewery
-
Make authentic-looking 5e homebrews using Markdown
-
-
-
- {/*
-
-
-
-
Combat Manager
-
Easily create and manage complex encouters for your party
-
-
- */}
-
-
- );
- }
-});
-
-module.exports = Home;
diff --git a/client/naturalCrit/logo.svg.jsx b/client/naturalCrit/logo.svg.jsx
deleted file mode 100644
index e69de29..0000000
diff --git a/client/naturalCrit/naturalCrit.jsx b/client/naturalCrit/naturalCrit.jsx
deleted file mode 100644
index 3b3ec1b..0000000
--- a/client/naturalCrit/naturalCrit.jsx
+++ /dev/null
@@ -1,37 +0,0 @@
-var React = require('react');
-var _ = require('lodash');
-var cx = require('classnames');
-var CreateRouter = require('pico-router').createRouter;
-
-var Home = require('./home/home.jsx');
-//var CombatManager = require('./combatManager/combatManager.jsx');
-//var Homebrew = require('./homebrew/homebrew.jsx');
-
-
-var Router = CreateRouter({
- '/' : ,
- //'/combat' : ,
- //'/homebrew' : ,
-});
-
-
-var NaturalCrit = React.createClass({
- getDefaultProps: function() {
- return {
- url : '/',
- changelog : ''
- };
- },
-
- render : function(){
- return
-
-
- },
-});
-
-module.exports = NaturalCrit;
-
-
-
-
diff --git a/client/naturalCrit/naturalCrit.less b/client/naturalCrit/naturalCrit.less
deleted file mode 100644
index 02a17c9..0000000
--- a/client/naturalCrit/naturalCrit.less
+++ /dev/null
@@ -1,39 +0,0 @@
-@import 'naturalcrit/styles/reset.less';
-//@import 'naturalcrit/styles/elements.less';
-@import 'naturalcrit/styles/animations.less';
-@import 'naturalcrit/styles/colors.less';
-@import 'naturalcrit/styles/tooltip.less';
-
-@import 'font-awesome/css/font-awesome.css';
-
-html,body, #reactContainer, .naturalCrit{
- min-height : 100%;
-}
-
-@sidebarWidth : 250px;
-
-body{
- background-color : #eee;
- font-family : 'Open Sans', sans-serif;
- color : #4b5055;
- font-weight : 100;
- text-rendering : optimizeLegibility;
- margin : 0;
- padding : 0;
- height : 100%;
-}
-
-.naturalCrit{
- color : #333;
- background-color: #eee;
-
-}
-
-.noselect(){
- -webkit-touch-callout : none;
- -webkit-user-select : none;
- -khtml-user-select : none;
- -moz-user-select : none;
- -ms-user-select : none;
- user-select : none;
-}
\ No newline at end of file
diff --git a/client/template.dot b/client/template.dot
index 7434630..baf6255 100644
--- a/client/template.dot
+++ b/client/template.dot
@@ -4,22 +4,10 @@
-
+
{{=vitreum.css}}
{{=vitreum.globals}}
Natural Crit - D&D Tools
-
- {{? vitreum.inProduction}}
-
- {{?}}
{{=vitreum.component}}
@@ -27,4 +15,16 @@
{{=vitreum.libs}}
{{=vitreum.js}}
{{=vitreum.reactRender}}
+
+ {{? vitreum.inProduction}}
+
+ {{?}}
diff --git a/gulpfile.js b/gulpfile.js
index 9f3aba3..f49be4f 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -5,7 +5,12 @@ var gulp = require("gulp");
var gulp = vitreumTasks(gulp, {
- entryPoints: ["./client/naturalCrit", "./client/homebrew", "./client/admin"],
+ entryPoints: [
+ './client/main',
+ './client/homebrew',
+
+ './client/admin'
+ ],
DEV: true,
diff --git a/server.js b/server.js
index 203ac3c..793ddfc 100644
--- a/server.js
+++ b/server.js
@@ -49,9 +49,9 @@ app = require('./server/homebrew.server.js')(app);
app.get('*', function (req, res) {
vitreumRender({
- page: './build/naturalCrit/bundle.dot',
+ page: './build/home/bundle.dot',
globals:{},
- prerenderWith : './client/naturalCrit/naturalCrit.jsx',
+ prerenderWith : './client/home/home.jsx',
initialProps: {
url: req.originalUrl
},
diff --git a/server/homebrew.server.js b/server/homebrew.server.js
index 1ae045a..acd2001 100644
--- a/server/homebrew.server.js
+++ b/server/homebrew.server.js
@@ -95,7 +95,7 @@ module.exports = function(app){
});
//Home and 404, etc.
- var welcomeText = require('fs').readFileSync('./client/homebrew/homePage/welcome_msg.txt', 'utf8');
+ var welcomeText = require('fs').readFileSync('./client/homebrew/pages/homePage/welcome_msg.txt', 'utf8');
app.get('/homebrew*', function (req, res) {
vitreumRender({
page: './build/homebrew/bundle.dot',
diff --git a/client/homebrew/splitPane/splitPane.jsx b/shared/naturalcrit/splitPane/splitPane.jsx
similarity index 100%
rename from client/homebrew/splitPane/splitPane.jsx
rename to shared/naturalcrit/splitPane/splitPane.jsx
diff --git a/client/homebrew/splitPane/splitPane.less b/shared/naturalcrit/splitPane/splitPane.less
similarity index 100%
rename from client/homebrew/splitPane/splitPane.less
rename to shared/naturalcrit/splitPane/splitPane.less