
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
This package accompanies the OpticQL Electron app which can be downloaded from https://github.com/oslabs-beta/OpticQL
You must be running an Express (NodeJS) server for this package to work
In your server.js file, require in 'optic-ql' :
const { opticQL } = require("optic-ql");
Pass your GraphQL schema typeDefs, resolvers and Express app instance in as arguments to 'opticQL' :
opticQL(typeDefs, resolvers, app)
Start your server on port 3000 (it must be port 3000 to interact properly with the Electron app)
From Electron app, click 'Import Schema'. Your schema will be imported to Electron app. Now you are ready to run GraphQL queries. In addition, at port 3000/graphql you will have an Apollo GraphQL query interface set up (for further testing convenience if performance metrics not needed)
As shown below, for Mutation types, each field must be followed by a ',' for the visualization to work for Mutation commands in Electron app.
const express = require('express');
const cors = require('cors')
const { opticQL } = require("optic-ql");
const db = require('./models/starwarsModel.js');
const app = express();
app.use(cors())
const PORT = 3000;
const typeDefs = `
type Query {
people: [Person!]!
person(_id: Int!): Person!
}
type Mutation {
createPerson(
gender: String,
height: Int,
mass: String,
hair_color: String,
skin_color: String,
eye_color: String,
name: String!,
birth_year: String,
): Person!
}
`
const resolvers = {
Query: {
person: (parent, args) => {
try {
const query = 'SELECT * FROM people WHERE _id = $1';
const values = [args._id];
return db.query(query, values).then((res) => res.rows[0]);
} catch (err) {
throw new Error(err);
}
},
}
}
opticQL(typeDefs, resolvers, app)
app.listen({ port: PORT }, () =>
console.log(`🚀 Server ready at http://localhost:3000/graphql`));
FAQs
npm package for OpticQL
We found that optic-ql 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
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.