
Security News
/Research
Fake Corepack Site Distributes Infostealer and Proxyware to Developers
A fake corepack.org site is impersonating the Node.js tool and delivers an infostealer and proxyware to developers who download it.
AppSchema is an ODM (Object Data Model) for Appwrite DB that simplifies interactions with Appwrite databases. It provides a structured way to define models, handle validation, and perform database operations with ease.
To install the AppSchema package, run:
npm install appschema
lib/
├── index.ts # Entry point
├── connection.ts # Appwrite connection handling
├── model.ts # Model definition and schema validation
├── query.ts # Fluent query builder
├── repository.ts # CRUD operations
└── schema.ts # Schema validation logic
const { AppwriteConnection } = require('appschema');
const endpoint = '<https://your-appwrite-server.com/v1>';
const projectId = 'your-project-id';
AppwriteConnection.initialize(endpoint, projectId);
AppwriteConnection.initialize('<https://appwrite.io>', 'projectId');
import { Model } from './model';
type Book = {
title: string;
author: string;
pages: number;
};
const bookSchema: JSONSchemaType<Book> = {
type: 'object',
properties: {
title: { type: 'string' },
author: { type: 'string' },
pages: { type: 'number' },
},
required: ['title', 'author', 'pages'],
additionalProperties: false,
};
const BookModel = new Model<Book>(bookSchema, 'collectionId', 'databaseId');
or
const { Model } = require('appschema');
const userSchema = {
type: 'object',
properties: {
name: { type: 'string', default: '' },
age: { type: 'number', default: 18 }
},
required: ['name', 'age'],
additionalProperties: false
};
const userModel = new Model(userSchema, 'your-collection-id', 'your-database-id');
const { Repository } = require('appschema');
// Create a repository for the User model
const userRepository = new Repository(userModel);
const newUser = { name: 'John Doe', age: 30 };
userRepository.create(newUser).then((document) => {
console.log('Created document:', document);
}).catch((err) => {
console.error('Error creating document:', err);
});
Note: This is not in production currently.
const { QueryBuilder } = require('appschema');
// Build a query to find users older than 20
const query = new QueryBuilder()
.where('age', 'greaterThan', 20)
.build();
userRepository.find(query).then((documents) => {
console.log('Found documents:', documents);
});
Feel free to contribute by submitting a pull request or reporting issues.
FAQs
ODM for AppWrite DB
We found that appschema 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.

Security News
/Research
A fake corepack.org site is impersonating the Node.js tool and delivers an infostealer and proxyware to developers who download it.

Research
/Security News
A large-scale campaign abused GitHub Actions in compromised repositories to exploit CVE-2026-41940 in cPanel and WHM and steal server credentials.

Security News
Five frontier LLMs generated the same nonexistent package names, leaving 53 available for potential slopsquatting across PyPI and npm.