All Projects → nya → cpomf

nya / cpomf

Licence: MIT license
Pomf API compatible file host written in Crystal - The software behind nya.is.

Programming Languages

crystal
512 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to cpomf

Pomf
Simple file uploading and sharing
Stars: ✭ 535 (+1386.11%)
Mutual labels:  file-upload, hosting, file-sharing
Void
Fast and elegant file hosting service.
Stars: ✭ 48 (+33.33%)
Mutual labels:  file-upload, file-sharing, sharex
Sharex
ShareX is a free and open source program that lets you capture or record any area of your screen and share it with a single press of a key. It also allows uploading images, text or other types of files to many supported destinations you can choose from.
Stars: ✭ 18,143 (+50297.22%)
Mutual labels:  file-upload, file-sharing, sharex
Uguu
Simple lightweight temporary file hosting.
Stars: ✭ 359 (+897.22%)
Mutual labels:  file-upload, hosting, file-sharing
lolisafe
Blazing fast file uploader and awesome bunker written in node! 🚀
Stars: ✭ 181 (+402.78%)
Mutual labels:  file-upload, file-sharing, pomf
zipline
A ShareX/file upload server that is easy to use, packed with features, and with an easy setup!
Stars: ✭ 215 (+497.22%)
Mutual labels:  file-upload, file-sharing, sharex
Plik
Plik is a scalable & friendly temporary file upload system ( wetransfer like ) in golang.
Stars: ✭ 656 (+1722.22%)
Mutual labels:  file-upload, file-sharing
Pomfe.co V1
Pomfe.co File Hosting Site Source Code
Stars: ✭ 31 (-13.89%)
Mutual labels:  file-upload, file-sharing
Transfer.sh
Easy file sharing from your Android device!
Stars: ✭ 14 (-61.11%)
Mutual labels:  file-upload, file-sharing
Airlift
A self-hosted file upload and sharing service
Stars: ✭ 77 (+113.89%)
Mutual labels:  file-upload, file-sharing
Filestash
🦄 A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze, ...
Stars: ✭ 5,231 (+14430.56%)
Mutual labels:  file-upload, file-sharing
Linx Server
Self-hosted file/code/media sharing website. ~~~~~~~~~~~~~~~~~~~ Demo: https://demo.linx-server.net/
Stars: ✭ 1,044 (+2800%)
Mutual labels:  file-upload, file-sharing
Dfile
[Python + Flask] DFile: A fancy S3-based file sharing mode
Stars: ✭ 79 (+119.44%)
Mutual labels:  file-upload, file-sharing
Ffsend
📬 Easily and securely share files from the command line. A fully featured Firefox Send client.
Stars: ✭ 5,448 (+15033.33%)
Mutual labels:  file-upload, file-sharing
Kodexplorer
A web based file manager,web IDE / browser based code editor
Stars: ✭ 5,490 (+15150%)
Mutual labels:  file-upload, file-sharing
Updog
Updog is a replacement for Python's SimpleHTTPServer. It allows uploading and downloading via HTTP/S, can set ad hoc SSL certificates and use http basic auth.
Stars: ✭ 994 (+2661.11%)
Mutual labels:  file-upload, file-sharing
Ffsend Api
📬 A fully featured Firefox Send API client written in Rust.
Stars: ✭ 75 (+108.33%)
Mutual labels:  file-upload, file-sharing
Sharry
Sharry is a self-hosted file sharing web application.
Stars: ✭ 170 (+372.22%)
Mutual labels:  file-upload, file-sharing
odin
Open-source, cross-platform, hassle-free file sharing with AES-256 encryption made with Flutter & Dart.
Stars: ✭ 114 (+216.67%)
Mutual labels:  file-upload, file-sharing
Dropit
DropIt is a File Uploader built with nodejs, Upload, get a link, and share your files with anyone easily.
Stars: ✭ 367 (+919.44%)
Mutual labels:  file-upload, file-sharing

cpomf

pomf backend written in crystal for pomf.is

Installation

Prerequisites

  • Postgres
  • Mschematool
  • Crystal 0.20.4

Setup

Set your environment variables:

  • POMF_PORT - The port that cpomf listens to.
  • POMF_DEBUG - Whether or not cpomf is in debug mode true|false
  • POMF_DATABASE_URL - The postgres URL for your database, eg; postgres://localhost/pomf_database
  • POMF_SECRET_KEY - Your secret key; preferably something that's long and randomly generated.
  • POMF_ADMINS - A comma seperated list of admin usernames; keeping in mind that usernames are lowercase and alphanumeric only.
  • POMF_BLACKLISTED_NAMES - A comma seperated list of banned usernames; it's usually good to blacklist names like admin or anything else you don't want users to use.
  • POMF_UPLOAD_DIR - Relative path to your pomf upload directory.
  • POMF_URL - the root URL of your site; eg. https://pomf.is/
  • POMF_UPLOAD_URL - The upload URL for your site; eg. https://u.pomf.is/

Run shards install to install dependencies.

Run mschematool default init_db and then mschematool default sync

Compile the project with crystal build --release pomf.cr

Usage

Run cpomf like you would run any other binary file ./pomf

Use a nginx reverse proxy to cpomf; and use nginx to handle static files, including those in /src/pomf/public; google tutorials if you need to.

Please make sure that you modify the default templates and styles before you host your own clone; I've left nya.is' designs in as a reference, but being unique is king in a sea of clones.

Make sure you create your account before you release your site.

Contributing

  1. Fork it ( https://github.com/neko/cpomf/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • neko neko - creator, maintainer
  • RX14 RX14 - contributor
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].