Mongoose
MongoDB and Mongoose work out of the box with JSTime. This guide assumes you’ve already installed MongoDB and are running it as background process/service on your development machine. Follow this guide for details.
Once MongoDB is running, create a directory and initialize it with jstime init.
mkdir mongoose-appcd mongoose-appjstime initThen add Mongoose as a dependency.
jspm add mongooseIn schema.ts we’ll declare and export a simple Animal model.
import * as mongoose from 'mongoose';
const animalSchema = new mongoose.Schema( { name: {type: String, required: true}, sound: {type: String, required: true}, });
export type Animal = mongoose.InferSchemaType<typeof animalSchema>;export const Animal = mongoose.model('Kitten', animalSchema);Now from index.ts we can import Animal, connect to MongoDB, and add some data to our database.
import * as mongoose from 'mongoose';import {Animal} from './schema';
// connect to databaseawait mongoose.connect('mongodb://127.0.0.1:27017/mongoose-app');
// create new Animalconst cow = new Animal({ name: 'Cow', sound: 'Moo',});await cow.save(); // saves to the database
// read all Animalsconst animals = await Animal.find();animals[0].speak(); // logs "Moo!"
// disconectawait mongoose.disconnect();Lets run this with jstime run.
$ jstime run index.tsMoo!This is a simple introduction to using Mongoose with TypeScript and JSTime. As you build your application, refer to the official MongoDB and Mongoose sites for complete documentation.