
Research
npm Malware Targets Telegram Bot Developers with Persistent SSH Backdoors
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
@paxperscientiam/ts-models
Advanced tools
Base classes for model classes that store data in browser's localstorage.
This project provides two classes for building models with data stored in localstorage.
Definitions:
interface IStruct {
[prop: string]: string;
}
export declare class Model {
protected _id: number;
private _modelStore;
private _struct;
private _namespace;
constructor(namespace: string, struct: string[], id?: number);
private updateRegistry;
save(data: IStruct, overwrite?: boolean): void;
getItem(key: string): any;
get id(): number;
erase(): void;
dump(): any;
}
export declare class Collection {
private _modelStore;
private _namespace;
constructor(namespace: string);
total(): number;
}
# clone and cd into directory
# install dependencies
npm install
# build project and load test server
# This should open localhost:4444 in your browser
npm run example
In this example I've created a model to represent a user. When instantiating the parent class (Model
), two parameters are required: a namespace ("User"
) and the structure of model. The Model
limits saves (more on that later) to the properties specified in the structure parameter.
class User extends Model {
constructor(id?: number) {
super(
"User",
[
"firstname",
"lastname",
"username",
"age",
],
id
)
}
get fullname() {
return `${this.firstname} ${this.lastname}`
}
}
Creating a new user would be done like this:
const user = new User()
Fetching an existing user
const user = new User(userID) // userID: number
Setting properties would be done like this:
user.save([
firstname: 'Isaac',
lastname: 'Asimov',
username: 'asimov1969',
age: 33
])
The id of this new user instance can be accessed like this:
user.id // => some integer
[] expand ORM features [] undo save [x] instead of supplying an id, an id should be automatically determined [] joins
FAQs
Base classes for model classes that store data in browser's localstorage.
The npm package @paxperscientiam/ts-models receives a total of 3 weekly downloads. As such, @paxperscientiam/ts-models popularity was classified as not popular.
We found that @paxperscientiam/ts-models demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
Security News
pip, PDM, pip-audit, and the packaging library are already adding support for Python’s new lock file format.
Product
Socket's Go support is now generally available, bringing automatic scanning and deep code analysis to all users with Go projects.