Coder Social home page Coder Social logo

cheesepics's Introduction

June 10th, 2024 update: Cheesepics used to be hosted on a custom domain, but it expired, so I ran it on a subdomain of my personal website. Recently, my Raspberry Pi broke and I'm now reinstalling everything based on a backup. Considering it got practically no visitors, I've to stop hosting Cheesepics. You are still free to host it yourself. If you want my guidance on where to find cheese pictures licensed under CC, you are free to contact me.

CheesePics

Welcome to cheesepics. It's a website I created for fun about a year ago. It used to be hosted on cheesepics.xyz, but the domain expired. In the months before, it had very few visitors, and the codebase has quite some issues, which is why is "abandoned" the project.

Current issues

  • Outdated packages (As of 29/06/2023, @types/node, better-sqlite3 and typescript have a major update pending)
  • cheesepics.xyz/cheesepics.sys-256.me naming (Some meta tags are still on cheesepics(.xyz), and the websocket links to cheesepics.sys-256.me. These should be added into config.ts and dynamically added)
  • Liking things (/liked hasn't been implemented, and you get an error when trying to like an image)
  • Broken CSS (The navbar, for example, doesnt have it's element vertically centered. The like button is under the image, where "in" the image would look better)
  • Avatars are unimplemented
  • Errors aren't handled nicely (just gives an alert with ERR;;CLIENT;;thing right now)

How to setup

  • NGINX
    • Copy the contents of the nginx file to your own nginx.conf file for the reverse proxy
  • MariaDB
    • Start with docker run --detach --name mariadb --env MARIADB_ROOT_PASSWORD=passwd -p 3306:3306 mariadb:latest. Change the MARIADB_ROOT_PASSWORD variable to something only you know before running the command.
    • Change the password in config.ts
    • Run the init file, and add your images (eg: INSERT INTO images VALUES("filename.jpg", "CC", "me");)
    • Also add the images (like filename.jpg) to ./public/images/cheese
  • Sessions DB
    • Create the file ./sessions.sqlite3 as an sqlite3 database, and run the init file on it.
  • Change the contact information in the config file.
  • Start the server
    • Install the dependencies with npm i and run npm run build.
    • Run npm start to start both the frontend and backend
  • Port forward
    • Open port 80 on your router
    • Also make sure you have SSL and a domain available, else it wont work with wss
  • Done!

FAQ

  • Will this repository ever be un-archived?
    • Probably not, unless I gain back interest and someone else has fixed some things described in Current Issues.
  • How can I ask you for help?
    • If you need clarification while setting up CheesePics or while making changes to the codebase, you can use any of the platforms specified in the "Contact" section on https://sys-256.me.
    • I cannot guarantee I will provide you with assistance. It's been a while since I actively worked CheesePics, so I don't remember everything of how the codebase works.

License

See the license file. You are free to fork this project and make changes, as long as the terms set by the license are being followed.

cheesepics's People

Contributors

sys-256 avatar

Stargazers

Dominik Wajda avatar

Watchers

 avatar

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.