Skip to content

cg219/greencherry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Green Cherry

Nodejs library for building web apps

Disclaimer

This library is still in active development and would not recommend using in projects until version 1.0.0.

Install

npm install greencherry

Importing Library

var cherry = require("greencherry");

Creating a Server

var cherry = require("greencherry");
var server = cherry.BasicServer;

server.create();
server.listen();

Customizing Server detail

Passing just the port

var cherry = require("greencherry");
var server = cherry.BasicServer;

server.create();
server.listen(8888);

Passing an options object

var cherry = require("greencherry");
var server = cherry.BasicServer;

server.create();
server.listen({
	host: 127.0.0.1,
	port: 8888,
	callback: function(){
		console.log("Server is Listening")
	}
});

Using the Router

var cherry = require("greencherry");
var server = cherry.BasicServer;
var api = cherry.BasicRouter;

server.create(api.router);
server.listen();

Adding a Route

var cherry = require("greencherry");
var server = cherry.BasicServer;
var api = cherry.BasicRouter;

api.add("/", function(req, res){
	res.writeHead(200);
	console.log("Home Page")
	res.end("Server Pinged From Router");
})

server.create(api.router);
server.listen();

Adding a Route with a parameter

var cherry = require("greencherry");
var server = cherry.BasicServer;
var api = cherry.BasicRouter;

api.add("/post/:id", function(req, res){
	res.writeHead(200);
	console.log("Posts Page")
	console.log("Params: " + req.parameters.id);
	res.end("Server Pinged From Router");
})

server.create(api.router);
server.listen();

Adding a Route to retrieve a file

var cherry = require("greencherry");
var server = cherry.BasicServer;
var api = cherry.BasicRouter;

api.root(__dirname);

api.add("/static/:file", function(req, res){
	req.parameters.file && api.serve(req.parameters.file, {useStatic : true}, function(err, file){
		if(err){
			console.log(err);
			return;
		}
		res.writeHead(200, {"Content-Type" : file.type});
		res.write(file.content);
		res.end();

	});
})

server.create(api.router);
server.listen();

Links

Donate

Donate via Paypal

License

Copyright (c) 2014 Clemente Gomez. All rights reserved.

Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by the imkreative. The name of the imkreative may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

About

Modules for Nodejs Development

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published