Practical Keystone.js
$12.99
Minimum price
$14.99
Suggested price

Practical Keystone.js

A Hands On Introduction To Keystone.js Using a Real-World Project

About the Book

This book intends to elicit the setup and architecture of the keystone.js framework by way of using it to build a real world application for managing incident tickets. The book intends to show developers how quick it is to setup the framework and how easy it is to extend it. The custom types and fields set this framework apart from many existing frameworks and developers get all the freedom to build their application just as they envision it. Frontend designers will learn how to write clean markup and create their own templates using Swig, an elegant, flexible and concise templating language that allows anyone to write templates the way they want. Content editors will learn about the easy and powerful editing options in the responsive dashboard that the framework provides.

About the Author

Manikanta Panati
Manikanta Panati

Manikanta Panati has spent the last 10 years perfecting enterprise level application development using Microsoft and Open Source technologies. Recent projects include a very popular coupon site in Asia, a node.js powered application that aggregates and maintains business data for over 2.2 million businesses.  With a  Masters in Information Systems and a Masters in Project Management and Microsoft Certified Technical specialist (MCTS), Microsoft Certified Professional Developer (MCPD) certifications, he still learns something new everyday!. Born and brought up in beautiful Bangalore,India, and presently based out of equally beautiful North Carolina, he works for a multinational financial institution managing migration and development of projects.

Table of Contents

  • Introduction
    • What are web frameworks?
    • The Model-View-Template design pattern
    • Introducing the IncTicket Project
    • Errata and Suggestions
  • Chapter 1. Meet Keystone.js
    • Why use Keystone.js
    • What is Keystone.js Best for?
    • Keystone.js Versions
    • Installing MongoDB and Node.js
    • How to install Node.js
    • Useful Development and Debugging Tools.
    • Summary
  • Chapter 2. Building the IncTicket Application
    • Installing Keystone.js
    • Creating a new Keystone.js Application
    • Configuring Your Keystone.js Application
    • Project Structure
    • Creating Your First Model/List
    • Creating an administration site for your models
    • Creating Your First Route
    • Creating Your First View
    • Creating templates for your views
    • Adding pagination
    • Summary
  • Chapter 3. Introducing Keystone.js Models
    • Introducing the Mongoose ODM
    • Mongoose Schemas and Keystone Lists
    • Adding fields to your model
    • Defining Virtual Properties
    • Finding Data
    • Inserting a New Record
    • Updating Existing Records
    • Summary
  • Chapter 4. Model Relations
    • Defining Relations
    • Modeling One-to-Many Relations
    • Modeling Many-to-Many Relations
    • Filtering Relations
    • Summary
  • Chapter 5. Integrating Web Forms
    • Creating a New Ticket Form
    • Summary
  • Chapter 6. Filtering Requests with Middleware
    • Introducing Middleware
    • Introducing Keystone.js’s Default Middleware
    • Defining Middleware in Keystone.js
    • Assigning Middleware To Routes
    • Summary
  • Chapter 7. Authenticating and Managing Your Users
    • Configuring Authentication Options
    • The user model
    • Registering Users
    • User Login
    • Logging Out A User
    • Password Recovery
    • Retrieving the Authenticated User
    • Restricting Access to Authenticated Users
    • Securing your application
    • Summary
  • Chapter 8. Searching site data
    • MongoDB fulltext search
    • Summary
  • Chapter 9. Restful API for Mobile and SPA applications
    • Introducing Restful APIs
    • What Are We Building?
    • Tools for working with Restful APIs
    • Serve Data With GET Requests
    • Update Data With POST and PUT
    • Removing Data with DELETE
  • Chapter 10. Using template engines
    • Introducing the Swig Template Engine
    • Summary
  • Chapter 11. Deploying to Ubuntu Cloud Server
    • Introduction
    • What is Digital Ocean?
    • Provision a Server
    • Installing Node
    • Installing MongoDB
    • Install Redis for Caching
    • Install IncTicket Application
    • Manage Application with PM2
    • Install NGINX as Reverse Proxy Server
    • Summary

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub