🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis →
Socket
Book a DemoInstallSign in
Socket

@crosscopy/core

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@crosscopy/core

Shared js library for main CrossCopy logic

latest
Source
npmnpm
Version
0.1.0-alpha.36
Version published
Maintainers
1
Created
Source

crosscopy-core

Core npm package containing main logic and algorithms used in crosscopy

Main Components

  • crypto
    • For encryption and decryption
  • plugin
    • A plugin system
    • Including plugins
      • encryptionPlugin
      • syncPlugin
      • notionPlugin
  • database

Limitation

This package doesn't support ESM. Although a ESM version is compiled, it won 't work due to missing ESM of crypto.js.

NPM Package

Install Package

If you want to install this package, set the registry first

# choose one of the following if you don't have a .npmrc file
npm config set @crosscopy:registry https://registry.npmjs.org
npm config set @crosscopy:registry https://npm.pkg.github.com

Publish Package

# publish to npmjs registry
npm config set @crosscopy:registry https://registry.npmjs.org
npm publish --access public

# publish to github registry
npm config set @crosscopy:registry https://npm.pkg.github.com
npm publish

Sample Usage

Service

import { PrismaClient } from '@prisma/client';
import { createClient, RedisClientType } from 'redis';
import {
  UserServiceImpl,
  UserServicePrismaImpl,
  UserServiceRedisImpl,
} from '@crosscopy/core/service';

import dotenv from 'dotenv';

dotenv.config();

const url = process.env.DATABASE_URL;
const prisma = new PrismaClient({ datasources: { db: { url } } });
const redisUrl = process.env.REDIS_URL;
const redisClient: RedisClientType = createClient({ url: redisUrl });

redisClient.connect().then(() => {
  const userServiceRedis = new UserServiceRedisImpl(redisClient);
  const userServicePrisma = new UserServicePrismaImpl(prisma, redisClient);
  const userService = new UserServiceImpl(
    userServicePrisma,
    userServiceRedis,
    redisClient
  );

  userService.findByUsername('username').then((user) => {
    console.log(user);
  });
});
".": {
  "require": "./dist/index.cjs",
  "import": "./dist/index.js",
  "types": "./dist/index.d.ts"
},
"./plugin": {
  "require": "./dist/plugin.cjs",
  "import": "./dist/plugin.js",
  "types": "./dist/plugin.d.ts"
},
"./crypto": {
  "require": "./dist/crypto.cjs",
  "import": "./dist/crypto.js",
  "types": "./dist/crypto.d.ts"
},
"./io": {
  "require": "./dist/io.cjs",
  "import": "./dist/io.js",
  "types": "./dist/io.d.ts"
},
"./syncer": {
  "require": "./dist/syncer.cjs",
  "import": "./dist/syncer.js",
  "types": "./dist/syncer.d.ts"
},
"./util": {
  "require": "./dist/util.cjs",
  "import": "./dist/util.js",
  "types": "./dist/util.d.ts"
},
"./service": {
  "require": "./dist/service.cjs",
  "import": "./dist/service.js",
  "types": "./dist/service.d.ts"
}

Keywords

crosscopy

FAQs

Package last updated on 06 Feb 2023

Did you know?

Socket

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.

Install

Related posts