
Security News
Axios Supply Chain Attack Reaches OpenAI macOS Signing Pipeline, Forces Certificate Rotation
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.
Particles is a Node.js platform built on top of the Scatter IoC container.
The Particles platform is composed by a core, providing basic services (log, configuration) plus a set of ready-to-use, drop-in solutions to create modular and extensible Node.js applications.
Particles components can contain server side code as well as client side scripts and assets, like css, images and templates!
Particles is not another framework, it does not want to impose the use of any particular library or technology, but on the other side it encourages the use of patterns like Dependency Injection and Service locator to build applications.
1 - Experimental
Please try it out and provide feedback.
$ mkdir MYAPP && cd MYAPP
$ git init
particles-seed repository$ git remote add particles-seed -m master https://github.com/particles/particles-seed.git
$ git pull -s recursive -X theirs particles-seed master
npm install
node app
What happened? At startup the Scatter service app_start will be executed. A sample of such a service can be found in the file app/entryPoint.js.
Not too exciting for now, but let's start to build our app.
Let's add a new particle to our app. Particles are drop-in components, it means you don't need to initialize or require them in your code in order to activate them. It's the magic of having an IoC container!
Let's add an express server to our application
npm install particles-express
That's it, yes really, not kidding. No custom executable to run, no code to write, just installing an npm package. Now you just fire up your app again and see what happens
node app
Try to access http://localhost:3000/ to check what your new server have to say.
Of course our express server is not that useful as it is right? Let's register a new route in our app internal particle. Create a new file app/controllers/HelloController.js and drop in this code:
var self = module.exports = {
helloWorld: function(req, res) {
res.send('200', 'My first controller works!');
},
setup: function(express) {
self.log.info("Initialize my first controller...");
express.get("/hello", self.helloWorld);
}
};
module.exports.__module = {
properties: {
log: "controllers/log"
},
provides: 'controllers/setup'
};
Restart your server and look at http://localhost:3000/hello
A couple of things to notice here:
log object (a core Particles service) is injected into our module by the IoC container. Almost any module can be injected and shared across all the particles of your app!setup. This service is invoked by particles-express to register new routes. Yes, that's right, particles can communicate with each other not only by using DI, but also by invoking services across all the particles of your app....coming soon
Follow @particlesjs on Twitter for updates.
Also there is a Google group you can use to ask questions and discuss about Particles. Visit the Hadron Particles Google group.
FAQs
Particles platform
The npm package particles receives a total of 24 weekly downloads. As such, particles popularity was classified as not popular.
We found that particles 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
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.

Security News
Open source is under attack because of how much value it creates. It has been the foundation of every major software innovation for the last three decades. This is not the time to walk away from it.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.