Skip to content

Basliel-Sisay/checkIn-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CheckIn-API

A full stack personal tracking application built with Node.js, Express, and SQLite. This project allows users to log daily moods and productivity scores via an API and visualize them through a clean, modern web dashboard

Features

  • Full-Stack Integration: Connects a vanilla JS frontend to a Node.js backend

  • Persistent Storage: Data is stored locally in a SQLite database

  • Search Filtering: Filter logs by mood in real time on the dashboard

  • Technical Insights: Toggleable views to see underlying database IDs

Project Structure

checkIn-API/
├── data/
│   └── test.sqlite          # SQLite database storage
├── public/
│   ├── index.html           # Dashboard UI
│   ├── style.css            # Custom RGB-based styling
│   └── script.js            # Frontend logic & API fetching
├── src/
│   ├── database.js          # SQLite connection & schema
│   └── server.js            # Express API routes & middleware
├── .gitignore               # Files to exclude from Git (node_modules, etc)
├── LICENSE                  # Project license
├── package.json             # Project dependencies
└── README.md                # Project documentation

Getting Started

Prerequisites

Node.js installed on your machine

Installation

clone this repo https://github.com/Basliel-Sisay/checkIn-API
Navigate to the project directory: cd checkIn-API
Install dependencies: npm install

Running the Server

node src/server.js

The server will start on http://localhost:3000

4. Viewing the Dashboard

Open your browser and navigate to:

http://localhost:3000

API Endpoints

Method Endpoint Description
GET /history Returns all check-in logs as JSON
POST /checkin Saves a new mood and productivity score
DELETE /checkin/:id Removes a specific log by ID

Example POST Request (PowerShell)

  Invoke-RestMethod -Uri http://localhost:3000/checkin `
  -Method Post `
  -Body '{"mood": "Productive", "productivity": 9}' `
  -ContentType "application/json"

Output

From Terminal

From The Browser

License

This project is licensed under the LICENSE file

About

Activity tracking application featuring a Node.js and Express backend integrated with a persistent SQLite database and a modern dashboard UI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors