Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

  • 40563be
  • /
  • app.js
Raw File Download

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • content
  • directory
content badge
swh:1:cnt:7533247639dfd1b048d6a5c47a8f422604bd3308
directory badge
swh:1:dir:40563beec6fc96f51f5281c2144a63e584d6b3c9

This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
Select below a type of object currently browsed in order to generate citations for them.

  • content
  • directory
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
app.js
var express = require('express'),
    path = require('path'),
    consolidate = require('consolidate');

var isDev = process.env.NODE_ENV !== 'production';
var app = express();
var port = 3000;
app.use(express.static('data'));
app.use(express.static('client'));
app.use(express.static('client/page1/lib'));

app.engine('html', consolidate.ejs);
app.set('view engine', 'html');
app.set('views', path.resolve(__dirname, './server/views'));

// local variables for all views
app.locals.env = process.env.NODE_ENV || 'dev';
app.locals.reload = true;


var fs = require('fs')
app.use(require('body-parser').urlencoded({limit: '5mb', extended: true}));

let tsnejs = require('./server/routes/TSNE/tsnemanager.js');
let MI = require('./server/routes/erroranalysis/MoranI.js');

app.post("/",function(req, res, next) {
    // parseReqJson(req.body, res, client);
    // let time = new Date()

    console.log(req.body.reqType)
     if(req.body.reqType=="tsne"){
        tsnejs.runtsne(req, res, next)
     }if(req.body.reqType=="MoranI"){
        MI.CalcLMI(req, res, next)
     }if(req.body.reqType=="write"){
        let w_data = new Buffer(req.body.data);

        fs.writeFile(__dirname + '/test2.txt', w_data, {flag: 'a'}, function (err) {
           if(err) {
            console.error(err);
            } else {
               console.log('end');
            }
        });

        let resj = JSON.stringify("done");
        res.send(resj);
     }if(req.body.reqType=="writeevent"){
        let w_data = new Buffer(req.body.data);
        fs.writeFile(__dirname + '/Ccrimeeventdata.txt', w_data, {flag: 'a'}, function (err) {
           if(err) {
            console.error(err);
            } else {
               console.log('end');
            }
        });
     }



    // console.log((new Date()).getTime()-time.getTime())

});







if (isDev) {

    // static assets served by webpack-dev-middleware & webpack-hot-middleware for development
    var webpack = require('webpack'),
        webpackDevMiddleware = require('webpack-dev-middleware'),
        webpackHotMiddleware = require('webpack-hot-middleware'),
        webpackDevConfig = require('./webpack.config.js');

    var compiler = webpack(webpackDevConfig);

    // attach to the compiler & the server
    app.use(webpackDevMiddleware(compiler, {

        // public path should be the same with webpack config
        publicPath: webpackDevConfig.output.publicPath,
        noInfo: true,
        stats: {
            colors: true
        }
    }));
    app.use(webpackHotMiddleware(compiler));

    require('./server/routes')(app);

    // add "reload" to express, see: https://www.npmjs.com/package/reload
    var reload = require('reload');
    var http = require('http');

    var server = http.createServer(app);
    reload(server, app);

    server.listen(8000, function(){
        console.log('App (dev) is now running on port 8000!');
    });
} else {
    // static assets served by express.static() for production
    app.use(express.static(path.join(__dirname, 'public')));
    require('./server/routes')(app);
    app.listen(port, function () {
        console.log('App (production) is now running on port 3000!');
    });
}







// let express = require('express');
// let app = express();
// let http = require('http');
// let path = require('path');
// let util = require('util');
// let bodyParser = require('body-parser');
// let multer = require('multer'); 
// let client = require('./database/connect')
// let db = require('./database/querydb.js');
// let readText = require('./database/readtxt')

// app.use(express.static('./public'));
// app.use(express.static('./database'));
// app.use(express.static('./build'))

// app.use(require('body-parser').urlencoded({limit: '5mb', extended: true}));
// app.get('/', function(req, res) {
//         res.sendFile("index.html");
// });

// function parseReqJson(json, res, client) {
//   if (json.reqType === 'queryPoiByTraj') {
//     db.readText(res);
//   } else if (json.reqType === 'queryDb') {
//     db.query(res, client, json);
//   } else if (json.reqType === 'readText') {
//     readText.readText(res, json.fileName, json.begin, json.readLineLimit);
//   }
// }



// let server = app.listen(3001, function () {
//   let host = server.address().address;
//   let port = server.address().port;

//   console.log('My web is listening at http://%s:%s', host, port);
// });


back to top

Software Heritage — Copyright (C) 2015–2026, The Software Heritage developers. License: GNU AGPLv3+.
The source code of Software Heritage itself is available on our development forge.
The source code files archived by Software Heritage are available under their own copyright and licenses.
Terms of use: Archive access, API— Content policy— Contact— JavaScript license information— Web API