diff --git a/public/partials/home.htm b/public/partials/home.htm
index 38a8368..2380a0e 100644
--- a/public/partials/home.htm
+++ b/public/partials/home.htm
@@ -134,18 +134,7 @@
Metrics
-
-
-
-
- {{stat.nbRepositories|number}} Anonymized Repositories
-
-
-
-
-
+
+
+
+
+ {{stat.nbRepositories|number}} Repositories
+
+
+
+
+
+
+
+
{{stat.nbPageViews|number}} Page views
+
+
+
diff --git a/src/server.ts b/src/server.ts
index 4b705b4..30b3333 100644
--- a/src/server.ts
+++ b/src/server.ts
@@ -41,7 +41,7 @@ export default async function start() {
app.set("trust proxy", true);
app.set("etag", "strong");
- app.get('/ip', (request, response) => response.send(request.ip))
+ app.get("/ip", (request, response) => response.send(request.ip));
// handle session and connection
app.use(connection.appSession);
@@ -80,7 +80,7 @@ export default async function start() {
app.use("/github", rate, speedLimiter, connection.router);
// api routes
- const apiRouter = express.Router()
+ const apiRouter = express.Router();
app.use("/api", rate, apiRouter);
apiRouter.use("/admin", router.admin);
@@ -103,7 +103,14 @@ export default async function start() {
await AnonymizedRepositoryModel.estimatedDocumentCount();
const nbUsers = (await AnonymizedRepositoryModel.distinct("owner")).length;
- res.json({ nbRepositories, nbUsers });
+ const nbPageViews = await AnonymizedRepositoryModel.collection
+ .aggregate([
+ {
+ $group: { _id: null, total: { $sum: "$pageView" } },
+ },
+ ])
+ .toArray();
+ res.json({ nbRepositories, nbUsers, nbPageViews: nbPageViews[0].total });
});
// web view