0.0.5 • Published 7 days ago

lcs-cloud-storage v0.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
7 days ago

Node.js CI NPM Version MIT License Open Source Love Static Badge

lcs-cloud-storage server

Visit Documentation website ↗

Table of contents

About

LCS - is a local cloud storage server. The Local Cloud Storage Server project aims to develop a robust and secure local cloud storage solution. This system will provide users with the ability to store, retrieve, and manage their data locally while enjoying the benefits of cloud storage such as scalability, accessibility, and reliability.

The server will expose a RESTful API that allows users to interact with the storage. This API will support operations such as uploading files, downloading and all default filesystem operations.

In addition to the API, the system will provide a Command Line Interface (CLI). This will enable users to use server feature or to configure it.

Getting started

Prerequisites

  • yarn npm i -g yarn or corepack enable

!IMPORTANT Node.js 18.x+ version must be installed in your OS.

Installation

  1. Clone the repository
$ git clone https://github.com/stbestichhh/lcs-cloud-storage-server.git 
  1. Install dependencies
$ yarn install

Or install as NPM package

$ npm i -g lcs-cloud-storage

Deployment

Start the server to production

  • From cli

    See usage instructions to find out how to use cli

    $ lcs [options] server|run [options]
  • From source code

    $ yarn build
    $ yarn start:prod
  • Without installing

    Run default configuration

    $ docker build -t lcs-cloud-storage:0.0.5 .
    $ docker run -p <port>:9110 lcs-cloud-storage:0.0.5

    Override configuration

    $ docker build -t lcs-cloud-storage:0.0.5 .
    $ docker run -e PORT=<port> -e HOST=<host> -e SECRET_KEY=<jwtkey> -e DB_NAME=<dbname> -p <port>:<port> lcs-cloud-storage:0.0.5 node dist/index.js [options] [command]

    Overriding every enviroment variable is not necessary. Options and command see in usage section.

Start server locally

$ yarn start:dev

Usage

See the usage instruction in the lcs-cloud-storage Wiki's

Running tests

Unit tests

$ yarn test

watch mode

$ yarn test:watch

End to end tests

This e2e tests are testing server api

$ yarn test:e2e

watch mode

$ yarn test:e2e:watch

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Changelog

Project changes are writen in changelog, see the CHANGELOG.md.

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

License

This project is licensed under the MIT License - see the LICENSE.md