Skip to content

KnightProgrammers/scipio-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Status

Continuous Integration - On Merge to Main

Continuous Integration - On Deployment

CodeQL

Requirements

Supported operating systems:

  • Ubuntu LTS/Debian 9.x
  • CentOS/RHEL 8
  • macOS Mojave
  • Docker

Node:

  • Recommended: 20.x
  • Minimum: 18.x

MongoDB:

  • Minimum: 5.1

Getting Started

Environment Vars

For more details check on the Development section of each service

  • FIREBASE_PROJECT_ID
  • FIREBASE_CLIENT_EMAIL
  • FIREBASE_PRIVATE_KEY
  • FIREBASE_API_KEY
  • FIREBASE_AUTH_DOMAIN
  • FIREBASE_APP_ID
docker compose up --detach --wait --build

Development

Client

Folder: /projects/client

Install Dependencies

npm install

Start Client

npm run start

Environment Vars

Var Type Required Default Value Description
VITE_FIREBASE_API_KEY String true Firebase Credential
VITE_FIREBASE_AUTH_DOMAIN String true Firebase Credential
VITE_FIREBASE_PROJECT_ID String true Firebase Credential
VITE_FIREBASE_APP_ID String true Firebase Credential
VITE_API_BASE_URL String true http://localhost:8080 API base url

Server

Folder: /projects/graphql-server

Install Dependencies

npm install

Start Server

npm run dev

Environment Vars

Var Type Required Default Value Description
FIREBASE_CLIENT_EMAIL String true Firebase Credential
FIREBASE_PRIVATE_KEY String true Firebase Credential
FIREBASE_PROJECT_ID String true Firebase Credential
MONGO_DB_URI String true Database connection string
REDIS_URI String true Redis connection string
NODE_ENV String false Indicates the environment where the server is running
WEB_URL String true Url to the client's public url

Database

MongoDB is used as Database.


DB Seed

Folder: /projects/db-seed

Automatic Executions

Environments:

  • Staging:
    • On every push to main

Install Dependencies

npm install

Build Project

npm run build

Run Seed

npm run start

Environment Vars

Var Type Required Default Value Description
MONGO_DB_URI String true Database connection string
LOG_LEVEL String false info Available values: debug, info, warn, error
USER_FIREBASE_ID String true "" Firebase ID of the demo user

Cron Jobs

Folder: /projects/cron-jobs

Jobs

Environments:

  • Credit Card Expiration:
    • Every Day at 00:00hs

Install Dependencies

npm install

Build Project

npm run build

Start Jobs

npm run start

Tests

npm run test

Environment Vars

Var Type Required Default Value Description
MONGO_DB_URI String true Database connection string
REDIS_URI String true Redis connection string
LOG_LEVEL String false info Available values: debug, info, warn, error
EMAIL_SENDER String true Email address that send the emails
EMAIL_AUTH_DOMAIN String true Domain of the smtp server
EMAIL_AUTH_PORT String true Port of the smtp server
EMAIL_AUTH_USER String true User credentials
EMAIL_AUTH_PASS String true User credentials

Data Clean Up

Folder: /projects/data-cleaner

Install Dependencies

npm install

Build Project

npm run build

Start Jobs

npm run start

Environment Vars

Var Type Required Default Value Description
MONGO_DB_URI String true Database connection string
WHITELIST_FIREBASE_IDS String List of firebase Ids (separated with commas) that should not be cleaned
LOG_LEVEL String false info Available values: debug, info, warn, error

License

This project is licensed under the terms of the GPL-3.0 license.

You can check out the full license GPL-3.0 license.

Update Dependencies

  1. Move to the project directory

  2. Check for update and apply the changes

npx npm-check-updates -u
  1. Install the updates
npm install

About

Personal Finance Management System

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •