Coder Social home page Coder Social logo

sixem / ivfi-node Goto Github PK

View Code? Open in Web Editor NEW
30.0 2.0 3.0 860 KB

IVFi is a directory indexer written in Node that aims to make it easy to browse and explore web-accessible directories.

Home Page: https://git.five.sh/ivfi/

License: Other

JavaScript 1.07% Pug 3.53% TypeScript 79.31% SCSS 16.09%
indexer browser gallery files directory-browser directory-lister express nodejs

ivfi-node's Introduction




IVFi-Node

The image and video friendly indexer


npm Travis (.com)


Demo   Documentation   Configuration   Building


About

IVFi-Node is a file directory browser script made in Node and TypeScript.

It is designed to be a comprehensive indexer, with a focus on efficiently handling image and video files. IVFi has a modern and user-friendly interface, offering features such as a gallery view, hoverable previews, and many customization options.

This project can be easily set up on most web servers.


Quick setup ⚡

Install via npm

npm install ivfi

Usage

Import (or require) package:

import ivfi from 'ivfi';

Basic initialization example:

const port = 3000;
const directory = '/var/www/html/';
const options = {};
    
(async () =>
{
    /** Start server */
    const server = await ivfi.run(port, directory, options);
})();

This will spin up a webserver on http://localhost:3000/ with the path set to /var/www/html/.

A documentation of the available options can be found here.

Development

Clone the repository and install the required npm packages:

git clone https://github.com/sixem/ivfi-node
cd ivfi-node
npm install

Create a run.ts file with a simple initialization of the script:

import ivfi from './src/index';

const port = 3000;
const directory = '/var/www/html/';

const server = ivfi(__dirname);

server.run(port, directory, {
	debug: true
});

Build the dist files that are used on the client side:

npm run compile:development

Start the server:

node --loader ts-node/esm run.ts

Any changes made to the client side code, will require a recompiled dist directory, while any changes made to the server side code will simply require a restart of the server.

Building

To package the project:

npm run transpile:pack

This will create a new directory with the packaged script.

Other Projects

This is a Node version of the image and video friendly indexer (IVFi).

For other non-node versions, see: https://ivfi.io/

Disclaimer

As always, use this script at your own risk. There may exist bugs that i do not know of.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.