npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

parseless

v1.2.12

Published

parse-server library

Readme

parseless

Develop your parse-server apps using only raw jsons instead of ordinary parse server objects.

parseless on Github

parseless on npmjs

Examples

Getting started

npm install parseless
var Parse = require("node/parse"); 
// You have to import Parse by yourself. 
// If you are writing a cloud code function, for example, you should not import Parse

var Parseless = require("parseless");
var ParselessQuery = Parseless.ParselessQuery;
var ParselessObject = Parseless.ParselessObject;

ParselessObject

parseless works with a kind of object called ParselessObject. It's nothing more than a raw json with parse-server methods like save, destroy, etc.

Create new ParselessObject

var person = new ParselessObject("Person");
person.name = "Faruel";
person.country = "Brazil"

console.log(person);
// Ready to use person.save();

Create new ParselessObject from an existing json

var json = {
    "name": "Faruel", 
    "country": "Brazil"
};
var person = new ParselessObject("Person", json);

console.log(person);
// Ready to use person.save();

Create new ParselessObject from an existing parseObject

var person = new ParselessObject("Person");
person.loadFromParseObject(existingParseObject);

console.log(person);
// Ready to access raw attributes like person.name or person.country

Saving

var person = new ParselessObject("Person");
person.name = "Faruel";
person.country = "Brazil"
person.save(); // returns a promise

Saving an existing entity

// Creates a ParselessObject from an existing parseObject
var person = new ParselessObject("Person");
person.loadFromParseObject(existingParseObject);

person.name = "Changing name!";
person.save(); // returns a promise

Destroying an object

// Creates a ParselessObject from an existing parseObject
var person = new ParselessObject("Person");
person.loadFromParseObject(existingParseObject);

person.destroy(); // returns a promise

ParselessQuery

Use ParselessQuery to retrieve objects from parse-server already in a ParselessObject format.

get(classname, objectId)

var person = await ParselessQuery.get("Person", "jbVaQDHBuM");
console.log(person);
// Ready to access raw attributes like person.name or person.country

find(classname, query)

parse-server query objects

// Ordinary Parse.Query object.
// Also, you can use ParselessQuery.newQuery. Both return an ordinary Parse.Query object
var query = new Parse.Query("Person");
query.equalTo("name", "Faruel");

var people = await ParselessQuery.find("Person", query);
console.log(people);
// Ready to access raw attributes like people[0].name or people[0].country

first(classname, query)

parse-server query objects

var query = new Parse.Query("Person");
query.equalTo("name", "Faruel");

var person = await ParselessQuery.first("Person", query);
console.log(person);
// Ready to access raw attributes like person.name or person.country

Dynamic filters

You can filter your queries using parse-server's own query api. Alternatively, you can use Parseless filter engine.

var filters = [
    {"operation": "equalTo",
     "field": "name",
     "value": "Faruel"}
];
var people = await ParselessQuery.find("Person", null, filters); 
// Passing null to "query" parameter will force Parseless to create a simple query object.

The code above is equivalent to

var query = new Parse.Query("Person");
query.equalTo("name", "Faruel");
var people = await ParselessQuery.find("Person", query, filters);

newQuery(classname)

Returns an ordinary parse-server query object

var query = ParselessQuery.newQuery("Person");
// Same as new Parse.Query("Person")

Users

Use ParselessObject to work with Users

signUp

var user = new ParselessObject("User");
user.username = "faruel";
user.email = "[email protected]";
user.password = "123456";
user.signUp();

logIn

Not implemented yet. Although, you can use Parse.User.logIn();

Current User

Not implemented yet. We recommend using something like this

var currentUser = Parse.User.current();
var user = new ParselessObject("User");
user.loadFromParseObject(currentUser);

requestPasswordReset

There's no reason to wrap this function. See Parse.User.requestPasswordReset