Giter Site home page Giter Site logo

files.javiercampos.info's Introduction

files.javiercampos.info

This is the source code for the software used to run the site at files.javiercampos.info (a dump of random personal files with no interest whatsoever).

It's a small project made in a few hours during Xmas boredom, to subsitute a very old Apache2 FancyIndexing site I had before.

The source code is presented as-is, and you can use it for any purposes you want. It's made in ASP.NET Core using Razor Pages, in .NET 6. It uses icons from fileicons.org, highlight.js for the source code viewer syntax highlighter, sqlite-net-pcl for an optional simple sqlite access log database, and SixLabors ImageSharp for the thumbnail generation (respective licenses noted in THIRD-PARTY-NOTICES).

It also uses TailwindCSS for main CSS styling.

Otherwise the rest of the code is mine.

Warning

I've made my best effort to prevent leaking data (using relative folders, etc.), however the program accesses the files directly and streams them down, so there might be some security issues I haven't thought of.

On my site, I'm running it inside a docker container on an alpine distribution with an unprivileged account, so other than the files you can actually see there (and the precompiled binaries), there's little you could leak from it, but your mileage may vary: make sure you test for broken stuff if you happen to use any of this code in production anywhere.

files.javiercampos.info's People

Contributors

javiercampos avatar

Watchers

James Cloos avatar  avatar

files.javiercampos.info's Issues

Move log database initialization to startup, remove from scoped service

Currently the database is initialized on the first petition, but the service is registered as scoped, so it doesn't really make sense. Database should initialize and migrate at startup and only the inserts should be scoped (maybe even reusing the connection and using a semaphore to avoid concurrent writes -which are not directly supported in sqlite anyway-).

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.